Отделение ввода игрового цикла от симуляцииC++

Программы на C++. Форум разработчиков
Anonymous
Отделение ввода игрового цикла от симуляции

Сообщение Anonymous »

Код: Выделить всё

        // player control of box
const Uint8* currentKeyStates = SDL_GetKeyboardState(NULL);

if (currentKeyStates[SDL_SCANCODE_RIGHT]) {

}
if (currentKeyStates[SDL_SCANCODE_LEFT]) {

}
if (currentKeyStates[SDL_SCANCODE_UP]) {

}
if (currentKeyStates[SDL_SCANCODE_DOWN]) {

}
Я читал, что основной цикл игры — это ввод, симуляция и рендеринг. Однако в этом примере я использую нажатия клавиш для немедленного перемещения объекта.
Если бы я захотел это сделать, я бы не знал, как передать в функцию все возможные комбинации клавиш. Если бы это был только один ключ за раз, то я бы написал:

Код: Выделить всё

void input_function(specific_key) {
}
Имеет ли смысл в этом случае отделять часть движения от части ввода?

Подробнее здесь: https://stackoverflow.com/questions/780 ... simulation

Вернуться в «C++»