不能对非全屏大小的做自适应,那种可以用关联去处理就好了 如:非全屏的:GComponent(包括Window) 只要满足全屏大小的就OK。
(后面有时间再写一个对Window的处理)
另一种方案: 控制Camera.viewPortRect也可以做到一些自适应的功能
Running Figure 1 - Adapt None没有任何适配
适配为:RelationFullScreen的话,会依赖FairyGUI中的‘关联’(Relation)来控制自适应 缺点:当某个分辨率大小超过了FairyGUI内的设计大小是,就会出现一些内容适配显示不完整,等问题,如:背景图,设计为:1024*576的,放在1440*900的分辨率上,如果不进行放大,就布不完整个背景的内容,当然你也可以在FairyGUI中对这个背景图进行关联为:宽->宽,高->高的方式来让背景自动为父节点调整大小
这种配置方式也可以到达:保留比例,让左右、上下留空白的效果 方法: 将需要Register的FairyGUI的Component(组件),放一个底板,将其关联父级别为:左右居中、上下居中,然后所有其他的都关联这个底板的上、下、左、右做关联即可
适配为:ScaleFullScreen的话,会直接将FairyGUI的内容全变形为:当前Screen.width,height的大小来控制缩放 缺点:会让FairyGUI的内容失真 优点:能适用所有分辨率
这个是保持比例,适配宽、高的居中处理
后面可以根据项目情况来添加:AdaptType(适配枚举)
Gif以下这个Gif是比较久的版本内容,还有center的也没有 现在陆陆续续增加了一些功能:
- 添加FguiAdapter全局变量:globalAdaptedType
- 注册配置时,可指定参数:
- 适配类型(默认center)
- 是否使用globalAdaptedType(默认true)
- 名称(默认null,维护用)
以上的图、Gif都是旧的。 改工程中添加了:FguiAdapterEditor。
方便在Inspector中实时看到所有注册适配对象的情况
如下图: