【问题标题】:How to make a game responsive for all mobile resolutions如何让游戏响应所有移动分辨率
【发布时间】:2019-06-25 23:34:15
【问题描述】:

我正在使用 c# 统一制作一个简单的游戏,但它对所有移动屏幕分辨率都没有响应。我该怎么做才能使其对所有移动分辨率做出响应。尽管对于画布我使用了画布标量组件,但对于不在画布中的背景图像,我可以做什么,如何使其覆盖整个屏幕。

【问题讨论】:

    标签: unity3d unity5


    【解决方案1】:

    Canvas 应该附加一个 CanvasScaler 组件,如果您是从菜单创建的,或者它是通过向场景添加另一个 UI 元素自动创建的。如果没有,只需添加组件即可。

    然后,选择您希望支持的最低分辨率,然后为它构建您的 UI。提醒:如果您想使用百分比,请使用锚点和枢轴,而不是像素大小。如果您想要在组件之间进行划分和/或固定纵横比,请使用Horizontal LayoutVertical LayoutLayout ElementAspect Ratio Fitter 和不可见的Container 面板的组合。

    在你的UI结构完成后,你可以调整CanvasScaler的属性来达到你想要的效果。您可能需要Scale With Screen Size(使用您的参考分辨率)、Match Width Or Height 和完整的0(宽度匹配)、0.5(W 和 H 均等匹配)或完整的 1(匹配按高度),因为这适用于大多数游戏,但这取决于您的目标方向(纵向或横向)和您的游戏。

    【讨论】:

      【解决方案2】:

      您也可以使用锚点,正如它所说: Basic LayoutDesigning UI for Multiple Resolutions

      【讨论】:

        【解决方案3】:

        Screen.width 和 Screen.height 是您唯一需要的统一特定方法。

        根据您的屏幕尺寸将高度、宽度和位置信息传递给您的对象。 学习gui的困难部分。 试试看并通知我们,以便我得到确认

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-03-22
          • 2014-05-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-11-20
          • 2014-01-24
          • 1970-01-01
          相关资源
          最近更新 更多