Unity鼠标拖拽物体
2014-12-24 14:19
344 查看
<pre name="code" class="csharp">using UnityEngine; using System; using System.Collections; // 创建一个Cube 将该代码拖拽给Cube然后运行,点击Cube然后拖拽Cube, //Cube会被鼠标拖拽移动 // 注意 : 创建的 Cube 默认带有一个 Box Collider 碰撞盒, //如果拖拽对象上没有 碰撞盒, 则不能被检测到拖拽 public class Test : MonoBehaviour { Transform myTransform; Vector3 selfScenePosition; void Start() { myTransform = transform; //将自身坐标转换为屏幕坐标 selfScenePosition = Camera.main.WorldToScreenPoint(myTransform.position); print("scenePosition : " + selfScenePosition); } void OnMouseDrag() //鼠标拖拽时系统自动调用该方法 { //获取拖拽点鼠标坐标 print(Input.mousePosition.x + " y " + Input.mousePosition.y + " z " + Input.mousePosition.z); //新的屏幕点坐标 Vector3 currentScenePosition = new Vector3(Input.mousePosition.x, Input.mousePosition.y, selfScenePosition.z); //将屏幕坐标转换为世界坐标 Vector3 crrrentWorldPosition = Camera.main.ScreenToWorldPoint(currentScenePosition); //设置对象位置为鼠标的世界位置 myTransform.position = crrrentWorldPosition; } void OnMouseDrag() { print("鼠标拖动该模型区域时"); } void OnMouseDown() { print("鼠标按下时"); } void OnMouseUp() { print("鼠标抬起时"); } void OnMouseEnter() { print("鼠标进入该对象区域时"); } void OnMouseExit() { print("鼠标离开该模型区域时"); } }
相关文章推荐
- unity中鼠标拖拽物体移动
- Unity中鼠标左键按下,拖拽物体移动
- Unity中鼠标左键按下,拖拽物体移动
- 【狼】unity 鼠标拖拽物体实现任意角度自旋转
- unity鼠标拖拽物体移动
- unity 鼠标拖拽物体(二)
- unity 鼠标拖拽物体(一)
- Unity中鼠标左键按下,拖拽物体移动
- Unity中鼠标左键按下,拖拽物体移动
- unity 鼠标拖拽物体实现任意角度自旋转
- unity 鼠标拖拽物体旋转,滚轮放大缩小(一)
- unity实现鼠标点击后拖拽物体
- Unity中鼠标左键按下,拖拽物体移动
- 【Unity3D自学记录】鼠标拖拽物体移动
- unity 原生UI 拖拽跟随鼠标移动
- unity背包系统中物体拖拽效果实现(初学者)
- 《鼠标点击物体,物体跟随光标移动》与《鼠标按住左键不放拖拽物体》
- Unity 5.3 将物体转向鼠标所在位置
- unity获取鼠标下有哪些UI物体
- unity鼠标点击获取目标物体的属性