0

問題

Direct2D コンテンツを DirectDraw サーフェス (バックバッファー) に描画しようとしていますが、この部分は問題ありません。問題は、DirectDraw サーフェス (最新の PC) で GetDC() を使用するコストです。これは、Direct2D 描画が発生する前に Direct2D で BindDC() に使用されるデバイス コンテキストをロックして取得します。GetDC と ReleaseDC にはかなりのコストがかかるため、フレームごとに 1 回実行すると、15 FPS のように感じられます。

DirectDraw サーフェスで Get/ReleaseDC() を取得するためのより高速な方法または代替方法はありますか、または何らかの方法でキャッシュして、耐えられないパフォーマンスが得られないようにする方法はありますか?

バックストーリー 古いD​​irectDraw でビルドされた古いゲームのソースが失われ、フックを使用してグラフィック API をアップグレードしようとしています。最終的には、すべての directdraw API 呼び出しを direct2d に移動したいと考えています。

4

0 に答える 0