|
|
DX9 SDK中有一个演示的例子 Tutorial 06: Meshes ,读取一个x文件并显示,该例子本身并没有问题,如果我将Render函数改为如下
VOID Render()
{
g_pd3dDevice->Clear( 0, NULL, D3DCLEAR_TARGET|D3DCLEAR_ZBUFFER,
D3DCOLOR_XRGB(0,0,255), 1.0f, 0 );
if( SUCCEEDED( g_pd3dDevice->BeginScene() ) )
{
g_pd3dDevice->EndScene();
}
g_pd3dDevice-> resent( NULL, NULL, NULL, NULL );
}
实际上就是一个空渲染的函数,我发现当切换到其他窗体时,该窗体对应的程序CPU占用率就会大幅提高,甚至到100%,如果切换到该例子本身的窗口,CPU占用率并不高,真是很奇怪,每次切换导VC IDE调试时根本动不了,切换到浏览器时,看不到网页。我把这一切归咎于WinMain函数,不知道如何解决?谁有好的建议?
这是该例子的消息循环部分
MSG msg;
ZeroMemory( &msg, sizeof(msg) );
while( msg.message!=WM_QUIT )
{
if( PeekMessage( &msg, NULL, 0U, 0U, PM_REMOVE ) )
{
TranslateMessage( &msg );
DispatchMessage( &msg );
}
else
Render();
}
}
|
|