【发布时间】:2015-05-03 05:54:14
【问题描述】:
我正在为 iOS 优化我的游戏,但我在 Unity3D 的质量设置中遇到了一个非常奇怪的问题,让我完全卡住了!
我通过以下方式在游戏中设置了 4 种质量设置:
Edit -> Project Settings -> Quality
四种设置是:简单、良好、美丽、神奇
简而言之,无论我在质量设置面板中设置的选项如何,Simple 的性能总是比 Good 好。
例如,如果我将 Simple 和 Good 设置为所有渲染选项的设置相同,将所有内容都设置为最小(阴影关闭、无抗锯齿、1/8 纹理等),然后在 iPad 上测试游戏,从不同的默认质量选项:
Simple - ~26FPS
Good - ~6FPS
如果我将 Simple 更改为使用 1/4 Textures,并将 Good 保留为 1/8 Textures,它的性能仍然几乎相同:
Simple - ~24FPS
Good - ~6FPS
我可以清楚地看到纹理在 1/4 的简单模式下更好/更详细,但运行速度比使用 1/8 大小纹理的良好模式快近 20FPS。
我可以从附加的 Unity iOS 分析器中看到,在良好模式下运行时,CPU 会承受持续的“开销”负载,这在简单模式下不存在(具有相同的质量设置)。因此,当我从“简单”变为“良好”时,某些事情显然发生了变化,但我似乎无法从质量设置菜单中更改任何内容。
通过阅读unity manual page,我得到的印象是不同的质量设置只是简单的占位符,因为您可以添加/删除选项。但从我的实验来看,当我从简单 Vs 好(或其他)选项开始时,似乎还有其他一些变化。
我尝试过以 Simple/Good 作为默认启动游戏,并手动切换代码(通过 QualitySettings.SetQualityLevel 使用 C#)并获得相同的性能。
我觉得我错过了一些关键,但我似乎无法弄清楚这一点。
【问题讨论】:
-
这是一个很好的问题!不过,您可能在 UnityAnswers 上运气更好。该站点专门用于 Unity,因此您可能会在那里找到更多知识渊博的人。
-
感谢您的建议 - 我实际上已经在 Unity Answers 上发布了这个,但没有得到任何回复!希望 StackOverflow 的人能帮我破解它!