- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
!!!衝突イベントを取得
参考
http://docs-jp.unity3d.com/Documentation/ScriptReference/Rigidbody.OnCollisionEnter.html
Rigidbodyの割り当てられたGameObject同士がぶつかったかどうかは、MonoBehaviour派生クラスで「OnCollisionEnter」関数をコールバックすることで検出できます。
Colliderの割り当てられたGameObject同士がぶつかったかどうかは、MonoBehaviour派生クラスで「OnCollisionEnter」関数をコールバックすることで検出できます。
たとえばSphere(球)のGameObjectに対してRigidbody/Sphere Colliderを割り当てておき、スクリプトSphereScript.csをComponentとして割り当てておきます。
using UnityEngine;
using System.Collections;
public class SphereScript : MonoBehaviour {
void Start () {
}
// 衝突が発生した場合に呼ばれる.
void OnCollisionEnter(Collision collision) {
// 衝突したGameObjectの名前を表示.
Debug.Log("contact name : " + collision.gameObject.name);
// 衝突位置を表示.
foreach (ContactPoint contact in collision.contacts) {
Debug.Log("contact : " + contact.point);
}
}
}
球が物理運動して 他のColloderを割り当てたGameObjectとぶつかった場合に「OnCollisionEnter」が呼ばれます。
----
{{lastmodified}}