您当前的位置: 首页 >  unity

Peter_Gao_

暂无认证

  • 6浏览

    0关注

    621博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Unity分辨率适配方案设置

Peter_Gao_ 发布时间:2021-12-12 15:13:31 ,浏览量:6

有关适配问题官方文档的连接,有兴趣的小伙伴可以查阅一下。

Anchors:https://docs.unity3d.com/Manual/UIBasicLayout.html

CanvasScaler:https://docs.unity3d.com/Manual/script-CanvasScaler.html

多分辨率的适配:https://docs.unity3d.com/Manual/HOWTO-UIMultiResolution.html ————————————————

讨论一下Unity中关于多分辨率下UI适配的问题。

适配需要解决的问题 我们在项目开发时通常都会在一个标准的分辨率下进行开发,但我们发布的时候则会发布到不同的平台和设备上去,不同的平台和设备他们的分辨率则是不一样的。所以适配需要解决以下两个方面的问题:

多分辨率下UI的大小尺寸保持不变。(方案:Canvas画布)

多分辨率下UI的相对位置保持不变。(方案:Anchors锚点)

只有解决了这两个问题,才会让我们在不同分辨率下的UI看起来和开发时分辨率下的UI一样。

来说适配大小。在Unity中UI都是放置在Canvas对象下的,在不同分辨率下为了达到适配的目的,我们可以通过修改Canvas对象上RectTransform的Width、Height和Scale来实现(主要是Scale)。但是Canvas对象的RectTransform是无法直接修改的,我们需要借助Unity中的CanvasScaler组件来进行修改,下面我们就来了解一下CanvasScaler。

CanvasScaler中的UI Scale Mode有三种模式:Constant Pixel Size、Scale With Screen Size、Constant Physical Size。而我们适配需要使用到的是Scale With Screen Size模式,其作用是根据屏幕分辨率来进行缩放适配。Constant Pixel Size模式是保持UI原始像素尺寸不变来进行适配,Constant Physical Size是保持UI原始物理尺寸进行适配,这两个模式有兴趣的小伙伴可以自行了解一下。

接下来我们详细讲Scale With Screen Size模式。Scale With Screen Size模式是根据标准分辨率计算出当前分辨率下Canvas的缩放比例,来修改Canvas的Scale值进行适配的。在Scale With Screen Size模式中有两个重要的参数。第一个是Reference Resolution,Reference Resolution就是我们开发时使用的标准分辨率,Canvas的缩放都是以Reference Resolution的值为标准进行计算的。第二个是Screen Match Mode,Screen Match Mode用于选择屏幕的匹配模式,其中有三种模式:Match Width or Height、Expand、Shrink。

Match Width or Height模式是以标准分辨率的Width、Height或者两者的中间值为参考计算缩放的。下面示例的标准分辨率为1280*720,实际分辨率为1024*768,以Width值为参考。   

 

原文链接:https://blog.csdn.net/huoyixian/article/details/89250677

在适配不同分辨率比例的手机上UI遇到了一些问题.

一、Canvas设置(UI的画布)

(选中场景中的Canvas,然后在Inspector窗口中设置)

1.设置Canvas大小缩放:

  Render Mode:设置UI与3D场景中的物体的渲染关系.

        1)ScreenSpace-Camera模式,可以在下面RenderCamera赋值的摄像机中的3D物体 粒子特效等渲染到UI中,并且能设置层级.

        2)ScreenSpace-OverLay模式,比较适合纯UI,UI显示在所有3D物体前面.

        3)WorldSpace模式,则是把UI放到3D场景中渲染.

    Canvas Scale组件:

      设置UI的适应缩放.

   1) UI Scale Mode:

    模式1.Scale With Screen Size:根据原屏幕大小进行变化比较小的缩放.(该模式下,能够较好地适应不同分辨率和大小的屏幕)

                     衍生选项-  Renference Resolution:设置开发时屏幕分辨率,做为参考分辨率.

                                       Screen Match Mode:不同像素比的场景显示UI的模式

                                                                1 Expand:扩展拉伸.(拉伸后分辨率>=Renference Resolution的参考分辨率)

                                                                2 Match Width or Height:按原始比例匹配宽度或者高度.(屏幕比例不同会有黑边)

                                                                3 Shrink:收缩.(收缩后分辨率

关注
打赏
1664521772
查看更多评论
立即登录/注册

微信扫码登录

0.2265s