У меня возникли проблемы с выяснением того, какие перечисления я могу/должен использовать для поддержки геймпада/джойстика SDL2. Я попытался использовать "SDL_CONTROLLER_*", но в итоге получил странные результаты. Например:
SDL_Event e;
while (SDL_PollEvent(&e) != 0)
{
if (e.type == SDL_JOYBUTTONDOWN)
{
printf("%d\n", e.jbutton.button);
if (e.jbutton.button == SDL_CONTROLLER_BUTTON_B)
{
printf("HI\n");
}
}
}
У меня был этот код в основном цикле моей функции, и второй оператор печати срабатывает, когда я нажимаю кнопку DOWN на крестовине, а не когда я нажимаю кнопку B. Я использую контроллер XBOX 360, и он не доставляет мне никаких проблем, когда я играю в другие игры. Я даже использую правильное перечисление?