ユーザーが矢印キーを押したかどうかを確認するために、私の単純なピンポン ゲームで GetAsyncKeyState() を使用しています。この関数を特定の方法で使用する必要があることをオンラインで読みましたが、CPU が非常に重いことがわかりました (CPU の 50% を使用しています!)。これはかなり戸惑いましたが、いくつか遊んだ後、a を追加するsleep(1);
と CPU 使用率が 0% になり、すべてが正常に機能することがわかりました。この関数を使用するより良い方法、または少なくとも CPU 使用率を下げるより良い方法があるはずです。
ここで何か助けていただければ幸いです!
私のコード:
while(true)
{
for(i = 8; i < 191; ++i)
{
if(GetAsyncKeyState(i) == -32767)
{
if(i == VK_LEFT)
// do stuff
else if(i == VK_RIGHT)
// do stuff
else if(i == VK_UP)
// do stuff
else if(i == VK_DOWN)
// do stuff
}
}
Sleep(1);
}