Unity UI:如何将一张图片拉伸至全屏显示

4
我有一张图像(游戏策略地图)嵌套在一个Canvas元素中,我想让它拉伸到整个显示屏幕的宽度或长度上(不同的设备可能具有不同的大小或纵横比),以便保持图片的比例并同时显示整张图像。

无论我设置什么,图像都太小或太大而无法适应屏幕。

如果我理解正确,两组设置很重要:(1)图像的位置、枢轴、锚点、最小和最大的x和y。 (2)父级canvas缩放器UI缩放模式(我可能需要“与屏幕尺寸一起缩放”),其x和y滑动比例。

我是否忽略了什么?因为没有任何组合对我有效。

次要问题:我需要将其播放到最大化模式才能进行测试吗?还是即使在非最大化模式下也应该可以工作?

1个回答

6
以下是从零开始实现所需步骤:
  1. 将游戏视图的分辨率设置为您开发的主要分辨率以简化操作,我们将使用1920x1080。
  2. 在场景中添加一个画布。
  3. 配置画布设置:
    • 渲染模式:屏幕空间叠加
    • UI 缩放模式:随屏幕大小缩放
    • 屏幕匹配模式:扩展
    • 参考分辨率:1920x1080(与游戏视图相同)。
  4. 将一张图片作为画布的子节点,并将所需的精灵添加到该图像上。
  5. 将该图像拖动到您希望它出现的位置并将其锚定到中心位置。

此时,您应该能够在游戏视图中切换到其他分辨率(例如iPad的2048x1536或Note 8的2960x1440),而图像应保持其纵横比进行拉伸。根据您想要实现的确切效果,您可能需要调整屏幕匹配模式。

注意:在事后更改画布参考分辨率可能需要重新配置或缩放您的UI。


1
真的有效!谢谢!我忽略了画布的“展开”选项。 Draco18s:它确实可以使用第5步。没有它,图像就不居中,看起来很丑。 - Coatl

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接