macOS版 ゲームコントローラー対応
ゲームコントローラーの操作と機能のマッピングは次の通り。カスタマイズには対応しない。
設定画面は用意しない。
iOS版では、L1/R1ショルダーボタンを再生速度に割り当てていたが、macOS版では視点切り替えに変更した。 macOS版はVRビューを持たないため、視点切り替えの方が有用であると判断したため。
ゲームパッド制御クラスを新規追加。
ラジアンから角度への変換メソッドを追加。 円周率OGL_MATH_PIの定義場所を.mmから.hに変更。
ビューポートリセットメソッドを追加。
メンバにゲームパッド制御オブジェクト(m_GamePadCtrl)とゲームパッド用視点番号(m_GamePadViewPointNo)を追加。
ゲームパッド制御オブジェクトの初期化処理を追加。 ゲームパッド用視点番号の初期化処理を追加。 ゲームコントローラー接続/切断通知先登録処理を追加。
ゲームコントローラー初期化メソッド呼び出し処理を追加。
ゲームコントローラー更新イベント通知メソッドを追加。
ゲームコントローラー更新イベント受け取り時の処理を追加。
ゲームコントローラー接続通知イベントハンドラを追加。
ゲームコントローラー切断通知イベントハンドラを追加。
ゲームコントローラー初期化メソッドを追加。 ゲームパッド制御オブジェクトの初期化と、ボタン押下時のイベントハンドラを登録。
ゲームパッド用の視点切り替えメソッドを追加。
ゲームコントローラー更新メソッドを追加。
ゲームコントローラー更新メッセージクラスを追加。
ゲームコントローラー更新メソッドを追加。 同じメソッドをMTScenePianoRoll3DLive MTScenePianoRollRain, MTScenePianoRollRainLive クラスに追加。
一人称カメラクラスのメンバにゲームパッド制御オブジェクトm_GamePadCtrlを追加。
コンストラクタの初期化処理をグループごとにまとめ直した。処理の修正なし。
ゲームパッド制御オブジェクトの初期化処理を追加。
ゲームパッドの右スティックの状態を取得して視線方向に反映する処理を追加。
ゲームパッドの十字キー、左スティック、X/Yボタンの状態を取得して、カメラ位置に反映する処理を追加。
ゲームコントローラー更新メソッドを追加。 ゲームコントローラーの接続/切断が発生したときに教えてもらうために用意したもの。
Linked Frameworks and Libraries に GameController.framework を追加。
ゲームコントローラーを用いて、メイン画面で視点移動や演奏に関する操作を実施できるようにする。
参考チケット