Unity屏幕适配问题

game窗口中,点击game下方的尺寸,可以自定义窗口尺寸大小,你可以根据自己的需要自行定义,注意,并不是你定义多大的尺寸你实际看到的就是多大的尺寸,这还要和UIRoot中高度和宽度的参数共同决定。

其实所谓的自适应就是,例如,我按照1920*1080(1920/1080=16/9)做了ui的,但是我的屏幕是2048*1536(2048/1536=4/3),所说的自适应就是我本身的ui尺寸要适应我现在屏幕的尺寸,我本身的尺寸不论宽度还是高度都小于屏幕的实际宽度和高度,如果我按照像素一一对应的放在屏幕上,我的ui肯定不能充满整个屏幕的,所以为了使ui充满整个屏幕,我们要将我ui的一个像素对应屏幕大于一个像素,也就是我的ui要放大了,但是怎么放大呢,因为我们这个ui的父对象是uiroot,也就是我们都是放在uiroot下的,所以我们可以整体缩放uiroot啊,但是缩放多少呢,这时我们可以根据我们本身ui的尺寸比例以及接合我们实际屏幕的尺寸比例来计算我们的缩放比例,我们是根据高还是根据宽度缩放呢,这个也要根据实际情况,如我们现在的这个例子:我们的ui尺寸比例:16/9=1.77777,实际屏幕的尺寸比例:4/3=1.33333。我们的ui的宽高比大于实际屏幕的宽高比,所以按照宽度自适应,因为如果按照高度的进行放大,高度是适应到对应的(1080*(1536/1080))1536了,因为我们是整体自适应的(高和宽放大相同的比例),我们的宽度却适应到(1536/1080*1920)2730了,远远超过我们实际屏幕的尺寸2048了,所以,应该按照宽度进行自适应,这样结果就是宽为2048,高为(1080*(2048/1920)):1152,小于1536,然后将uiroot.scale*=(2048/1920),好了,我们的ui就会整体放大(2048/1920)倍。这样效果就出来了。

效果图如下:

自适应前

自适应后

参考链接:

1、https://blog.csdn.net/tobebest_/article/details/70140573

2、https://www.jianshu.com/p/9dfa070006d9

猜你喜欢

转载自blog.csdn.net/Liumotor/article/details/108449681