nfy5191336 2019-08-01 11:37 采纳率: 16.7%
浏览 955

unity 射线方向问题,射线总是射到0.0.0上

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 有碰撞体,但是射线还是能传过去。。。。。

  • 写回答

1条回答 默认 最新

  • nfy5191336 2019-08-02 20:27
    关注

    csdn上搞unity的人很少么?

    其实这个射线本身是没有问题的,但是射线是看不见的

    后面 debug 画的线,第二个参数 hit point,是null,因为没有射到什么东西嘛,,所以都默认射到0,0,0 了
    、、、

    评论

报告相同问题?

悬赏问题

  • ¥15 一道python难题
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度