【发布时间】:2013-05-06 14:46:49
【问题描述】:
嗯,我发现消息循环的奇怪点。
首先,将这段代码锁定在下方
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 以在我单击时进行渲染。
你能解释一下吗?
【问题讨论】:
标签: directx