Unity3D之触摸输入实现在指定地形上拖拽物体
2015-05-15 20:52
218 查看
新建一个Plane物体,tag设为Terrain,新建一个Cube物体,创建一个脚本TouchTest03,将该脚本挂载到Cube上,代码如下:
using UnityEngine; using System.Collections; public class TouchTest03 : MonoBehaviour { private bool isSelect; private bool isDrag; void Awake() { isSelect = false; isDrag = false; } void Update() { int touchNum = Input.touchCount; if (touchNum > 0) { Touch touch = Input.GetTouch(0); RaycastHit hit; Ray ray = Camera.main.ScreenPointToRay(touch.position); bool isHit = Physics.Raycast(ray, out hit); switch (touch.phase) { case TouchPhase.Began: if (isHit) { if (hit.collider.gameObject == this.gameObject) { isSelect = true; } } break; case TouchPhase.Moved: isDrag = true; break; case TouchPhase.Ended: case TouchPhase.Canceled: isDrag = false; isSelect = false; break; default: break; } if (isSelect && isDrag) { if (hit.collider.tag == "Terrain") { transform.position = new Vector3(hit.point.x, hit.point.y + 0.5f, hit.point.z); } } } } }OK,完成!
相关文章推荐
- Unity3D之在指定地形中实现拖拽物体
- Unity3D之触摸输入实现物体滑动
- Unity3D之触摸输入实现物体滑动
- Unity3D之实现点击地形使物体移动到指定位置
- Unity3d 实现鼠标左键点击地形使角色移动到指定地点[脚本]
- [脚本] Unity3d 实现鼠标左键点击地形使角色移动到指定地点
- Unity3d 实现鼠标左键点击地形使角色移动到指定地点[脚本]
- unity3d实现鼠标左键点击地形使角色移动到指定地点
- Unity3D之点击地形使物体移动到指定位置
- 在Unity3D中实现点击地面物体移动到指定地点
- 007-实现Unity3d中触摸屏幕控制物体的移动 代码实现
- 002-实现Unity3d中触摸屏幕控制物体的旋转和缩放 代码实现
- [Phonegap+Sencha Touch] 移动开发75 继承Number数字输入控件,实现四舍五入到指定小数位
- 基于xml配置方式实现对action中指定方法进行输入校验
- Unity3D 游戏引擎之实现平面多点触摸(二)
- unity3D 实现NGUI物体朝鼠标点击位置移动
- unity3D C#脚本实现鼠标拖动物体
- Mouse without Borders是微软的一个软件实验项目,这款软件可让鼠标自由在局域网中的多台电脑间移动,键盘输入实现无缝切换,还可以直接用鼠标相互拖拽文件。 如果经常需要同时使用两台以
- 复习struts2之基于XML配置文件实现指定方法的输入校验以及基于XML校验的一些特点
- 1. 实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定, 输入9,输出9*9口诀表,输出12,输出12*12的乘法口诀表。