3

既存の C++ DirectX9 アプリケーション用のプラグインを作成しています。パフォーマンス上の理由から IDirect3DDevice9Ex に切り替えることを決定するまで、すべてが正常に機能していました。

「D3DXCreateFontA」を使用してテキストをレンダリングすると、「D3DPOOL_MANAGED is not valid with IDirect3DDevice9Ex」というエラーが表示されるようになりました。

質問: IDirect3DDevice9Ex を使用しているときにテキストを描画するための回避策、またはマネージド テクスチャを使用せずにテキストを描画できる優れたライブラリはありますか?

4

2 に答える 2

4

私は良い答えを知らないので、おそらくこれは同じ質問であり、より多くのより良い答えがあります:

IDirect3DDevice9Ex と D3DPOOL_MANAGED?

幸運を!

于 2011-12-26T17:29:23.937 に答える
-1

管理プールは、リソースのコピーをシステム メモリに保持します。これにより、プロセスはグラフィックス デバイスを他のプログラムに解放し、システム メモリ内のコピーを使用して失われたアセットを再作成できるようになります。

これを解決するには、失われたデバイス上のすべてのリソースをダンプし、デバイスが回復したときにそれらを再作成する集中リソース キャッシュを使用してみてください。

于 2011-12-16T22:27:44.817 に答える