さて、メッセージループの奇妙な点を見つけました。
まず、このコードを以下にロックします
MSG msg = {0};
while( WM_QUIT != msg.message )
{
if( PeekMessage( &msg, NULL, 0, 0, PM_REMOVE ) )
{
TranslateMessage( &msg );
DispatchMessage( &msg );
}
else
{
Render(); // Do some rendering
}
}
directxのチュートリアルで、この部分はメッセージループの一部です。
マウスをクリックすると、メッセージとしてキューに入れられます。
したがって、このような入力は win api の proc 関数で処理されるはずです。
peekMessage が true を返すようになったので、クリックしたときに render() がフレーム内で呼び出されなくなりました。
クリックするとレンダリングの if~else が if~if に変わると思います。
これ説明できますか??