C# 为什么';我在Unity3d的光线投射工作是什么?
当我指定“最大距离”时,我的光线投射似乎不起作用,在无限距离下效果很好 播放器正在向前移动,它接触到对象,但仍然没有调试消息。DrawRay绘制光线的仰角C# 为什么';我在Unity3d的光线投射工作是什么?,c#,unity3d,raycasting,C#,Unity3d,Raycasting,当我指定“最大距离”时,我的光线投射似乎不起作用,在无限距离下效果很好 播放器正在向前移动,它接触到对象,但仍然没有调试消息。DrawRay绘制光线的仰角 void CastForwardRay() { int rayLength = 3; RaycastHit hitInfo; Ray ray = new Ray(rayCastTransform.position, rayCastTransform.forward); Debug.DrawRay(rayCast
void CastForwardRay()
{
int rayLength = 3;
RaycastHit hitInfo;
Ray ray = new Ray(rayCastTransform.position, rayCastTransform.forward);
Debug.DrawRay(rayCastTransform.position, rayCastTransform.forward * rayLength, Color.white);
if (Physics.Raycast(ray, out hitInfo, rayLength, playerLM))
{
if(hitInfo.collider.gameObject.tag == "Car")
{
print("hit a car");
}
}
}
1.它不可能存在于射线之间,我的意思是,在射线的原点和射线2的端点之间没有物体。它应该在层次结构的父级中有PhysicsRaycaster。中间有一个对象,玩家以文字方式触摸对象,距离设置为3。当我设置最大距离时,它就是不起作用。我不知道你说的PhysicsRaycaster是什么意思。我想,这与“PhysicsRaycaster”有关,但你的情况下,你有没有检查过光线实际上会击中特定的物体(游戏物体)?是的,就像我说的,它会击中,只是当我限制距离idk时没有。你是2D还是3D?