首页 > 其他分享 >Unity3d - 触摸屏幕手指控制物体移动(跟随手指移动)

Unity3d - 触摸屏幕手指控制物体移动(跟随手指移动)

时间:2023-08-15 10:01:28浏览次数:31  
标签:hit Unity3d 手指 firstTouch touchDeltaPos currTouchObj Input 移动 public

最近工作中的新需求,手指触摸屏幕选中物体跟随手指移动的任务,开发完成后便记录下来,大家共勉


public class TouchTest : MonoBehaviour

{

   public Transform currTouchObj;

   private Camera mainCamera;

   private void Awake()

   {

       mainCamera = Camera.main;

   }


   public void CtrlTouchObjMove()

   {

  if (Input.touchCount == 1)

       {

           Touch firstTouch = Input.GetTouch(0);

           if (firstTouch.phase == TouchPhase.Began)

           {

               Ray ray = mainCamera.ScreenPointToRay(firstTouch.position);

               RaycastHit hit;

               if (Physics.Raycast(ray, out hit))

               {

                 //获取当前触摸到的物体

                       currTouchObj = hit.collider.transform;

               }

           }


           if (Input.GetTouch(0).phase == TouchPhase.Moved)

           {      

               if (currTouchObj)

               {

                   Vector3 touchDeltaPos = Input.GetTouch(0).deltaPosition;

                   currTouchObj.Translate(touchDeltaPos.x * touchObjMoveSpeed, touchDeltaPos.y * touchObjMoveSpeed, 0, Space.World);

               }

           }

}

}

标签:hit,Unity3d,手指,firstTouch,touchDeltaPos,currTouchObj,Input,移动,public
From: https://blog.51cto.com/u_16221841/7085417

相关文章

  • 【Unity3D】素描特效
    1非真实渲染​法线贴图和凹凸映射中讲述了普通光照的渲染原理,实现的效果比较贴近真实世界(照相写实主义,Photorealism),非真实渲染(Non-PhotorealismRendering,NPR)在照相写实主义的基础上添加了一些风格处理,如:卡通、水彩、素描等风格。​本文完整资源见→Unity3D素描特效。......
  • 某公司笔试题 - 坐标移动(附python代码)
    #开发一个坐标计算工具,A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里面读取坐标,并将最终输入结果输出文件里面。#输入坐标为A(或D或W或S)+数字(两位以内)。坐标之间以;分隔#数据范围:1<=n<=10000每组输入的字符串长度坐标保证满足-......
  • Typora,打造自己的移动写作系统
    工具介绍Typora是一款简洁免费的Markdown编辑器,支持实时预览、样式优化、目录导航等功能。它极简的界面设计,摆脱了传统Markdown编辑器的复杂菜单和设置,让用户可以零分散专注于写作。Typora适用于Windows、Linux、Mac平台,并且支持导出HTML、PDF等多种文档格式。Typora下......
  • 【Unity3D】Bloom特效
    1Bloom特效原理​Bloom特效是指:将画面中较亮的区域向外扩散,造成一种朦脓的效果。实现Bloom特效,一般要经过3个阶段处理:亮区域检测、高斯模糊、Bloom合成。​本文完整资源见→Unity3DBloom特效。​1)亮区域检测​根据亮度阈值检测亮区,如下从原图中提取......
  • 【Unity3D】运动模糊特效
    1运动模糊原理​开启混合(Blend)后,通过Alpha通道控制当前屏幕纹理与历史屏幕纹理进行混合,当有物体运动时,就会将当前位置的物体影像与历史位置的物体影像进行混合,从而实现运动模糊效果,即模糊拖尾效果。主要代码如下:Pass{BlendSrcAlphaOneMinusSrcAlphaCGPROGR......
  • 移动端布局之flex布局
    什么是flex布局基本含义Flex是FlexibleBox的缩写(注:意思是“灵活的盒子容器”),意为”弹性布局”,是CSS3引入的新的布局模式,用来为盒状模型提供最大的灵活性,它决定了元素如何在页面上排列,使它们能在不同的屏幕尺寸和设备下可预测地展现出来。基本概念采用Flex布局的元素,称为......
  • c++ 使用移动语义来提高 vector 性能
    本文学习了微软的官方实例,用于理解std::move语义。#pragmaonce#include<iostream>#include<algorithm>#include<vector>usingnamespacestd;classMemoryBlock{public://Simpleconstructorthatinitializestheresource.explicitMemoryBl......
  • 小程序生成App:可跨平台开发的移动应用开发框架
    小程序生成App可以成为一种轻量低门槛的开发App的方式,但是需要根据具体情况进行选择。如果应用需要处理大量数据或需要进行复杂计算,或者需要实现原生特有的功能或交互效果,可能需要选择其他开发方式。在文章开始之前,我们看看目前市面上比较容易上手、低门槛开发App的框架和方式Rea......
  • 【Unity3D】高斯模糊特效
    1高斯模糊原理​边缘检测特效中使用了卷积运算进行了边缘检测,本文实现的高斯模糊特效同样使用了卷积运算,关于卷积核和卷积运算的概念,读者可以参考边缘检测特效。​本文完整资源见→Unity3D高斯模糊特效。​我们将用于模糊处理的卷积核称为模糊算子,它一般满足以下......
  • 【Unity3D】边缘检测特效
    1边缘检测原理​边缘检测的原理是:检测每个像素周围的像素亮度差,如果亮度差异较大,就将该像素识别为边缘,并进行边缘着色。​本文完整资源见→Unity3D边缘检测特效。​使用过卷积神经网络(CNN)的人,一定知道卷积运算,笔者之前有写过相关文章(使用CNN实现MNIST数据集分类、......