это не выглядит как основной цикл стандартного приложения win32 ...
это похоже на
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
MSG msg;
while(GetMessage(&msg, NULL, 0, 0) > 0)
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
поскольку вы находитесь внутри цикла while (true), возможно, даже пользовательские события (мышь и клавиатура) не могут быть правильно отправлены в очередь сообщений
Если ваша цель - разработать приложение для игры в win32, я предлагаю вам взглянуть на Directx