Unity触摸屏TouchPhase多点触碰旋转放大缩小
Unity触摸屏TouchPhase多点触碰旋转放大缩小
- 最近做了一个展厅的项目需要用到触摸屏多点触控,直接上代码
最近做了一个展厅的项目需要用到触摸屏多点触控,直接上代码
private Touch oldTouch1; //上次触摸点1(手指1) private Touch oldTouch2; //上次触摸点2(手指2) void Update(){//没有触摸 if (Input.touchCount <= 0){return;}//单点触摸, 水平上下旋转 if (1 == Input.touchCount){Touch touch = Input.GetTouch(0);Vector2 deltaPos = touch.deltaPosition;transform.Rotate(Vector3.down * deltaPos.x, Space.World);transform.Rotate(Vector3.right * deltaPos.y, Space.World);}//多点触摸, 放大缩小 Touch newTouch1 = Input.GetTouch(0);Touch newTouch2 = Input.GetTouch(1);//第2点刚开始接触屏幕, 只记录,不做处理 if (newTouch2.phase == TouchPhase.Began){oldTouch2 = newTouch2;oldTouch1 = newTouch1;return;}//计算老的两点距离和新的两点间距离,变大要放大模型,变小要缩放模型 float oldDistance = Vector2.Distance(oldTouch1.position, oldTouch2.position);float newDistance = Vector2.Distance(newTouch1.position, newTouch2.position);//两个距离之差,为正表示放大手势, 为负表示缩小手势 float offset = newDistance - oldDistance;//放大因子, 一个像素按 0.01倍来算(100可调整) float scaleFactor = offset / 100f;Vector3 localScale = transform.localScale;Vector3 scale = new Vector3(localScale.x + scaleFactor,localScale.y + scaleFactor,localScale.z + scaleFactor);//最小缩放到 0.3 倍 if (scale.x > 0.3f && scale.y > 0.3f && scale.z > 0.3f){transform.localScale = scale;}//记住最新的触摸点,下次使用 oldTouch1 = newTouch1;oldTouch2 = newTouch2;}
Unity触摸屏TouchPhase多点触碰旋转放大缩小相关推荐
- android imageview 多点触碰(MultiTouch)实现图片拖拽移动缩放
刚用android手机 发现手机自带的图片浏览器挺酷 可以用手指移动 缩放 还有动画效果 Intent intent = new Intent(Intent.ACTION_VIEW); ...
- adb 多点触碰_无法触及的神话
adb 多点触碰 On Twitter, in Slack, on Discord, in IRC, or wherever you hang out with other developers o ...
- Android基础新手教程——3.4 TouchListener PK OnTouchEvent + 多点触碰
Android基础新手教程--3.4 TouchListener PK OnTouchEvent + 多点触碰 标签(空格分隔): Android基础新手教程 本节引言: 如题,本节给大家带来的是To ...
- 【Android 】零基础到飞升 | TouchListener PK OnTouchEvent + 多点触碰
3.4 TouchListener PK OnTouchEvent + 多点触碰 分类 Android 基础入门教程 本节引言: 如题,本节给大家带来的是TouchListener与OnTouchEv ...
- cocos2dx基础篇(9)——触碰事件Touch
[唠叨] cocos2dx游戏引擎的重点是在于移动设备的跨平台开发,而移动设备上的游戏大部分都是通过屏幕触碰来进行的.比如主菜单的按钮触碰,打飞机中飞机的触碰移动,都需要用到触碰操作.想一想之前讲的菜 ...
- android如何怎么禁止多点触控
不积跬步无以至千里 在一个页面里做了个对讲的操作,对讲需要长按操作,但是发现碰触界面其他位置,会中断,通过监听这个View的onTouchEvent,其中的MotionEvent中的action,发现 ...
- iOS--触碰响应UIResponder UIGestureRecognizer
疯狂iOS讲义总结 一.在iOS中,触碰的响应是以响应者链的形式进行的.也就是说,当用户和某个控件交互时,该控件会成为第一响应者(First Responder),第一响应者作为响应者链的开始,交互交 ...
- cocos2dx基础篇(7) 触碰事件
cocos2dx游戏引擎的重点是在于移动设备的跨平台开发,而移动设备上的游戏大部分都是通过屏幕触碰来进行的.比如主菜单的按钮触碰,打飞机中飞机的触碰移动,都需要用到触碰操作.想一想之前讲的菜单按钮CC ...
- Unity中单点和多点触控
Input.touchCount获取当前的触摸点数目,若为1则是单点触控,大于1则是多点触控 点击事件用:Input.GetTouch(num).phase== TouchPhase.Began这样的 ...
最新文章
- 产品设计体会(1011)少做就是多做
- Python 相对路径、绝对路径的写法实例演示
- Windows文件夹、文件源代码对比工具--WinMerge
- CRNN:端到端不定长文字识别算法
- 第11课:动手实战基于 LSTM 轻松生成各种古诗
- 消息队列 应用场景 解析
- 最小公倍数与最大公约数的研究
- JAVA反射中的getFields()方法和getDeclaredFields ()方法的区别
- 解码H264视频出现花屏或马赛克的问题
- 整理一下第一次参加华为大数据挑战赛自己的一些收获吧(正式赛篇阶段一)
- 关于tomcat报错500的问题记录(classnotfoundexception)
- matlab拟合反比例函数,y与x的函数关系式图像 已知变量y与x之间的函数
- 通过 http-proxy-middleware 跨域代理与添加自定义cookie
- 介绍 json_介绍
- 少女长期与宠物睡觉 遭“宠物虫”噬骨导致瘫痪
- android实现按键找图功能,按键精灵安卓版找图教程 找图功能使用技巧介绍
- C语言打开中文路径文件
- IS-IS LSP泛洪同步过程
- vb.net mysql 实例教程_VB.net数据库编程(01):简单的入门实例
- oracle 051考试,OCP/OCA认证考试指南全册Oracle Database 11g(1Z0-051,1Z0-052,1Z0-053)练习与知识点...
热门文章
- 七夕,那个不一样的人
- MindMaster支持全平台、云储存的思维导图工具
- [day2]python网络爬虫实战:爬取美女写真图片(增强版)
- 华为云计算机访问手机软件,华为云电脑来了,只需一个APP就能让手机秒变Windows电脑...
- [数据结构与算法综合实验]欢乐练练看
- HDU 2033 - 人见人爱 A + B
- 衣服上的标签是如何做出来的?
- AVB源码学习(四):AVB2.0-libavb库介绍1
- hibernate级联操 同时向2张表插入数据(一对多的关联,一个简单的例子说明)
- 《AutoCAD 2014中文版实用教程》一一1.2 标题栏