码迷,mamicode.com
首页 > 编程语言 > 详细

unity 单位 像素 分辨率 正交摄像机size 之间的关系

时间:2020-06-02 13:08:53      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:span   推荐   strong   转换   思路   作用   pixel   之间   高度   

技术图片

 

 这个5表示摄像机的视距

代表摄像机拍摄的一般高度

如果16:9的分辨率,100像素为1 unity单位的情况

填充摄像机所需图片大小尺寸为:高度:5*2*100 = 1000    宽度:1000*16/9 = 1778 【1778*1000】

 

技术图片

 

 技术图片

 

技术图片

 

 

上面这2张图,一个y坐标为  -3.5  ,一个为 -4 ,图片的pixel per unit为200

可计算出2图之间的像素为:0.5 * 200 = 100 像素

如果我们把图的pixel per unit改为100

技术图片

 

他们的图片会直接放大,但是他们的坐标不变,此时他们之间的距离为 0.5 *100 = 50像素

虽然他们之间的距离像素会发生变化,但是他们之间的unity单位是始终保持不变的,一直是0.5

由此我们可以得到一个游戏素材分辨率转换思路

我们可以改变游戏素材的尺寸,但是不会改变他们在unity里面的大小

比如一个pixel per unit为100,宽高也为100的图,现在要对他进行低分辨处理

 

我们把100*100改成 50*50 ,缩小一倍,然后把pixel per unit也缩小一倍,也就是50即可

高清化则反之,100*100改成200*200  ,pixel per unit改成200

 

高清化的作用

一般我们设计分辨率固定下来后,放大摄像机视距,场景素材会放大,高清化使得放大后的素材不模糊

具体看比例,比如我们正交摄像机size为5,设计分辨率【1920*1080】,推导出铺满场景需要【1778*1000】,则摄像机视角最多放大1000/1080 = 0.92倍,物体不会模糊,这个数字是小于1,没错,严格来讲1080p不应该使用这个size。

如果我们正交摄像机size为14.2,设计分辨率【1920*1080】,推导出铺满场景需要【5049*2840】,则摄像机视角最多放大2840/1080 = 2.62倍,物体不会模糊

 

逆向推导,1080p设计分辨率,1080/100/2=5.4,size至少5.4才是达标的size,所以我们推荐的正交摄像机的size最好是 5.4 至 10,在pixel per unit为100的情况

同时size过大也不好,因为需要绘制更大的素材。算好你的游戏正常视角和最大的视角,来决定你的size。一般来说在最大视角上图片不模糊就是你的正确的size。这种最大视角不应该过大,因为这个比例越大其实就是越浪费。而你的游戏有多少种情况是处于这种放大情况的呢。更不用说在移动平台上更需要节省资源来避免这种资源上的浪费。谷歌商店对安装包体积大小具有100Mb限制,再大需要开发者自行分包,移动平台上安装包越小更有优势

 

最后算了一下,透视摄像机,z为-10.16 的情况,要达到5.4标准,Field of view 值为56

unity 单位 像素 分辨率 正交摄像机size 之间的关系

标签:span   推荐   strong   转换   思路   作用   pixel   之间   高度   

原文地址:https://www.cnblogs.com/sanyejun/p/13030244.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!