X3D,SVG,WebGL,VRML阅读之间的关系/比较?

时间:2012-02-08 20:38:04

标签: html5 vrml x3d

我想知道每个人之间的关系是什么。如:

  • 这只是另一个的替代品(以及为什么) - 例如X3D取代了VRML?
  • 另一个人不能做什么 - 例如SVG无法创建3D世界,但其他人可以吗?
  • 哪个级别更高 - 例如WebGL比X3D更高级别
  • 哪个/更有可能成为W3标准,因此受到流行浏览器的支持
  • 最简单的方法是创建漂亮的世界/它们支持哪些功能 - 例如X3D支持光线跟踪,其他不支持

我确信之前已经提出过这些问题并且有人写了一篇很好的文章来总结这些信息,以便像我这样想要学习和使用其中一个的人可以做出明智的决定,而不必担心未来的兼容性/迁移问题

是否有任何推荐的阅读材料涉及所有这些和相关技术?

2 个答案:

答案 0 :(得分:8)

  • X3D确实是3D世界的场景图表示,它取代了VRML。我同意上面的第1点。
  • 使用JavaScript库X3DOM,X3D场景成为HTML DOM的一部分,即标准DOM操作和事件处理可用于表示3D场景及其中的所有对象并与之交互。这类似于2D场景的SVG:每个SVG对象都成为DOM对象。
  • WebGL适用于浏览器中的低级3D渲染(如OpenGL)。
  • X3DOM可以使用WebGL直接在浏览器中进行渲染,无需任何插件。
  • 您可以在WebGL上使用X3DOM在浏览器中构建无插件的基于HTML DOM的3D世界,或者您可以使用类似three.js而不是x3dom的东西。 three.js和X3DOM都比WebGL更高。
  • 这些幻灯片提供了一个很好的X3DOM概述,包括简单示例:http://www.slideshare.net/jsalonen/x3dom-an-overview-and-examples
  • X3D确实支持体积渲染(光线投射):http://www.web3d.org/x3d/content/examples/Basic/VolumeRendering/ - 我还没有看过光线追踪的例子。

答案 1 :(得分:7)

1)X3D(~2005)是VRML(~1998)的继承者。两者都是iso标准并由同一组织管理:web3d联盟:web3d.org

2)VRML规范包括动态,交互但单用户3D场景和/或世界的单一文件格式和运行时行为。它定义了大约80个不同的节点(例如3d网格,材质,变换,灯光,视点......),可用于描述内容。 X3D-spec仅建立在VRML之上,并且包含三种文件编码:经典(就像VRML),XML和二进制以及新的新闻和组件包括NURBS,粒子......

3)X3D作为场景图系统,在OpenSG和WebGL中更高

4)有些人认为两者都应该成为W3C规范的一部分:http://www.w3.org/community/declarative3d/

5)通常使用X3D更容易构建和原型,但使用OpenGL / WebGL,您可以(几乎)直接访问GPU,并可以更自由地创建应用程序的任何需求。但也有一些项目可以将两者结合起来:www.x3dom.org