SDL_GameController* SDL_GameControllerOpen(int joystick_index)
joystick_index | SDL_NumJoysticks()個までのデバイスの番号 |
/* 利用可能な最初のコントローラーを開く */
SDL_GameController *controller = NULL;
for (int i = 0; i < SDL_NumJoysticks(); ++i) {
if (SDL_IsGameController(i)) {
controller = SDL_GameControllerOpen(i);
if (controller) {
break;
} else {
fprintf(stderr, "ゲームコントローラー%dを開けなかった: %s¥n", i, SDL_GetError());
}
}
}
device_indexはSDL_JoystickOpen()の引数のjoystick_indexと同じである.
引数のjoystick_indexは, そのシステムのN番目のゲームコントローラを表す. joystick_indexの値は, 後のコントローラーイベントでこのコントローラーを識別する値とは別である. 代わりにジョイスティックのインスタンスID(SDL_JoystickID)が使われる.
SDL 2.0.0以降