【发布时间】:2015-04-29 14:36:02
【问题描述】:
我有一个 AR 场景,它有一个 AR 相机、一个图像目标和下面的 3d 对象。
我创建了一个.cs 文件并附加到 ARCamera。我想将 AR 对象移动到鼠标点击位置。我为此尝试了很多代码。但我没能成功。
我知道Input.mouseposition 返回屏幕位置。我转换为 ScreenToWorldPosition 并将 3d 对象放在这个位置。 3d 对象被移动,但不是鼠标点击位置。我不知道它被移动到哪里了。
如何移动到鼠标点击位置?我的代码在这里:
Camera cam;
Vector3 target = new Vector3(0.0f, 10f,0.5f);
// Use this for initialization
void Start () {
if (cam == null)
cam = Camera.main;
}
void Update()
{
if (Input.GetMouseButtonDown(0)) {
Debug.Log("MouseDown");
Vector3 mousePos = Input.mousePosition;
mousePos = cam.ScreenToWorldPoint(mousePos);
GameObject.Find("Car1").gameObject.transform.position = mousePos;
}
}
编辑 1 如果我在场景中添加一个平面,我只能在平面上移动到鼠标点击的位置。代码取自here。但飞机阻止显示 AR 摄像机视图。截图如下:
【问题讨论】:
标签: unity3d 3d augmented-reality gameobject