我有一个函数可以检查一个游戏对象是否可以看到另一个游戏对象而没有任何东西挡住它的视线:
public bool CheckVision(GameObject target)
{
RaycastHit2D ray = (Physics2D.Raycast(transform.position, target.transform.position - transform.position, m_VisionRange));
if(ray.collider.name == target.name)
{
Debug.DrawRay(transform.position, target.transform.position - transform.position);
return true;
}
else
{
return false;
}
}
唯一的问题是我不希望它与设置了“isTrigger”标志的碰撞器发生碰撞;我希望光线投射忽略它们。有任何想法吗?