unity打包时UI的自适应

unity打包时UI的自适应

本文摘自 https://blog.csdn.net/qq_15020543/article/details/82595179 感谢博主分享的干货,以此记录一下。同时感谢文中的另两位博主 http://www.cocoachina.com/game/20160602/16570.htmlhttps://blog.csdn.net/st75033562/article/details/52355239
OK,进入正题。
一、了解UGUI的锚点
首先,在搭建UI时就直接考虑好怎么设计,将UI的父级和锚点设置清晰,后面做适应事半功倍。http://www.cocoachina.com/game/20160602/16570.html 这篇文章清晰的解释了锚点和Pivot的关系。
二、设置Canvas的Canvas Scaler
1、Constant Pixel Size:
像素大小始终不变,即一个100100的图片在任何的分辨率下都占用100100的像素。简单比较好理解。Scale Factor是表示缩放倍数。比如是2时,即将上面图片整体是缩放两倍是不变形的。

2、Scale With Screen Size
这种模式应用场景多一点。首先逐个说明下:

1)Reference Resolution是开发时的分辨率。以后缩放就参考它。

2)Screen Match Mode 又包含三种模式

  • Match Width Or Height。下面包含一个Macht属性,当处于最左边时,屏幕高度对于UI大小完全没有任何影 响,只有宽度会对UI大小产生影响。假设宽度为Reference Resolution宽度的x倍,则UI整体缩放为Reference Resolution设置参数的x倍。也就是说只有宽度等于Reference Resolution宽度时,才能做到pixel perfect,否则像素就会有拉伸 ,当处于最右边时,与上述情况正好相反,决定整体缩放值的是高度,而宽度则没有任何影响 ,处于中间某处时,对上述两者的影响进行权重加成 。所以一般我们都把其放在0.5的位置(0.618也很舒服哦)。

  • Expand 缩放不剪切:当屏幕分辨率与设定不同时,选择变化较小的一个方向(横向还是纵向),进行缩放显示
    ,它会保证设计时分辨率能显示出来的缩放后依然能显示出来。

  • Shrink 缩放剪切:当屏幕分辨率与设定不同时,选择变化较大的一个方向(横向还是纵向)进行缩放显示
    ,对于超出的部分剪切不显示。

3、Constant Physical Size
保持物理上不变的方式,这个应用场景较少,具体是这样的,比如你电脑分辨率是 10002000而你的手机分辨率也是10002000。虽然电脑屏幕比手机屏幕大的多,但是他们最后显示出来图片的物理大小是一样的。

一般选用Screen Match Mode模式的Expand,设置好Reference Resolution,打包后UI会按照Reference Resolution进行等比例的放大缩小。
再次感谢以上各位博主。

  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

魔都的放牛娃

如果对你有帮助,已开通打赏服务

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值