unity 安卓端通过滑动屏幕实现对物体的移动以及缩放
来源:互联网 发布:玫瑰战争 知乎 书 编辑:程序博客网 时间:2024/05/22 05:25
unity 安卓端通过滑动屏幕实现对物体的移动以及缩放(通过对Camera操作)
将代码拖到MainCamera上 打包到安卓端即可实现模型的移动以及缩放
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ScaleAndMove : MonoBehaviour {
// 记录手指触屏的位置 Vector2 m_screenpos = new Vector2();Vector3 oldPosition;// Use this for initialization void Start(){//记录开始摄像机的Position oldPosition = Camera.main.transform.position;}// Update is called once per frame void Update(){ if (Input.touchCount <= 0) return; // 1个手指触摸屏幕 if (Input.touchCount == 1) { if (Input.touches[0].phase == TouchPhase.Began) { // 记录手指触屏的位置 m_screenpos = Input.touches[0].position; } // 手指移动 else if (Input.touches[0].phase == TouchPhase.Moved) { // 移动摄像机 Camera.main.transform.Translate(new Vector3(-Input.touches[0].deltaPosition.x * Time.deltaTime*0.1f, -Input.touches[0].deltaPosition.y * Time.deltaTime*0.1f, 0)); } } else if (Input.touchCount > 1) { // 记录两个手指的位置 Vector2 finger1 = new Vector2(); Vector2 finger2 = new Vector2(); // 记录两个手指的移动 Vector2 mov1 = new Vector2(); Vector2 mov2 = new Vector2(); for (int i = 0; i < 2; i++) { Touch touch = Input.touches[i]; if (touch.phase == TouchPhase.Ended) break; if (touch.phase == TouchPhase.Moved) { float mov = 0; if (i == 0) { finger1 = touch.position; mov1 = touch.deltaPosition; } else { finger2 = touch.position; mov2 = touch.deltaPosition; if (finger1.x > finger2.x) { mov = mov1.x; } else { mov = mov2.x; } if (finger1.y > finger2.y) { mov += mov1.y; } else { mov += mov2.y; } Camera.main.transform.Translate(0, 0, mov * Time.deltaTime*0.1f); } } } //控制物体始终在屏幕中 Camera.main.transform.position = new Vector3(Mathf.Clamp(transform.position.x, -4f, 5.5f), Mathf.Clamp(transform.position.y, 0.5f, 10f), Mathf.Clamp(transform.position.z, -0.9f, 4.6f));}//通过按钮让物体回到最初的位置public void BackRS(){ Camera.main.transform.position = oldPosition;}
}
阅读全文
2 0
- unity 安卓端通过滑动屏幕实现对物体的移动以及缩放
- Unity滑动屏幕控制物体的旋转
- UNITY手指接触屏幕对物体进行旋转和缩放
- Unity-->实现物体的移动
- Unity3d实现Android滑动屏幕移动3D物体
- Unity 控制物体移动 旋转 缩放
- Unity设置物体移动、缩放和旋转
- 在Unity中通过触摸屏幕实现模型的旋转和缩放
- 在Unity中通过触摸屏幕实现模型的旋转和缩放
- 在Unity中通过触摸屏幕实现模型的旋转和缩放
- 【Android】一个浏览图片的Android库的实现,可以移动、缩放图片以及滑动切换
- 在unity中实现鼠标拖动物体移动,滑轮实现缩放
- andorid---通过Viewpager实现图片滑动以及缩放
- Unity中玩家通过点击行走 或 滑动屏幕行走的实现
- Unity中玩家通过点击行走 或 滑动屏幕行走的实现
- Unity3d 简单实现物体旋转缩放移动
- unity里面物体的移动
- Android中实现物体在屏幕的移动
- mysql通过对比一张表的数据来修改另一张表两种sql的对比
- SSH框架---Spring官网下载各版本jar包
- Kylin系列-Apache Kylin优化之—Cube的高级设置
- PHP操作swoole来实现实时异步任务队列
- python的数据类型和变量
- unity 安卓端通过滑动屏幕实现对物体的移动以及缩放
- 数据仓库分层
- 关于NMDS的一知半解
- java中静态初始化块,实例初始化块,构造函数区别
- 【C#】LINQ使用
- 一个小工具类
- PyTorch学习总结(三)——ONNX
- redis的主从复制,读写分离,主从切换
- vue.js移动端app实战3:从一个购物车入门vuex