1

私は現在、人間の視覚をテストするための執筆とアプリケーションを行っています。プログラムが現在立っているので、私はVB.NetとDirectX 9を使用して、オンデマンドで画面に刺激を表示しています。オンデマンドとは、刺激を描画するコードを含み、device.present呼び出しを含むrendersceneメソッドが、可能な場合は常にフレームを描画する別のスレッドに存在しないことを意味します。刺激を変更する必要があるときはいつでも、rendersceneメソッドを呼び出すだけです。これは、1秒に1回程度で、通常はそれ以下です。これは悪い形と見なされますか?私が見つけたサンプルコードのほとんどは、プログラムが継続的にシーンをレンダリングしていると想定しているため、DeviceLostExceptionsの処理方法を理解するのに問題があります(たとえば、alt-Tabまたはctrl-alt-deleteの後)。ノート:

4

1 に答える 1

1

このアプローチ自体には何の問題もありません。

DirectXは通常ゲームに使用されるため、これは非常に珍しいことです。ゲームでは、通常、シーンを常に、可能な限り高速に再描画する必要があります。(通常、物事は常に画面上で動いており、ゲームは可能な限り応答性が高い必要があります)。

ただし、この応答性が必要なく、シーンがほとんど静的である場合は、レンダリングするコンテンツが変更された場合にのみレンダリングしても問題はありません。

于 2012-09-13T13:17:53.113 に答える