为啥我在unity的层级里不能拖放东西
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥我在unity的层级里不能拖放东西相关的知识,希望对你有一定的参考价值。
参考技术A 可以用Unity射线判断,也可以用其他插件仿照例子去做,例如:fingergesture 、easytouch 插件。<pre t="code" l="csharp">// 目前鼠标点击和手指拖拽的点击是通用的,代码在这里,你可以试试。IEnumerator OnMouseDown()
Vector3 ScreenSpace = Camera.main.WorldToScreenPoint(transform.position);
Vector3 offset = transform.position-Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x,Input.mousePosition.y,ScreenSpace.z));
Debug.Log(;down;);
//当鼠标左键按下时
while(Input.GetMouseButton(0))
//得到现在鼠标的2维坐标系位置
Vector3 curScreenSpace = new Vector3(Input.mousePosition.x,Input.mousePosition.y,ScreenSpace.z);
//将当前鼠标的2维位置转化成三维的位置,再加上鼠标的移动量
Vector3 CurPosition = Camera.main.ScreenToWorldPoint(curScreenSpace)+offset;
//CurPosition就是物体应该的移动向量赋给transform的position属性
transform.position = CurPosition;
//这个很主要
yield return new WaitForFixedUpdate();
本回答被提问者采纳
以上是关于为啥我在unity的层级里不能拖放东西的主要内容,如果未能解决你的问题,请参考以下文章