【发布时间】:2016-04-20 14:50:34
【问题描述】:
我目前正在用 SDL(PONG 克隆)编写一个简单的游戏,我必须连续按键。
我遇到的问题是,当我按下按钮时,它会做出反应,等待一小段时间,然后继续连续按键。
我想知道我是如何让那一点延迟消失的。
这是我的代码:
while (running)
{
while (SDL_PollEvent(&event))
{
//update the game
if (event.type == SDL_QUIT)
{
quit_game();
running = false;
}
if(event.type == SDL_KEYDOWN)
{
switch (event.key.keysym.sym)
{
case SDLK_DOWN:
move_paddle(UP);
break;
case SDLK_UP:
move_paddle(DOWN);
break;
default:
break;
}
}
}
draw_game();
move_ball();
SDL_Delay(15);
}
【问题讨论】:
-
看起来好像您正在从自动重复事件中获得结果。
SDL_GetKeyboardState花了我大约 5 秒钟的时间来谷歌“sdl 密钥状态”。