Якщо ви використовуєте Rigidbody з символом, ви можете отримати це з коробки. :)
Отже, ваша ієрархія може виглядати так:
- Персонаж (має жорсткий корпус і сценарій управління)
- дитина (можливо, має коллайдери)
- онук (можливо, має коллайдери)
Повідомлення OnCollisionEnter будуть запускатись на GameObject, що містить Rigidbody, дійшовши до вашого батьківського сценарію управління, не потрібно писати додатковий сценарій ретрансляції, щоб наклеїтись на кожен коллайдер.
Якщо вам потрібно з’ясувати, хто з ваших дітей зіткнувся в зіткненні, ви можете це зробити так:
void OnCollisionEnter(Collision collision) {
Collider myCollider = collision.contacts[0].thisCollider;
// Now do whatever you need with myCollider.
// (If multiple colliders were involved in the collision,
// you can find them all by iterating through the contacts)
}