PG_Tips
・いや、基本的なんでわかってるんですが、動いちゃったりすると1280x512とかで、見落としたまま素材上げられちゃったりするので。 ・DirectXベースだと一部のグラフィックボードでまともに動いても1280→2048に伸長されるのでUVがズレます。リソース管理を徹…
・最近のPCのCPU(マザーボード?)は処理負荷が少ないと出力を自動で絞ってしまう設定が入ってたりするため、処理負荷の落差が激しいゲームなどは、マシンスペックの割りに処理落ちを多く感じてしまう。 ・一定の負荷を常にかけ続けるか、設定でCPUの自動ク…
・placement newの配列は先頭数byteをデストラクタが必要な個数として強制的に使用されるため、デストラクタが必要なクラスの配列確保には使用すべきではない。 ・代換案として必要な総サイズ分をAllocateした後にコンストラクタだけ叩くnewを作って配列数分…
template class A { class B { T t; }; B b; B Return0() { return b; } B Return1(); }; template typename A::B Return1(){ return b; }; ・クラス宣言内部に書くか、typenameで明示的にしないとVC++だと通らないっぽい。
・たとえばそのクラスの継承先がなんであるかを判定したい時に enum{ CLASS_A = 0, CLASS_B, }; class A { virtual int CheckClass() { return CLASS_A; } }; class B : public A { int CheckClass() { return CLASS_B; } }; というように気軽に仮想メンバ関…
参考ページ:http://c-brains.jp/blog/wsg/09/08/10-153547.php
・最初にしっかりとレイアウトをしておかないと、ブランチとタグを切るときに面倒。 参考ページ:http://www.chibutsu.org/faf/WebWiki/column/SubversionBestPractices.html
・リソースを全て描き終ったあとに、フレームバッファにフリップする直前にテクスチャー化をライブラリレベルで常に行っておくと、解像度の変更や画面出力の調整など色々便利。 ・処理オチとの勝負になったら切るしかないけどね。
・第二引数のBaseVertexIndexはIDirect3DDevice9::SetStreamSource()のOffsetInBytesから相対なのが正しいっぽい。 ・ミスってても一部GPU(主にGeforce)だと全転送がデフォルトなので表示されてしまうので注意。
・vs_1_1+ps_3_0の組み合わせだと、一部GPUで正常にピクセルへの書き込みが行われないことがあるので注意すること。 ・vs_1_1+ps_2_0ないしvs_3_0+ps_3_0にすべき。
・出力したモノも管理できるようにタグ付けしておくべき。 ・サウンドなどは再生チャンネルに投げっぱなしでなく、IDタグやハンドルと関連付けて管理すべき。 ・描画もPIX使わないでも追えるようにしたい。