こんにちは、CG^3の抹茶(@_xcipher)です.

環境とか、使用ライブラリとか色々変えました

* 環境とか
    VC++ 2012CTP -> VC++ 2013CTP (C++11おいしい!)
    
* 使用しているライブラリとか
    FTGL (日本語フォント描画) -> freetype2
    [new!] OpenAL (サウンド周り)
    [new!] boost::asio (通信)
    [new!] LZ4 (圧縮)
    
* やりたいこと
    自動作曲
    自動ワールド生成
    マルチプレイ(オンライン)
    アップデーター\
    
* シェーダーのおはなし
    ** 描画パイプライン
        1. 3D上の頂点情報をGPUへ送る
        2. 頂点シェーダ―が頂点単位で何か処理する(座標変換など)
        3. [ジオメトリシェーダ―(頂点増減)]
        4. 隠面処理とか
        5. ラスタライズ (頂点によって張られた面をピクセルに)
        6. ピクセルシェーダーがピクセル単位で何か処理する(ライティングなど)
        7. 画面に出力
    
    OpenGL3.x以降やDirectX10以降では、シェーダーをプログラミングしないといけません。
    つらい。
    楽しい!
    
    ** 具体的に何書くの
        例えば、ライティング
        ライトの座標指定しても勝手に描画してくれません。(現実は厳しい)
        ライトの座標からこれだけ離れているから、このピクセルはこれぐらい明るくする、みたいなのを書いて、あたかもライトがそこにあるっぽいような描画をさせます。
        行列とベクトルが大活躍します。
        つらい。
        楽しい!

* 自動作曲のおはなし
    音楽経験なし!音楽知識なし! -> プログラムに作らせよう
    パクろうと思ってるのがコレです -> Wolfram Tones
    単純セルオートマトンの一部を帯状に切り取って、それを楽譜に見立てています。
    おもしろい。
    
    ** PCで音を鳴らすには?
        自分はOpenALを使う予定ですが、他にもXAudioとかあります。
        音の波形の離散的なデータを渡すと音を出してくれます。
        楽器の波形渡してあげれば、そんな感じの音が出ます(多分)
        まだ勉強中です(´・ω・`)
        
* 進捗
やりたいこと増やしてたら何も進んでなかった。


いろいろやってると工大祭間に合わないのでは
いじょうです( •̀_•́)ง