[過去ログ] 【3Dゲームエンジン】Unity質問スレッド30 [無断転載禁止]©2ch.net (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
666
(1): 2017/08/17(木)10:19 ID:mDv1S8Ib(1/2) AAS
>>662
全く別物。前者のボタンはInputの設定で紐付けられた物理ボタン、後者のボタンはUIの論理ボタンを指してる
Inputの方がより低レベルの判定であるため、細かな制御はしやすいがその分多くのコーディングが必要になる

Input.GetButtonは物理的な入力そのままであるため、ボタンが押されていればTrueが返る。カーソルがボタン上にあるかは別途レイキャスト等で判定が必要だし、ボタンが離され戻り値がFalseになった事も別途判定が必要
UI.Button.onClickはこれらを実装済みで、ボタン上でInput.GetButtonDownが発生した後、ボタン上でInput.GetButtonUpが発生した場合のみクリックと判定される

単純にUIのボタンがクリックされた事の判定ならばonClickを拾えばいいと思うぞと
670
(1): 2017/08/17(木)13:30 ID:mDv1S8Ib(2/2) AAS
>>667
残念ながらUnityEngine.UI.Button.onClickはイベントデータを渡さない。よってそのままでは左右ボタンを区別することは不可能

UnityEngine.EventSystems.IPointerClickHandlerを実装したコンポーネントを新しく作ってPointerEventDataを見て振り分けるか、処理側にPointerEventDataを丸投げするかすればいい

UnityEngine.UI.Button.onClickのようにインスペクタ上でリスナーを設定したいならUnityEngine.Events.UnityEventを継承したクラスを作る必要があるが、説明するのは面倒なのでググれ
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.031s