unity让物体移动到鼠标点击点
2017-01-06 16:53
453 查看
using UnityEngine; using System.Collections; public class test : MonoBehaviour { //在场景中鼠标点击地面后,角色可以移动到目标位置 private Vector3 target; private bool isOver = true; public float speed; void Start () { } void Update () { if(Input.GetMouseButtonDown(0)) { print("MouseDown"); //1. 获取鼠标点击位置 //创建射线;从摄像机发射一条经过鼠标当前位置的射线 Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); //发射射线 RaycastHit hitInfo = new RaycastHit(); if (Physics.Raycast(ray, out hitInfo)) { //获取碰撞点的位置 if (hitInfo.collider.name == "Plane") { target = hitInfo.point; target.y += 0.5f; isOver = false; } } //RaycastHit[] hitAll = Physics.RaycastAll(ray, 1000); //foreach(RaycastHit hitInfo in hitAll) //{ // print(hitInfo.collider.name); // if (hitInfo.collider.name == "Plane") // { // target = hitInfo.point; // target.y = 0.5f; // isOver = false; // } //} } //2. 让角色移动到目标位置 MoveTo(target); } //让角色移动到目标位置 private void MoveTo(Vector3 tar) { if(!isOver) { Vector3 offSet = tar - transform.position; transform.position += offSet.normalized * speed * Time.deltaTime; if(Vector3.Distance(tar, transform.position)<0.5f) { isOver = true; transform.position = tar; } b85a } } }
相关文章推荐
- Unity移动物体到鼠标点击位置
- 我的Unity(1)一点一滴 鼠标点击任意位置,物体移动到该位置。
- Unity 物体跟随鼠标点击移动,判断物体是否在移动
- Unity18--鼠标和场景相反运动、物体绕过障碍物,向目标自动移动,且鼠标点击哪里,物体也运动
- Unity鼠标控制物体360°旋转和点击移动
- unity 鼠标拖动 物体旋转 点击变色 拖动移动
- Unity中物体如何移动到鼠标点击位置
- Unity学习2 鼠标点击控制物体移动
- unity中移动鼠标到物体上时,显示提示框
- Unity 鼠标点击屏幕创建物体
- Unity中鼠标左键按下,拖拽物体移动
- Unity 物体根据鼠标移动而转动(可用于物体的360度展示)(PC端)
- unity中根据鼠标移动旋转物体
- Unity获取鼠标点击位置,物体朝鼠标点击处移动
- unity3D 实现NGUI物体朝鼠标点击位置移动
- unity 在鼠标点击位置生成物体
- Unity学习笔记——鼠标移动到物品上显示物品名字,点击后显示物品信息
- 根据鼠标点击位置移动物体
- unity 点击鼠标左键控制物体360展示
- Unity简单利用屏幕坐标转换实现鼠标控制物体移动