我应该学习哪个适用于浏览器的图形接口?

4
我应该学习哪个浏览器的3D图形API?我听说Firefox 4有WebGL,Chrome有O3D,而Shockwave已经存在了十年,适用于所有浏览器。可能还有其他的,但我不确定。似乎每个现代浏览器都想要自己的多媒体实现——HTML5视频有不同的编解码器,CSS3有不同的语法等等......这非常令人困惑,就像Internet Explorer一样分歧重重。我至少想了解一下3D图形方面的知识。理想情况下,我选择的API不应需要插件,使用硬件加速,并且将被尽可能多的未来浏览器支持。

据我所知,Flash不允许“真正”的3D。 - shoosh
3个回答

3

个人建议使用WebGL - 它是基于HTML5 2D <canvas>元素的技术,而O3D实际上是在WebGL之上构建的。

它已经内置于Chrome 9+中,并且将出现在Firefox 4中(它已经在beta版本中出现了)。


我上次查看时,需要为o3d下载插件。这是否仍然是正确的? - JoJo

3
我建议使用WebGL,因为它自二月份起就是Khronos Group的标准。Firefox已经支持了近一年(但仍处于版本4 beta/rc中)。Google Chrome在当前版本中已经支持。Opera刚刚实现了它(我认为还没有完全实现)。 http://my.opera.com/core/blog/2011/02/28/webgl-and-hardware-acceleration-2 正如yojimbo87所说,微软不是Khronos Group的一部分,因为微软支持与OpenGL竞争的DirectX。
至于O3D,谷歌将其用作插件API,但在主网页上,您可以看到它现已被弃用。 http://code.google.com/intl/fr/apis/o3d/ 对于在Web上进行3D的其他方法,您可以使用类似VRML/X3D的东西,Flash也有一些严肃的东西,但是,下面是发生在WebGL上的好事: Firefox为即将推出的手机版实现了WebGL。 我认为Chrome和Safari也不会太久就会做同样的事情。
如果您还没有被说服,那么WebGL是硬件加速的,您可以在其中使用着色器。有很多API/工具正在推出。关于WebGL学习和获取一些新闻的一个好网站是: http://learningwebgl.com/blog/ 玩得开心。

2
我会选择WebGL。虽然它可能还没有成为主流(对于“重度”基于浏览器的3D内容),但它得到了大公司(如苹果,谷歌,Mozilla和Opera)的支持,并且看起来非常有前途。WebGL已经稳定到版本1.0。

微软不支持它? - JoJo
微软不是负责WebGL开发的Khronos Group的一部分。我认为当WebGL变得更加流行时,它们可能会在某种程度上被间接迫使参与其中。 - yojimbo87

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接