Я пишу игру на C ++. Для этого мне необходимо обнаружить одновременное нажатие или удержание нескольких клавиш, а также обнаружение событий нажатия и отпускания клавиш.
Например, если я удерживаю клавиши up и right , я хочу иметь возможность обнаружить это и перемещать игру по диагонали. Кроме того, в настоящее время, если я удерживаю клавишу вправо и нажимаю вверх , он больше не распознает, что вправо удерживается. Мне нужен способ узнать, когда клавиша вправо действительно отпущена, поэтому она не прерывается следующим образом.
Я знаю, что sdl2
может распознавать нажатие или удержание нескольких клавиш, ноэто требует создания окна, и я хочу, чтобы это было полностью внутри терминала.
getch()
из curses/ncurses
дополнительно не работает для этого.
Что я могу использовать для этого? Я хотел бы избежать Аллегро, если это возможно.