UnityでオブジェクトのクリックをEventTriggerを用いて検知する方法
とあるサンプルの作成で、ヒエラルキー内に配置したCubeのクリックを拾う必要が出たため、やり方を検索した。方法論としては主に3つあり
- カメラからレイを飛ばす
- EventTriggerを使用する
- IPointerClickHandlerを継承する
となるのだが、今回は一番簡単そうなEventTriggerを使用する方法を採用することにした。ところが、何をどういじっても反応がない。楽勝だと思っていたのに数時間悪戦苦闘することになった。
結論から述べると、必要な手続きのうち
- カメラにPhysicsRaycasterをアタッチする
- ヒエラルキー内にEventSystemを配置する
の2点が抜けていたのが原因。上記2点の手順に言及していない記事が割と多かったので、備忘録として。
以下のURLの記事に教えていただいた。感謝と敬意を表する。ありがとうございました。