したがって、ウィンドウ化されたアプリケーションでD3Dを使用しています。
次のパラメータを使用してD3Dを初期化しました。
windowed: true;
backbufferformat: D3DFMT_X8R8G8B8;
presentinterval: D3DPRESENT_INTERVAL_ONE;
swapeffect: DISCARD
OnPaintが呼び出されるたびに、画像をバックバッファーにレンダリングして前面に表示します。
私の知る限り(そしてMSDNもそう言っています)、一度設定D3DPRESENT_INTERVAL_ONE
すると、vsyncは機能します。
ただし、この場合、水平方向にドラッグすると画像が破れます。
(画像全体に線があるようです。線の下の画像がモニターに表示され、上の部分が続きます。)
一部のサイトでは、D3DPRESENT_INTERVAL_ONEはウィンドウ化されたアプリケーションでは機能しないと述べています。
とにかくvsyncを有効にするにはどうすればよいですか?
psついに、D3D vsyncが有効になっていることがわかりましたが、一部のウィンドウ設定が正しくないため、ウィンドウ自体が同期されていない可能性があります。しかし、私は設定を覗き見していません。