Javascript 各种设备上的WebGL性能

Javascript 各种设备上的WebGL性能,javascript,performance,webgl,Javascript,Performance,Webgl,在现有设备上,我可以从WebGL获得什么样的性能?这是一个有点悬而未决的问题,因为我会尽我所能,即使是模糊的,但在理想的世界中,我想知道什么样的FPS(或典型的帧持续时间,这是衡量性能的一种更好的方法)可以使用: 100、1000或10000个顶点,具有简单的每片段恒定颜色和移动摄影机 与从顶点插值的着色相同(例如Gouraud)(类似于上面的?) 与在片段上计算的着色相同(例如,在片段着色器中计算的Blinn Phong)(明显较慢?) 所有这些都添加了2d纹理 最后,从Javascrip

在现有设备上,我可以从WebGL获得什么样的性能?这是一个有点悬而未决的问题,因为我会尽我所能,即使是模糊的,但在理想的世界中,我想知道什么样的FPS(或典型的帧持续时间,这是衡量性能的一种更好的方法)可以使用:

  • 100、1000或10000个顶点,具有简单的每片段恒定颜色和移动摄影机
  • 与从顶点插值的着色相同(例如Gouraud)(类似于上面的?)
  • 与在片段上计算的着色相同(例如,在片段着色器中计算的Blinn Phong)(明显较慢?)
  • 所有这些都添加了2d纹理
最后,从Javascript驱动一切的限制有多严重(比如说,如果你想实现一个简单的游戏)?事实证明,在实践中,问题不在于“背景”,而在于能否足够快地更新状态,以便在前台做任何有趣的事情?

我最近在各种设备上测试了我的Quake 3演示。结果略好于预期,但并不壮观:

  • 在Opera 12上,摩托罗拉Atrix 2(我想)的速度达到了25帧/秒
  • 在带有Galaxy选项卡的Opera 12上,我通常可以看到~10 FPS(屏幕更大/渲染速度较慢)
  • 已经有一段时间没试过Firefox了,但上次我看的时候,结果稍微差了一点
  • 我有一段视频,它在iPad2上运行,带有修改版Safari@~30FPS
好了。数据有限,但数据仍然有限。值得指出的是,这是一个相当复杂的演示,所以我对这些数字并不感到失望。我还以1/2的屏幕大小渲染场景,并将其放大,以帮助提高移动设备的性能


因此,我最初的想法是,它可以正常工作,并且对于基本用途(加速2D?)来说可能会很好,但Infinity Blade and co.将在一段时间内保持原生状态。

太棒了,谢谢。通常有多少碎片/顶点(几百?)?你在做什么样的着色(只是纹理上的古劳德?)?好的,我看了代码,它是光照贴图+纹理。忘记了lightmaps。为了补充您的列表,您的第三季度webgl演示版在iphone 4上经过修改的safari中以大约40fps的速度运行