我的目标是在物体碰撞时更改物体颜色。
对象本身是一个具有一些粒子效果的capsuleCollider。
CapsuleCollider
正在跟踪玩家观看的位置。
telePoint.GetComponent<Rigidbody>().MovePosition(new Vector3(tempHit.point.x, player.transform.position.y, tempHit.point.z));
我尝试使用连接到玩家正在观看的对撞机i位置的脚本:
void OnCollisionEnter(Collision col) {
Debug.LogError("COLLISION ??" + col.gameObject.name);
if (!col.gameObject.name.Contains("floor")) {
player.GetComponent<telePortationScript>().teleEnabled = false;
}
else {
Debug.LogError("Collision with -> " + col.gameObject.name);
player.GetComponent<telePortationScript>().teleEnabled = true;
}
}
我正在移动的CapsuleCollider
还有一个RigidBody
组件,并启用了Kinetic。其他物体只有碰撞器,没有刚体。
任何人都可以帮助我吗?
答案 0 :(得分:0)
将我的Capsule Collider标记为Trigger并添加了一个函数
void OnTriggerStay(Collider col)
它有效!