目次 - API(機能別) - ジョイスティック - SDL_JoystickOpen

SDL_JoystickOpen

使用するジョイスティックを開く

構文

SDL_Joystick* SDL_JoystickOpen(int device_index)

引数

device_index開くジョイスティックの番号

戻り値

成功のときジョイスティックの識別子, 失敗のときNULLを戻す. SDL_GetError()で詳細を知ることができる.

サンプルコード

SDL_Joystick *joy;

// ジョイスティックサブシステムを初期化する
SDL_InitSubSystem(SDL_INIT_JOYSTICK);

// ジョイスティックが存在するかチェックする
if (SDL_NumJoysticks() > 0) {
    // ジョイスティックを開く
    joy = SDL_JoystickOpen(0);

    if (joy) {
        printf("ジョイスティック 0 を開いた¥n");
        printf("名前: %s¥n", SDL_JoystickNameForIndex(0));
        printf("軸の数: %d¥n", SDL_JoystickNumAxes(joy));
        printf("ボタンの数: %d¥n", SDL_JoystickNumButtons(joy));
        printf("ボールの数: %d¥n", SDL_JoystickNumBalls(joy));
    } else {
        printf("ジョイスティック 0 を開けなかった¥n");
    }

    // 開いたなら閉じる
    if (SDL_JoystickGetAttached(joy)) {
        SDL_JoystickClose(joy);
    }
}

詳細

device_indexはSDLによって認識されたN番目のジョイスティックを意味する. この関数の戻り値は, インスタンスID(将来のイベントでジョイスティックを識別するためのもの)と同じではない. インスタンスIDの詳細はSDL_JoystickInstanceID()を参照すること.

ジョイスティックサブシステムは, ジョイスティックを開く前に初期化されている必要がある.

バージョン

SDL 2.0.0以降

関連項目(関数)

SDL_JoystickClose
SDL_JoystickInstanceID

SDL Wikiへのリンク

SDL_JoystickOpen - SDL Wiki