【问题标题】:Responsive UI (scale and repos elements)响应式 UI(缩放和 repos 元素)
【发布时间】:2018-08-18 23:41:59
【问题描述】:

我正在尝试为我的游戏设计一个响应式 UI。 我希望当屏幕分辨率低于某个阈值时缩放 UI 元素,否则重新定位。

让我们看一个例子。 我假设 1600 x 900 的分辨率是 UI 元素必须按比例缩小以保持其纵横比的分辨率。 在下图中,您可以看到红色和绿色面板在不同分辨率下应采用的尺寸(前者为 1600 x 900,后者为 1280 x 720)。

相反,当屏幕分辨率大于 1600 x 900 时,面板应该简单地重新放置,而不是缩放。 您可以在下图中看到分辨率为 1920 x 1080 的示例。

我已经能够实现这两种逻辑,但不能同时实现。 我关注了 this article 的 repos 逻辑(关键是面板的最大尺寸)和 Unity UI 系统教程的缩放逻辑。

【问题讨论】:

    标签: user-interface unity3d responsive


    【解决方案1】:

    您可以拥有 2 套预制件,每个版本各一套,然后根据需要根据分辨率交换它们。

    这可以通过始终在屏幕上显示两个画布但只显示一个在当前屏幕分辨率下应该处于活动状态的画布来实现。

    【讨论】:

    • 我想避免使用双预制件解决方案,因为这意味着我必须在两个预制件上复制 UI 状态(例如,哪个是焦点按钮)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-18
    • 1970-01-01
    • 2012-05-30
    • 1970-01-01
    • 2023-03-24
    • 2013-07-08
    • 1970-01-01
    相关资源
    最近更新 更多