2011-12-16 14 views
3

私は既存のC++ DirectX9アプリケーション用のプラグインを作成しています。性能上の理由からIDirect3DDevice9Exに切り替えるまでは、すべてうまくいきました。DirectXマネージドプール

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

質問:IDirect3DDevice9Exまたは管理されたテクスチャを使用せずにテキストを描画できる良いライブラリを使用しているときに、テキストを描画する回避策はありますか?

答えて

-1

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

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

+0

本当に役に立ちません。 "D3DXCreateFont"はクローズドソースです。私はそれを操作できません... – Listing