¿Cómo habilitar VSYNC en la aplicación con ventana D3D?

Entonces, estoy usando D3D en una aplicación con ventana.

Inicié D3D con los siguientes parámetros:

windowed: true;
backbufferformat: D3DFMT_X8R8G8B8;
presentinterval: D3DPRESENT_INTERVAL_ONE;
swapeffect: DISCARD

Cada vez que se llama a OnPaint, renderizo la imagen en el backbuffer y la presento al frente.

Hasta donde yo sé (y también lo dice MSDN), una vez que configuroD3DPRESENT_INTERVAL_ONEvsync funcionará.

Pero en este caso, la imagen se rasga cuando se arrastra horizontalmente.

(Parece que hay una línea a través de la imagen, la imagen debajo de la línea se muestra en el monitor y la parte anterior sigue).

Algunos sitios dicen que D3DPRESENT_INTERVAL_ONE no funcionará en aplicaciones con ventana.

¿Cómo puedo habilitar vsync de todos modos?

PD. Finalmente encontré que D3D vsync está habilitado, mientras que algunas configuraciones de ventana no son correctas, tal vez la ventana en sí no esté sincronizada. Sin embargo, no he echado un vistazo a la configuración.

Respuestas a la pregunta(5)

Su respuesta a la pregunta