c# – Unity 3D质量设置之间隐藏的差异?

栏目: 后端 · 发布时间: 5年前

内容简介:翻译自:https://stackoverflow.com/questions/28817264/hidden-difference-between-unity-3d-quality-settings

我正在努力优化我的iOS游戏,而且我遇到了一个非常奇怪的问题,Unity3D中的质量设置让我完全陷入困境!

我在游戏中通过以下方式设置了4个质量设置:

Edit -> Project Settings -> Quality

四个设置是:简单,好,美丽,神奇

简短的版本是,无论我在质量设置面板中设置的选项如何,Simple总是比Good更好.

例如,如果我将Simple和Good设置为对所有渲染选项具有相同的设置,将所有设置设置为最小(阴影关闭,无抗锯齿,1/8纹理等),并在iPad上测试游戏,从不同的默认质量选项开始:

Simple - ~26FPS
Good - ~6FPS

如果我改变简单以使用1/4纹理,并保留1/8纹理的良好,它仍然执行几乎相同:

Simple - ~24FPS
Good - ~6FPS

我可以清楚地看到纹理在1/4的简单模式下更好/更详细,但是比使用1/8大小纹理的Good模式运行快近20FPS.

我可以通过附加Unity iOS分析器看到,当在Good模式下运行时,CPU会受到“开销”的持续负载,这在简单模式下不存在(具有相同的质量设置).因此,当我从简单到好时,某些东西显然正在发生变化,但它似乎不是我可以从质量设置菜单中更改的任何内容.

从阅读 unity manual page 我得到的印象是,不同的质量设置只是占位符,因为您可以添加/删除选项.但是从我的实验中看,当我开始使用Simple Vs Good(或其他)选项时,还有其他一些变化.

我尝试在Simple / Good中默认启动游戏,并手动切换代码(通过 QualitySettings.SetQualityLevel 使用C#)并获得相同的性能.

我觉得我错过了一些关键的东西,但我似乎无法想出这个.

当您使用质量级别中存在的功能并需要一些额外的计算时,质量级别可能会产生差异.但是当你不使用这些功能时,质量水平之间没有区别.

如果你想提高你的FPS,有一些提示

>制作纹理图集以减少绘制调用

>改进Update函数使用的Update函数和缓存转换中的计算.

>不要在每个帧中搜索组件,在某些情况下,您可以使用单例模式

>不要破坏每一帧中的物体.制作对象池.

>改善颗粒排放,尽可能减少排放

>改进着色器.如果您使用移动使用移动着色器.例如,将漫反射着色器更改为Mobile / Diffuse.

翻译自:https://stackoverflow.com/questions/28817264/hidden-difference-between-unity-3d-quality-settings


以上所述就是小编给大家介绍的《c# – Unity 3D质量设置之间隐藏的差异?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

计算机动画的算法基础

计算机动画的算法基础

鲍虎军 金小刚 彭群生 / 浙江大学出版社 / 2000-12 / 60.00元

《计算机应用技术前沿丛书:计算机动画的算法基础》主要内容简介:20世纪是一个科技、经济空前发展的时代,从世纪初相对论、量子理论的创立到今天以信息产业为龙头的高科技产业成为经济发展的第一支柱,人类社会发生了根本性的变革。而在这场以科学技术为社会发展直接动因的变革中,意义最深远、影响最广泛的就是计算机及其相关技术的发展和应用。在过去的50年里,计算机已从最初的协助人类进行精密和复杂运算的单一功能的运算......一起来看看 《计算机动画的算法基础》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

MD5 加密
MD5 加密

MD5 加密工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器