因此,我最近完成了一个教程,关于如何使第三人称摄像头视图,我想使用该项目检测任何冲突发生的球员通过写下面这行代码:
using UnityEngine;
public class CheckCollide : MonoBehaviour
{
void OnTriggerEnter(Collider other)
{
if (other.gameObject.tag == "Gem") //Im making sure if the player hit the object with the tag"Gem"
{
Destroy(other.gameObject);//I want to destroy the gem after collide with the player
}
}
void Update()
{
}
}
但遗憾的是,它似乎没有工作,**那么我如何才能检测到他们之间的碰撞?**非常感谢阅读到这里!祝你有一个美好的一天善良的随机家伙!^^
仅供参考:
我把玩家放在一个父游戏对象里面,Gem也是如此,如下图所示:
1条答案
按热度按时间xzv2uavs1#
以下是如何确保设置正确的碰撞。
首先,您的Player或Gem对象需要组件Rigidbody。如果您不希望刚体影响对象,请将运动学设置为true和/或冻结约束。
接下来,你的两个对象(Player和Gem)都需要某种碰撞器。我推荐Box Collider。在Box Collider中的一个上,勾选IsTrigger。这样你的一个对象就可以用作触发器。我建议让你的Gem对象成为触发器。
如果这些都不起作用,请仔细检查脚本中的标记是否正确,以及Gem对象是否为自身设置了正确的标记。