U3D中,屏幕坐标和世界坐标单位一样,二者之间是直接的一一对应关系,不受屏幕分辨率影响。默认情况下屏幕空间画布的左下角坐标是世界原点(0,0,0),这种情形下,世界空间的点(1920,1080,任何值)就对应屏幕上的点(1920,1080,0)。

sprite的大小是由实际图片的像素确定的,如512X512的图片放到sprite上,sprite的大小是5.12X5.12。即:默认情况下3D空间中1=100像素,这个是可以在每张图片导入设置中设定的。

由此,可见,屏幕分辨率代表的是游戏窗口能看到的世界空间的范围。比如1024X768是说游戏窗口可以看到世界空间的1024个单位长,768个单位宽的范围。

而比例分辨率是则有所不同,如4:3模式下,取系统桌面分辨率的高作为游戏屏幕的宽,长=宽X4/3。

因此,UI的世界坐标和3D空间中任何物体的3D坐标性质是一样的。取UI的position减去它所在画布左下角的position就得到了UI的屏幕绝对坐标。对于屏幕空间UI,它的世界坐标position就是屏幕空间相对于屏幕左下角(0,0,0)的坐标了。

分辨率改变时,UI坐标一般都会改变。除了一种情况:某UI所在层级中所有父结点坐标都是相对父结点左下角的,该UI也必须时相对其父结点左下角的。原理是分辨率改变时只是在增大缩小画布尺寸,而画布左下角永远固定在原点(屏幕空间U)。

截图中下:

上面说的情况都是在画布为 screen space overlay,canvas scaler为const pixel size 情况下。这是最简单的一种情形。

假设现在设置游戏分辨率为1920X1080,正交相机cam设置为orthgraphicsize = 4.5,则相机视口高为9,宽为16,备用。

canvas的三种模式:

1,screen space overlay: 这时UI坐标的范围是(0,0) ~ (1920,1080),因为这时画布左下角在原点

2,screen space camera,UI相机设置为上面的cam,假设画布左下角在原点,这时UI坐标范围是(0, 0) ~ (16, 9),也就是说它和屏幕坐标不再是一一对应,而是缩放了。

3,world space,世界空间,这时UI就相当于一个3D物体了,必须使用Camera.WorldToScreenPoint才能转换到屏幕坐标。

canvasScaler三种模式:

1,constant pixel size: 固定像素大小,这时不无论如何改变游戏窗口大小(在UNITY编辑器中拉游戏窗口边框)Screen.width, Screen.height都是1920,1080

若是这时指定屏幕宽高比,如4:3,系统设备分辨率为1920X1080,则 Screen.width,Screen.heght是游戏窗口所框定的系统设备像素(窗口大小)

这时UI的位置和大小都是以此像素为单位的,

文档上说【Using the Constant Pixel Size mode, positions and sizes of UI elements are specified in pixels on the screen.】  

2,scale with screen size : 这种方式自定一种画布分辨率,UI会被先绘制到这个画布上,然后画布被缩放适配到游戏窗口上,此方式与比1要灵活一些,本质上一样。

如果画布宽高比与屏幕宽高比例不一致,这时如何使两者适配则由screen match mode来确定,常用的match width or height这种方式,总是取画布的宽或高较大的一方,然后根据屏幕宽高比算出另一方

比如:画布设定x 1920, y 1080, 屏幕分辨率取4:3模式,则实际上screen.width = 1920, screen.height = 1920 * 3/4

U3D屏幕坐标,世界坐标,像素坐标之间的关系的更多相关文章

  1. YUV与像素值之间的关系

    一幅彩色图像的基本要素是什么? 说白了,一幅图像包括的基本东西就是二进制数据,其容量大小实质即为二进制数据的多少.一幅1920x1080像素的YUV422的图像,大小是1920X1080X2=4147 ...

  2. windows 屏幕坐标 窗口坐标 客户区坐标 逻辑坐标 设备坐标之间的关系及转换

    设置坐标映射    (1)Windows坐标系统 Windows坐标系分为逻辑坐标系和设备坐标系两种,GDI支持这两种坐标系.一般而言, GDI的文本和图形输出函数使用逻辑坐标,而在客户区移动或按下鼠 ...

  3. Unity 坐标 转换 详解 World世界坐标 Screen屏幕坐标 View视口坐标 GUI坐标 NGUI坐标 localPosition相对父级坐标

    在制作游戏中我们经常会遇到这样一个需求: 在人物模型的上面显示 名字.称号 一类的文字或者图片 如下图 人物模型属于是Camera1   UI Title信息属于NGUI Camera2 如下图 这时 ...

  4. android - px(像素)、dpi(像素密度)、dip(密度无关像素)之间的关系

    使用ImageView会遇到的问题 在Android应用中,都少不了图片的显示,ImageView,轮播图,ViewPager等等,很多都是来显示图片的,很多时候,我们都希望图片能够在宽度上填充父窗体 ...

  5. WINDOWS 逻辑坐标 设备坐标 屏幕坐标 客户区坐标

    转自:http://blog.csdn.net/lovesunshine2008/article/details/4048158 设置坐标映射    (1)Windows坐标系统 Windows坐标系 ...

  6. 如何理解VB窗体中的scale类属性及width height属性之间的关系

    如何理解VB窗体中的scale类属性及width height属性之间的关系 VB中的SCALEHIEGT,SCALEWIDTH,与窗体中的WIDTH,HEIGHT的区别及关系是许多VB初学者难以理解 ...

  7. Surface、SurfaceView、SurfaceHolder及SurfaceHolder.Callback之间的关系

    转载请包含网址:http://blog.csdn.net/pathuang68/article/details/7351317 一.Surface Surface就是“表面”的意思.在SDK的文档中, ...

  8. UI设计中px、pt、ppi、dpi、dp、sp之间的关系

    UI设计中px.pt.ppi.dpi.dp.sp之间的关系 武汉AAA数字艺术教育 2015-07-24 14:19:50 职业教育 pi px 阅读(3398) 评论(0) 声明:本文由入驻搜狐公众 ...

  9. AE常见接口之间的关系(较笼统)+arcgis常见概念

    常见的接口有如下关系 IworkspaceFactory-------------->IworkSpace------------------>IfeatureWorkSpace ---- ...

随机推荐

  1. [Python开发工具] Pycharm之快捷键

    [Python开发工具] Pycharm之快捷键 1 全局搜索: Ctrl+Shift+F,不过PyCharm的更强大, 你可以点选左侧某个目录后再按Ctrl+Shift+F, 这样默认会搜索改目录; ...

  2. hadoop安装及注意事项

    一.hadoop安装及注意事项1.安装hadoop的环境,必须在你的系统中有java的环境.2.必须安装ssh,有的系统默认就安装,如果没有安装需要手动安装.    可以用yum install -y ...

  3. powerdesigner安装图解

  4. PHP:第五章——字符串的分割与替换

    <?php header("Content-Type:text/html;charset=utf-8"); //字符串的截取与分割 //1.字符串截取类函数 //1)trim ...

  5. RALL资源获取初始化,删除器

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

  6. Linux 需要掌握的一些命令

    详情: 1. tar 创建一个新的tar文件 $ tar cvf archive_name.tar dirname/ 解压tar文件 $ tar xvf archive_name.tar 查看tar文 ...

  7. [批处理]简易命令行RAR

    这个BAT是为了病毒满满的信管实验室而专门定制的,在这机房上了两年,跟病毒也玩了两年了,也都脸熟的不行不行的了,来来回回就那几个病毒不是autorun.inf就是Desktop__.ini要么就是ga ...

  8. 201621123005《Java程序设计》第十二次作业

    <Java程序设计>第十二次作业 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 面向系统综合设计-图书馆管理系统或购物车 使用流与文件改造 ...

  9. L206

    There are so many new books about dying that there are now special shelves set aside forthem in book ...

  10. New Concept English Two 33 91

    $课文89 口误 981. People will do anything to see a free show -- even if it is a bad one. 人们总要想尽办法看不花钱的演出 ...