void Update () {
RaycastHit hit;
Vector3 fwd = transform.TransformDirection(Vector3.forward);//创建一个射线的方向
if (Physics.Raycast(transform.position, fwd, out hit, 10))//这里的“10”是射线的最大距离
{
////划出射线,在scene视图中能看到的射线
Debug.DrawLine(transform.position, hit.point, Color.yellow);
}
else
{
Debug.DrawLine(transform.position, hit.point, Color.red);
}
}
我这样子写,所有的射线都朝着 0.0.0 射过去了, 第二个方向参数怎么改都没用,
然后我在2d 里面试了一下 所有的射线又都朝着 摄像机坐标射过去,,
所以这个射线方向到底应该怎么写。。。
还有一个问题,这么写, 即使我在射线中添加 box 有碰撞体,但是射线还是能传过去。。。。。
csdn上搞unity的人很少么?
其实这个射线本身是没有问题的,但是射线是看不见的
后面 debug 画的线,第二个参数 hit point,是null,因为没有射到什么东西嘛,,所以都默认射到0,0,0 了
、、、