Real time rendering - цикъл

Нещо такова ли представляваше цикълчето, което го правихме вчера:

Uint8* keystate = SDL_GetKeyState(NULL);
while (true)
{
if (keystate[SDLK_UP])
{
// do something
}
...
if (keystate[SDLK_ESCAPE])
{
return 0;
}
// render
displayVFB(vfb);
}

Защото се опитвам да го имплементирам в моя курсов проект, но нещо зависва. Та да съм сигурен дали в цикъла е проблема или някъде при мен във вътрешността на кода.

Comments

fix

Така е, само трябва да викаш SDL_GetKeyState вътре в тялото на while цикъла.

Поради някаква причина при

Поради някаква причина при мен работи само с

while (running)
{
SDL_Event event;
while (SDL_PollEvent(&event))
{ .... }
}

Но така не става плавно движението (трябва да се натиска бутона за всяка единица движение). Мисля, че имаше заобиколен начин да се направи гладко и със SDL_PollEvent и ще го имплементирам тия дни.

Някой пробвал ли е дали GLFW и SDL могат да се сработят заедно - GLFW само да засича клавиатура и мишка, а пък SDL да си върши останалата работа, както досега ? (нещо хич не ми харесва SDL за засичане на event-и :D )

Оправено

Съчетах ги и 2те техники и сега върви добре.