Unity 4.6 - 如何将GUI元素缩放到适合每种分辨率的正确大小

ben*_*IVE 28 user-interface unity-game-engine 2d-games

新的Unity 4.6带有一个新的GUI,当我在Unity上更改分辨率时,UI按钮完美缩放,但是当我在Nexus 7设备上测试时,Button看起来太小了.不知道怎么解决这个问题?

Unity 4.6

Android  -  Nexus 7 2Gen

sch*_*sef 23

Unity的新GUI系统使用"锚点"来控制gui元素(如按钮)相对于其父容器的缩放方式.

Unity有一个关于如何使用新的"Rect Transform"组件(配置锚点的地方)的教程视频:http://unity3d.com/learn/tutorials/modules/beginner/ui/rect-transform.

本教程的后半部分是关于锚点的.该页面包含指向整个教程系列的链接.这不是太长.你应该看完整件事.

特定于您的问题:

在第一次屏幕截图中可以看到锚点.它们是按钮左上角的4个小箭头.

现在,您的按钮仅由其左上角锚定.

需要将两个右锚定向右拖动,以便按钮的右边缘锚定到其父容器内的空间.

根据您的具体情况,可能需要向下拖动两个底部箭头,以便按钮的下边缘也可以固定.

我上面链接的视频详细介绍了所有这些内容.

最后,为了在不同的分辨率上很好地缩放字体大小,您需要在UI的基础画布中添加和配置参考分辨率组件,如前面的Ash-Bash32所述.

更新:添加参考分辨率组件的最佳方法是通过UI中基础画布的检查器窗口.

1)单击检查器底部的"添加组件按钮".

2)在搜索过滤器字段中键入"参考"一词.

3)在搜索结果中选择"参考分辨率"组件.

在Unity中添加参考分辨率组件的步骤

  • 截至4.6 BETA 21,参考分辨率组件已替换为[Canvas Scaler Component](http://docs.unity3d.com/460/Documentation/Manual/script-CanvasScaler.html) (9认同)

gam*_*One 21

参考分辨率现在重命名为Canvas Scaler ..随着重命名,它们为Canvas的动态性添加了更多功能.您可以浏览Canvas ScalerUnity Doc,并查看本文,了解如何以及为何使用Canvas Scaler的实际示例.另外,请确保使用锚点效果良好,使其更加强大......


Ash*_*h32 10

要缩放UI,将ReferenceResolution Component添加到要缩放的Canvas中. 在此输入图像描述

PS Theres没有关于ReferenceResolution的文件