Unity3D光线投射方向错误c#
Unity3D raycasting wrong direction c#
foreach (Transform transf in spawnPoint) {
if (Physics.Raycast (transf.position, player.position, out test, 1000))
Debug.DrawLine (transf.position, test.point, Color.yellow);
}
这是我的代码。这就是我得到的:
Player 是一个带有相机的游戏对象,transforms 在这里不可见,但它们在每条黄线的左侧。为什么它不指向播放器?你要射线指向播放器做什么?
绿线的工作原理与黄色类似,但无缘无故 canvas。
Physycs.Raycast
的第二个参数是方向,因此您应该计算从变换到玩家的方向:
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);
}
foreach (Transform transf in spawnPoint) {
if (Physics.Raycast (transf.position, player.position, out test, 1000))
Debug.DrawLine (transf.position, test.point, Color.yellow);
}
这是我的代码。这就是我得到的:
Player 是一个带有相机的游戏对象,transforms 在这里不可见,但它们在每条黄线的左侧。为什么它不指向播放器?你要射线指向播放器做什么? 绿线的工作原理与黄色类似,但无缘无故 canvas。
Physycs.Raycast
的第二个参数是方向,因此您应该计算从变换到玩家的方向:
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);
}