unity基础开发--鼠标移动物体并判断是否移动
来源:互联网 发布:傲剑境界数据 编辑:程序博客网 时间:2024/06/06 07:28
using UnityEngine;using System.Collections;public class Comm_MoveGameObject : MonoBehaviour { private GameObject mainCamera; public static bool moveDown=false; public static bool IsMoveGameObject=false; private Vector3 currentPos;//初始位置// Use this for initializationvoid Start () { mainCamera = GameObject.Find("Main Camera"); currentPos= this.gameObject.transform.position;} IEnumerator OnMouseDown() { moveDown = true; Vector3 screenSpace = Camera.main.WorldToScreenPoint(transform.position);//三维物体坐标转屏幕坐标 //将鼠标屏幕坐标转为三维坐标,再算出物体位置与鼠标之间的距离 Vector3 offset = transform.position - Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenSpace.z)); // print("down"); while (Input.GetMouseButton(0)) { //屏蔽镜头旋转 mainCamera.GetComponent<MouseFollowRotation>().enabled = false; //print("button0"); Vector3 curScreenSpace = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenSpace.z); Vector3 curPosition = Camera.main.ScreenToWorldPoint(curScreenSpace) + offset; transform.position = new Vector3(curPosition.x, curPosition.y, curPosition.z); yield return new WaitForFixedUpdate();//这个很重要,循环执行 ////对物体y进行限制 //if (transform.position.y <= limit_Y) //{ // transform.position = new Vector3(curPosition.x,limit_Y,transform.position.z); //} } } void OnMouseUp() { moveDown = false; mainCamera.GetComponent<MouseFollowRotation>().enabled = true; //IsGameMove(); }// Update is called once per framevoid Update () { IsGameMove();} /// <summary> /// 判断物体是否移动 /// </summary> void IsGameMove() { if (currentPos != this.gameObject.transform.position) { //currentPos.transform.position print("移动了"); IsMoveGameObject = true; } else { print("没有移动"); IsMoveGameObject =false; } }}脚本放在需要移动的物体上,ok
0 0
- unity基础开发--鼠标移动物体并判断是否移动
- Unity 物体跟随鼠标点击移动,判断物体是否在移动
- unity 鼠标拖动物体移动
- 【Unity】物体跟随鼠标移动
- unity让物体鼠标平滑移动物体
- unity鼠标拖拽物体移动
- unity中鼠标拖拽物体移动
- unity中根据鼠标移动旋转物体
- Unity移动物体到鼠标点击位置
- Unity 代码实现物体跟随鼠标移动
- Unity用鼠标控制物体移动
- Unity 物体根据鼠标移动而转动
- 鼠标控制物体移动
- Unity移动物体
- unity 拖动物体移动
- Unity中鼠标左键按下,拖拽物体移动
- Unity中鼠标左键按下,拖拽物体移动
- Unity中鼠标左键按下,拖拽物体移动
- 外挂辅助技术研究-分析怪物列表
- 多线程读写 shared_ptr的加锁
- FLASH中如何使一个物体沿着自己画的路径运动?
- Objective-C中的@property
- 调用rest地址时异常:Invalid use of BasicClientConnManager: connection still allocated.
- unity基础开发--鼠标移动物体并判断是否移动
- 网络间json字符串传递的技巧
- typedef和#define的用法与区别
- Ubuntu 14.04 安装搜狗输入法
- opencv: partition应用
- STL中map用法详解
- CentOS下如何安装libevent
- 编译出错:file is universal (4 slices) but does not contain a(n) armv7s slice
- codeforces 225C Barcode (dp)