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

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

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;
}
}
}

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;
}
}

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

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