Unity3d 由于某种奇怪的原因,光线投射结束位置错误
正如你们可以从这个简单的代码中看到的,我正在投射3条射线,红色射线应该类似于品红色线,它必须从startPos到endPos。但由于某种原因,红光在复制黄线 我不明白怎么了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(
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不是起点和终点,而是起点和方向。。。。获取开始和结束之间的方向作为第二个参数