Unity3D游戏开发之四种坐标系.docx

Unity3D游戏开发之四种坐标系.docx

ID:52324626

大小:15.79 KB

页数:2页

时间:2020-03-26

Unity3D游戏开发之四种坐标系.docx_第1页
Unity3D游戏开发之四种坐标系.docx_第2页
资源描述:

《Unity3D游戏开发之四种坐标系.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Unity3D游戏开发之四种坐标系unity3d四种坐标系1,WorldSpace(世界坐标):    我们在场景中添加物体(如:Cube),他们都是以世界坐标显示在场景中的。transform.position可以获得该位置坐标。2,ScreenSpace(屏幕坐标):    以像素来定义的,以屏幕的左下角为(0,0)点,右上角为(Screen.width,Screen.height),Z的位置是以相机的世界单位来衡量的。注:鼠标位置坐标属于屏幕坐标,Input.mousePosition可以获得该位置坐标,手指触摸屏幕也为屏幕坐标,

2、Input.GetTouch(0).position可以获得单个手指触摸屏幕坐标。3,ViewPortSpace(视口坐标):    视口坐标是标准的和相对于相机的。相机的左下角为(0,0)点,右上角为(1,1)点,Z的位置是以相机的世界单位来衡量的。文章出处【狗刨学习网】4,绘制GUI界面的坐标系:    这个坐标系与屏幕坐标系相似,不同的是该坐标系以屏幕的左上角为(0,0)点,右下角为(Screen.width,Screen.height)。    世界坐标→屏幕坐标:camera.WorldToScreenPoint(transf

3、orm.position);这样可以将世界坐标转换为屏幕坐标。其中camera为场景中的camera对象。    屏幕坐标→视口坐标:camera.ScreenToViewportPoint(Input.GetTouch(0).position);这样可以将屏幕坐标转换为视口坐标。其中camera为场景中的camera对象。    视口坐标→屏幕坐标:camera.ViewportToScreenPoint();    视口坐标→世界坐标:camera.ViewportToWorldPoint();案例1——在鼠标点击的位置上绘制一张图

4、片出来(关于绘制GUI界面坐标系与屏幕坐标系之间的关系)。1.usingUnityEngine;2.usingSystem.Collections;3.publicclasstest:MonoBehaviour  {4.    //图片5.  publicTextureimg;6.  //储存鼠标的位置坐标7.  privateVector2pos;1.  voidOnGUI()2.    {3.      //鼠标左击,获取当前鼠标的位置4.    if(Input.GetMouseButton(0))5.      {6.     

5、     pos=Input.mousePosition;7.      }8.        //绘制图片9.    GUI.DrawTexture(newRect(pos.x,Screen.height-pos.y,100,100),img);10.    }11.}案例2——坐标显示和坐标转换(这个是触摸方面的。如果没有触摸屏,那就将那个if去掉吧!)文章出处【狗刨学习网】1.usingUnityEngine;2.usingSystem.Collections;3.publicclasstest:MonoBehaviour  {4

6、.  //场景的相机,拖放进来5.  publicCameracamera;6.  //场景的物体7.  privateGameObjectobj;8.    voidStart()9.    {10.        //初始化11.    obj=GameObject.Find("Plane");12.    }13.      voidUpdate()14.      {15.          //有触摸16.      if(Input.touchCount>0)17.          {18.          print(

7、"世界坐标"+obj.transform.position);19.          print("屏幕坐标"+Input.GetTouch(0).position);20.          print("世界坐标→屏幕坐标"+camera.WorldToScreenPoint(obj.transform.position));21.          print("屏幕坐标→视口坐标"+camera.ScreenToViewportPoint(Input.GetTouch(0).position));22.          pr

8、int("世界坐标→视口坐标"+camera.WorldToViewportPoint(obj.transform.position));23.        }24.    }25.}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。