ブルガリアコントローラーを使うためのSDKです
全部ダウンロードする
or
unitypackageをダウンロードしてインポートする
Nimushiki/Bulgariapad/Prefab/BulgariaPadCanvasを任意のシーンに配置する
Nimushiki/Bulgariapad/Prefab/BulgariaPadCanvasTestも配置すると便利です
各種データが欲しいcsファイルの先頭でusing Nimushiki.BulgariaPad; と書く
(必須)キャリブレーションを実装する
無限に存在する画面サイズ・解像度に対応するために必須です。
プレイヤーが実機でボタン等から呼び出せるようにして、BulgariaPadInitializer.StartCalibration()を実行して下さい。
※メッセージ表示はBulgariaPadInitializerを各自書き換えて実装して下さい
(推奨)ボタン位置の初期化をする
サンプルのシーンでは、起動時に解像度から適当に計算しています。
SampleControllerのBulgariaPadInput.ResetPosition()
(各自)BulgariaPadInputの値を使って入力処理を実装する
サンプルのシーンに実装例がありますので参考にして下さい
BulgariaPadCanvasTest/SampleViewer … 取得出来る値をインスペクターに表示してあります
Test/SampleController … 取得出来る値をいくつか利用したコントローラーの例です
・エディタ、実機どちらでも動きます
BulgariaPadInput.ResetPosition() … 画面の解像度からいい感じに初期位置を決める処理。なくてもOK
BulgariaPadInput.Vertical … アナログパッドの縦の入力具合。-1から1のfloat
BulgariaPadInput.Horizontal … アナログパッドの横の入力具合。-1から1のfloat
BulgariaPadInput.OnAnalogPad … タッチ位置がアナログパッドの上かどうかの判定。bool
BulgariaPadInput.AnalogPadRadius … アナログパッドの半径。float
BulgariaPadInput.AnalogPadPos … アナログパッドの中心座標。vector2
BulgariaPadInput.ButtonA … Aボタンが押されているか。bool
BulgariaPadInput.ButtonADown … Aボタンが押された瞬間だけtrue
BulgariaPadInput.ButtonAUp … Aボタンが離された瞬間だけtrue
BulgariaPadInput.ButtonAPosition … Aボタンの座標。vector2
BulgariaPadInput.ButtonB … Bボタンが押されているか。bool
BulgariaPadInput.ButtonBDown … Bボタンが押された瞬間だけtrue
BulgariaPadInput.ButtonBUp … Bボタンが離された瞬間だけtrue
BulgariaPadInput.ButtonBPosition … Bボタンの座標。vector2
・UnityRemote使用時はマウス入力は出来ません。
・以下、キャリブレーションを自作する人向けのデータ
BulgariaPadInput.SetAnalogPadRadius(float rad)
BulgariaPadInput.SetAnalogPadPosition(Vector2 pos)
BulgariaPadInput.SetButtonAPosition(Vector2 pos)
BulgariaPadInput.SetButtonBPosition(Vector2 pos)
BulgariaPadInput 必須
TouchUtil 必須 タッチとマウスの共通化とかしてます
BulgariaPadInitializer 準必須 キャリブレーションしたりしてます
SampleController 使い方の例
SampleViewer BulgariaPadInputのデータを可視化するだけのスクリプト。BulgariaPadCanvasTestにくっついてます
ImageMover ボタン画像の移動だけ担当。なくても動くけど分かりにくい。
2019年1月28日 ver0.2.0 アプデ
2018年12月15日 ver0.1.0 アプデ
2018年12月3日 ver0.0.2 バグ?修正
unitypackageに不足していたファイルを追加
2018年12月2日 ver0.0.1 初版公開