|
ビデオメモリとシステムメモリはどっちが高速か速度的には以下のような順序になるようだ。 (高速)ビデオ→ビデオ > システム→システム >> システム⇔ビデオ(低速) ビデオメモリにオフスクリーンサーフェスを置いて高速化されるのは 例えばFreeTrainの色相置換処理の場合、スプライトサーフェスをビデオメモリに置くと 1.ビデオ→システム(スプライトサーフェス読み取り) 2.ピクセル値加工 3.システム→ビデオ(プライマリサーフェス描きこみ) となって、二回システム⇔ビデオ間転送が行われる。 スプライトサーフェスをシステムメモリに置くと 1.システム→システム(スプライトサーフェス読み取り) 2.ピクセル値加工 3.システム→ビデオ(プライマリサーフェス描きこみ) のようにシステム⇔ビデオ間転送は一回に押さえられる。 FreeTrainの最新版では、デフォルトでスプライトサーフェスをシステムメモリに ピクセルフォーマットの異なるサーフェス間の転送ピクセルフォーマット(≒ディルプレイモード≒色数)が異なるサーフェス間では 異種フォーマットでも何か特別なパラメータの設定をすれば上手く転送できるのだろうか? その他(ビデオカードの相性とか)DirectDrawSurface7.BltFxマニュアルを読むと、BltFxでアルファブレンドやROPを使った描画が出来そうに読める。 ちなみに、世間の潮流はDirect3D一辺倒で、半透明処理もDirect3Dで行うのが一般的らしい。 |