2

我制作了 Unity3D 游戏。背景纹理为 2048x2048 以适应 iPad Retina 分辨率。但对于分辨率低得多的旧手机来说,这太过分了。我调整了所有纹理的大小并创建了第二个文件夹,其中包含两次降级的纹理。

根据分辨率选择纹理文件夹的正确方法是什么。

Unity3D 的本质是它的 GUI 工具,如果我通常在属性检查器中设置纹理,那么在代码中手动设置所有内容不是 Unity 的方式。

另外我不确定我是否会更改代码中的纹理,然后它不会同时加载新旧纹理。

另一个想法是为不同的分辨率使用不同的场景。但是如果我想改变一些东西,它会加倍工作,并且测试应用程序会加倍工作。

必须有一些解决方案来处理多个分辨率。但我找不到任何简单的东西,只会在启动时选择带有纹理的文件夹。

4

1 回答 1

1

使用纹理质量的内置设置。在编辑器中查看编辑->项目设置->质量。您可以在检查器中定义纹理分辨率。在您的项目中,在您的第一个场景之前添加一个小场景并首先加载它。在这里计算并设置质量级别并开始下一个场景:

if (hardware-is-lame)
  QualitySettings.DecreaseQualityLevel();
Application.LoadLevel(...)

诀窍是只加载纹理大小减小的版本,您可以看到应用程序使用的内存比正常情况下少。唯一的缺点是它减少了所有纹理大小,有时我想将字体纹理图集保持在高分辨率。

于 2015-08-17T13:17:06.447 回答