unity3d物体移动到鼠标点击位置
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、运行游戏,然后鼠标点击地面,物体会自动移动到鼠标点击的位置。

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