我有两个任意点V1和V2.我定义了从V1到V2的光线,我想找到光线撞击平面的确切位置.当我运行我的代码时,命中位置落在错误的位置!如您所见,绿色球体显示的光线碰撞位置与V1和V2不对齐.

using UnityEngine;
using System.Collections;
public class RaycastLearning : MonoBehaviour {
// Use this for initialization
Vector3 v1;
Vector3 v2;
float MoveToLeft = 5f;
void Start () {
GameObject plane = GameObject.CreatePrimitive (PrimitiveType.Plane);
plane.transform.rotation = Quaternion.AngleAxis (90f, Vector3.right);
plane.transform.position = new Vector3 (MoveToLeft, 0, 5);
v2 = new Vector3 (MoveToLeft, 0f, -10f);
v1 = new Vector3 (MoveToLeft, 0f, 10f);
GameObject SV1 = GameObject.CreatePrimitive (PrimitiveType.Sphere);
SV1.transform.position = v1;
SV1.name = "SV1";
GameObject SV2 = GameObject.CreatePrimitive (PrimitiveType.Sphere);
SV2.transform.position = v2;
SV2.name = …Run Code Online (Sandbox Code Playgroud)