【Unity】TouchScript使用、uguiが重なったときに3Dオブジェクトをクリックさせない方法

■プログラミングを学ぶのに最適です。無料体験あり!!現役エンジニアのパーソナルメンターがつき、躓いているときはチャットでの質問ができてすぐに回答が帰ってくる頼もしいサービスです。自分も12週間がっつり勉強してアプリを出せました。
未経験から仕事に繋がるエンジニア・デザイナーになりたいなら

スポンサードリンク

Pocket
LINEで送る

自身のモチベーション維持のため学習記録を残していきます。
Unityを使ったゲームアプリ開発のメモです。

スポンサーリンク

■環境

Unity2017.1.0
Mac OS Sierra 10.12.5

TouchScript使用、uguiが重なったときに3Dオブジェクトをクリックさせない方法

uguiをつかったときにTouchScriptを使えるようにします。

Uguiで作っていくときに、uguiのボタンと3Dオブジェクトが重なった場合、
ボタンを押したときに3DオブジェクトへRayが届いたことになってクリックしたアクションが3Dオブジェクトへ実行されてしまいます。

Tap

ボタンが重なっている場所は、ボタンのみ動いてほしい。

そこでTouchScriptを使ってかんたんに修正していきます。
アセットストアからTouchScriptをインポートします。

TouchScriptフォルダにあるTouch Visualizerのプレハブをシーンへ置くとタップしている場所を表示できて便利です。

  1. インポート後、シーンへ新規にゲームオブジェクトを作ってTouchManagerをアタッチします。
  2. Main CameraへCameraLayerをアタッチします。Nameにはわかりやすい名前をいれておきます。

    Touch

  3. 適当にCanvasを作ります。
    Canvas内にアクションを実行させるボタン等を入れます。

    親になっているCanvasへUI Layerをアタッチします。

    Unity

  4. ここまででTouchManagerのTouchLayerへMain CameraへアタッチしたCameraLayerの名前と、
    CanvasへアタッチしたUI Layerの名前が表示されます。
    この時点ではuguiのパーツのみクリックアクションが起こります。

    Unity 2

  5. クリックアクションを起こしたい3Dオブジェクトへ
    Tap Gestureをアタッチします。

    タップ以外にドラッグやピンチなど違うジェスチャーを割り当てるときにはTouchScriptのスクリプトをアタッチしていきます。

    Unity2

□おすすめアセット

□参考書籍


Pocket
LINEで送る


スポンサードリンク

このサイトが役に立ったらシェアにご協力ください

  • このエントリーをはてなブックマークに追加

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です