unity3d物体移动到鼠标点击位置

2025-10-21 13:28:29

1、打开unity3d创建一个立方体。

unity3d物体移动到鼠标点击位置

2、接着创建一个"Move"脚本。

unity3d物体移动到鼠标点击位置

3、定义一个finish保存是否移动状态,pos目标位置,获得鼠标点击处的地面Terrain的世界坐标。

if(Input.GetMouseButtonDown(0))

{

Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);

RaycastHit hit = new RaycastHit();

if (Physics.Raycast(ray, out hit))

{

if (hit.collider.name == "Terrain")

{

pos = hit.point;

finish = false;

}

}

}

unity3d物体移动到鼠标点击位置

4、通过以下的脚本移动到鼠标点击的pos位置。

if(!finish)

{

Vector3 offset = pos - transform.position;

transform.position += offset.normalized * 20 * Time.deltaTime;

if(Vector3.Distance(pos, transform.position)<1f)

{

transform.position = pos;

finish = true;

}

}

unity3d物体移动到鼠标点击位置

5、把move脚本放在物体上面。

unity3d物体移动到鼠标点击位置

6、运行游戏,然后鼠标点击地面,物体会自动移动到鼠标点击的位置。

unity3d物体移动到鼠标点击位置

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢