以下の内容はhttps://atelier-hinata.hatenablog.com/entry/2019/09/12/132340より取得しました。


【Unity】子オブジェクトの衝突を親オブジェクトで検知する

Oculus QuestでのVRアプリ制作にハマッています。いろんな意味で。
本日は衝突判定について、新たに知ることができたネタをご紹介します。
基本中の基本かも知れないけど。Oculus関係ないけど。

Oculus IntegrationのOVRGrabber

Oculus Integrationでは、手のアバターで物体をつかめるようにする機能が用意されています。それが掲題のOVRGrabberです。
これを手のオブジェクトにアタッチするわけなのですが、詳細な使い方はまた今度ご紹介するとして。

f:id:s44511173:20190912125900p:plain

このスクリプトをアタッチしたオブジェクトには、ご覧の通りColliderはアタッチされていません。Rigidbodyはありますけど。
では、コードを見てみましょう。

コード内では、OnTriggerEnterとOnTriggerExitが実装されています。
あれれ、Colliderを持っていないのにどうしてコールされるんだ??

親オブジェクトがRigidbodyを持つ場合、子オブジェクトの衝突も検知できる

ということらしい。
ためしにColliderなしのCubeを2個配置します。
それぞれに子オブジェクトを作成し、そちらにBoxColliderをアタッチして実験してみました。

f:id:s44511173:20190912131840g:plain

親にRigidbodyなし版。衝突してない感じ。

f:id:s44511173:20190912131835g:plain

親にRigidbodyあり版。衝突しています!!

結論

  1. 親オブジェクトにRigidbodyを付けることで、子オブジェクトの衝突を検知できる
  2. Oculusハマる。いろんな意味で。

 

 

 

↑↑↑ ぜひ遊んでみてください!↑↑↑

 




以上の内容はhttps://atelier-hinata.hatenablog.com/entry/2019/09/12/132340より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14