Unity为对象添加网格碰撞体之后,仍然无法发生碰撞。后来发现组件的属性Is Triggle进行了勾选,取消之后能够发生正常的碰撞。
//为游戏对象,添加碰撞体
GameObject blank;
private float moveSpeed = 1.0f;
if(!blank.GetComponent<MeshCollider>())
{blank.AddComponent<MeshCollider>();
blank.GetComponent<MeshCollider>().convex = true;
}
//移动游戏对象
blank.transform.Translate(Vector3.right * Time.deltaTime * speed);
之后就可以正常工作。