c# - Webgl 构建 fps 随着时间的推移而降低(Chrome)?
问题描述
我们正在努力优化我们的 webgl 构建(旨在在 chromebook 上运行,chrome 最新版本)。目前我们在整个游戏中已经达到了大约 40 fps,这非常接近我们的要求。
问题是如果游戏保持“开启”一段时间(例如 30-45 分钟),fps 会从最初的 40 fps 逐渐下降到大约 20 fps,然后如果游戏保持开启,则以同样的方式继续下降.
我们可以说这不是因为 gpu,因为在我们所有的场景中,draw call 大约是 100-150 并且它们保持不变。此外,我们对 gpu 进行了优化(静态/动态批处理、gpu 实例化、禁用阴影、纹理压缩等)。
目前我们无法分析实际构建(因为开发构建大约 2gb,无法在任何浏览器中加载),因此我们正在分析编辑器。
深入分析 CPU 脚本并没有发现任何明显的可能在 45 分钟内逐渐消耗 fps 的东西。
有没有其他人在他们的 WebGl 构建中遇到过这个问题?对于优化和保持一致的 fps 有什么建议吗?
谢谢。
解决方案
Unity 的音频源导致 Webgl 构建中的 fps 下降。我们用这个资产替换了它, fps 下降消失了。
推荐阅读
- python - 如何使用 python/beautifulsoup 向 degiro.nl 提交登录信息?
- r - 带条件的数字序列(续)。data.table 解决方案?
- python - 仅将装饰器应用于类属性
- c# - 在尊重控制反转的同时在 .NET Core 中使用依赖注入
- spring - spring-boot-starter-data-elasticsearch 导致未知设置 analyzer/search_analyzer 和 index.settings.analysis.analyzer.autocomplete
- heroku - 拒绝从 <> 应用样式,因为它的 MIME 类型 ('text/html') 不是受支持的样式表 MIME 类型,并且启用了严格的 MIME 检查
- python - “int”对象在附加索引时没有属性“append”
- google-apps-script - copyValuesToRange 不复制值,但 copyFormatToRange 工作正常
- c - do while 循环中的分段错误(核心转储)
- api - XML 语法错误:请检查 XML 请求以查看是否可以解析 USPS Tracking API