Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unity3d 由于某种奇怪的原因,光线投射结束位置错误_Unity3d - Fatal编程技术网

Unity3d 由于某种奇怪的原因,光线投射结束位置错误

Unity3d 由于某种奇怪的原因,光线投射结束位置错误,unity3d,Unity3d,正如你们可以从这个简单的代码中看到的,我正在投射3条射线,红色射线应该类似于品红色线,它必须从startPos到endPos。但由于某种原因,红光在复制黄线 我不明白怎么了 Vector2 startPos = transform.position; Vector2 endPos = transform.position + transform.up * 3f; Debug.DrawRay(Vector3.zero, startPos, Color.green); Debug.DrawRay(

正如你们可以从这个简单的代码中看到的,我正在投射3条射线,红色射线应该类似于品红色线,它必须从startPos到endPos。但由于某种原因,红光在复制黄线

我不明白怎么了

Vector2 startPos = transform.position;
Vector2 endPos = transform.position + transform.up * 3f;

Debug.DrawRay(Vector3.zero, startPos, Color.green);
Debug.DrawRay(Vector3.zero, endPos, Color.yellow);

Debug.DrawLine(startPos, endPos, Color.magenta);

Debug.DrawRay(startPos, endPos, Color.red);
根据Debug.DrawRaystart,dir从start到start+dir绘制一条线

在世界坐标系中从起点到起点+方向绘制一条线


因此,Debug.DrawRaystartPos、endPos、Color.red;从startPos到startPos+endPos划一条线。

您的代码似乎正确,但还有另一个问题。您的代码不正确。。DrawRay不是起点和终点,而是起点和方向。。。。获取开始和结束之间的方向作为第二个参数