webgl限制帧率_9. WebGL performance considerations

WebGL性能考虑

WebGL可以期望什么样的性能?

这有点难以回答,因为它取决于很多因素。

一般来说,您可以假定您的性能接近于GPU端的本机应用程序,因为WebGL图形API使用您的GPU进行硬件加速渲染 - 将WebGL API调用和着色器转换为操作系统图形只需要一点点开销API(通常是Windows上的DirectX或Mac或Linux上的OpenGL)。

对于CPU端来说,你所有的代码都被翻译成asm.js JavaScript。那么,您可以期待什么样的性能取决于所使用的Web浏览器的JavaScript引擎,目前存在一些非常显着的差异。在撰写本文时(2015年11月),Microsoft Edge和Mozilla Firefox在Unity代码上提供了最佳性能,因为这些目前是唯一使用asm.js规范的浏览器使用JavaScript代码的优化AOT编译路径对于那种情况,与许多编程基准测试的本机代码相比,它的性能提供了小于2倍的放慢速度,这一因素也与我们从部署到WebGL并在Firefox和Edge中运行的不同统一内容中看到的结果相匹配。

不过,还有一些其他的考虑。目前,JavaScript语言不支持多线程,也不支持SIMD。因此,从这些功能中受益的任何代码都会看到其他代码更慢的速度。您不能在脚本中编写WebGL的线程代码或SIMD代码,但某些引擎部分通常是多线程或SIMD优化的,因此会在WebGL上运行较少的代码。一个例子是皮肤代码,它既是多线程的,也是SIMD优化的。您可以在Unity中使用新的时间轴分析器,以了解Unity如何将工作分配给非WebGL平台上的不同线程。从长远来看,我们希望这些功能也可以在WebGL上使用。

影响性能的WebGL特定设置

为获得最

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值