unity, multi collider
比如下面鸭子模型,只用一个box collider难以很好地吻合其的外形。
我们可以为它添加两个box collider,如下图所示:
注意:
1,colliders一定要添加在模型根节点(即图中dock节点上)。
2,如果想让模型是动态的,不要忘了添加Rigidbody。
另外,如果需要在脚本里对两个collider分别编程的话,若直接在脚本里get这两个collider,由于都是box collider,也没有特殊标识,所以区分不开。一个简单但不太完美的办法是在脚本中定义两个public变量,然后在inspector中把两个collider分别赋给它们。上面中的colliderDistinguish.cs如下:
using UnityEngine;
using System.Collections;
public class colliderDistinguish : MonoBehaviour {
public Collider m_collider1;
public Collider m_collider2;
// Use this for initialization
void Start () {
Debug.Log ("collider1 center:"+m_collider1.bounds.size);
Debug.Log ("collider2 center:"+m_collider2.bounds.size);
}
}
输出结果: