Unity Canvas设置

Canvas是UI的根对象,所有UI元素必须放在Canvas下面。渲染模式一般选择Screen Space-Camera,使用UI相机来渲染UI,这样做的好处是可以在UI中显示模型或粒子,一般如下设置。

Canvas Scaller 脚本控制屏幕适配,手机上选择Scall With Screen Size 跟随屏幕大小来缩放UI。

参考分辨率一般填写 1920*1080,这个要看游戏目标用户手机类型,如果需要适配较老的机型,可以适当调低。

屏幕匹配模式 Expand,当屏幕宽度变化后通过缩放高度来自适应。

在Hierarchy中创建的Panel 默认是全屏拉伸的,如果Panel中的ui元素需要左对齐等需要,直接在ui元素的Rect Transform中设置即可。

背景图适配有两种方式,一种是和Panel方式一样在Rect Transform中设置全屏拉伸,这样会变形。还有一种是背景图不被拉伸,但是要裁剪。

裁剪需要给图片添加AspectRatioFitter脚本,如下设置会保持图片不被拉伸,但会被裁剪。

UI优化的一些建议

UGUI会自动合并Canvas下的所有元素到一个Mesh里,任意元素的位置、大小的改变都会触发重新合并批次。所以显然Canvas中元素过多是不合适的。通常会吧每个界面做成一个Canvas,把经常变化的元素放在一个Canvas中,这样当界面元素变化时只会在自身的Canvas中合并批次。这样做的一个副作用是DrawCall的上升,因为每个Canvas都会占用一个DrawCall,所以制作时要权衡选择。

 

 

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值