unity 3D中实现canvas自适应问题
canvas自适应问题的出现:
在进行unity中UGUI界面设置时,往往会利用各类组件,控件。
当分辨率变换时,相应的如何让各类组件,控件实现大小,位置,状态的自适应成为需要解决的问题
问题解决方法1:
首先明确一点:如果在UGUI界面中未出现3D模型时,三种canvas渲染模式均可以进行canvas自适应。
若出现3D模型时,尽量使用Screen Space-Camera和World Space渲染模式。
三种模式分别为:
Screen Space-Overlay(系统默认,此类UI界面不需要摄像机);
Screen Space-Camera(需要引入主摄像机);
World Space(canvas参数可进行修改,可旋转,可进行移动);
下图为设置的简易UGUI界面(未进行canvas自适应):
界面中含有整体背景(image)、四个按钮控件(button)、以及一个panel控件,当未进行canvas自适应时,情况如下图所示:
可以看到界面布置,尤其是panel控件最为明显。
解决的办法是:
1、首先将工具栏中点击为如下图标,方便后续操作
2、点击具体控件,找到位于中心位置的锚点,将中心锚点移动至所在组件的四个角,具体操作如下所示:
3、所有的组件按照上述进行操作(适合组件较少的情况)
无论分辨率如何切换,都可以实现canvas自适应,即铺满整个屏幕(保证位置和设计原图不变)
对上述方法进行总结:手动拖锚点到控件四周。
第一次写博客,有什么不足希望大家多多提意见,自己也在不断的学习当中,愿岁月静好,我们一起前行~~