随着WebGL 3D图形进入浏览器,是否存在根本性的限制,或者它是否可以像;真正的交易;?

随着WebGL 3D图形进入浏览器,是否存在根本性的限制,或者它是否可以像;真正的交易;?,web,opengl-es,webgl,Web,Opengl Es,Webgl,据我所知,WebGL目前只是OpenGL的一个子集,性能也不太好。只是出于兴趣,它在浏览器堆栈中的运行速度必然会变慢,还是理论上所有的功能都可以在未来传递?好吧,WebGL在几年前就已经出现在浏览器上了,现在这项技术有些成熟:它足够稳定,周围有图书馆和服务的社区和生态系统 与本机API(如OpenGL、OpenGL ES和D3D)相比,它有一些限制以及性能。大多数情况下,它们是为了使WebGL比它的本地同类产品更安全。例如,对于每个draw调用,都要进行一些验证,以确保程序员没有做令人讨厌的事情

据我所知,WebGL目前只是OpenGL的一个子集,性能也不太好。只是出于兴趣,它在浏览器堆栈中的运行速度必然会变慢,还是理论上所有的功能都可以在未来传递?

好吧,WebGL在几年前就已经出现在浏览器上了,现在这项技术有些成熟:它足够稳定,周围有图书馆和服务的社区和生态系统

与本机API(如OpenGL、OpenGL ES和D3D)相比,它有一些限制以及性能。大多数情况下,它们是为了使WebGL比它的本地同类产品更安全。例如,对于每个draw调用,都要进行一些验证,以确保程序员没有做令人讨厌的事情(比如访问超出边界的缓冲区或尝试读取未初始化的内存)


由于WebGL实现现在所做的所有检查对于为Web平台提供足够的安全级别是绝对必要的,因此我们必须遵守这些检查,至少对于WebGL和WebGL 2是如此。然而,也许一些“WebGL下一步”标准会找到一种巧妙的方法来解决这个问题。这些检查通常由浏览器开发人员优化。

谢谢。我礼貌地提醒你,“当然”这一部分对每个人来说都不像对你那么明显;)事实上,我对此一无所知,因此我的问题也是如此;)因此,您基本上是说WebGL比OpenGL慢,因为web平台上需要安全措施。这是你意识到的唯一减速吗?你对所有主要减速有多大信心?再次感谢!只是想对它有个更好的了解。是的,还有一件事。WebGL基于OpenGL ES,它与桌面OpenGL不完全兼容。因此,在台式机上,WebGL调用被转换成OpenGL,对于Windows,甚至被转换成D3D调用(via)。这就增加了额外的开销。关于WebGL实现在中的工作方式有很好的描述。还有很多关于WebGL性能的精彩演讲,例如,感谢您的见解@用户777 AFAIK,主要原因是兼容性。具有GL ES 2.0-ish功能的设备阵列非常庞大,而现代OpenGL(粗略地说,不那么现代的设备与ES2非常相似)。因此,在包括移动设备在内的各种平台上实现WebGL是可能的。现在,当GL ES 3.0更接近这一目标时,WebGL 2(基于GL ES 3.0)将进入Web平台。此外,桌面OpenGL中有相当数量的遗留人员,如果您删除所有这些人员,您将得到与GL ES 2.0非常相似的东西(GL ES实际上是根据IIRC这一座右铭创建的)。