Unity3D raycasting错误的方向C#

康拉德·林科夫斯基(Konrad Linkowski)
foreach (Transform transf in spawnPoint) {
        if (Physics.Raycast (transf.position, player.position, out test, 1000))
            Debug.DrawLine (transf.position, test.point, Color.yellow);
    }

这是我的代码。这就是我得到的:在此处输入图片说明

玩家是带有摄像头的游戏对象,此处看不到变换,但它们在每条黄线的左侧。为什么不指向播放器?你是什​​么光线指向播放器?绿线的工作方式与黄色类似,但毫无疑问是指向画布。

阿德里安·克鲁帕(Adrian Krupa)

的第二个参数Physycs.Raycast是direction,因此您应该计算从转换到播放器的方向:

foreach (Transform transf in spawnPoint) {
    if (Physics.Raycast (transf.position, player.position - transf.position, out test, 1000))
        Debug.DrawLine (transf.position, test.point, Color.yellow);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章