Difference between revisions of "X3D and HTML5 Summary"
From Web3D.org
m |
m (links for WebGL and O3D) |
||
Line 24: | Line 24: | ||
* Relationships between scene graphs, APIs and render layers; | * Relationships between scene graphs, APIs and render layers; | ||
** Scene graphs are high-level declarative models about how geometry is constructed, colored and animated; these can be expressed as an XML tree | ** Scene graphs are high-level declarative models about how geometry is constructed, colored and animated; these can be expressed as an XML tree | ||
− | ** APIs are mid-level libraries for programmers to create imperative source code about geometry and animation (various proprietary codebases | + | ** APIs are mid-level libraries for programmers to create imperative source code about geometry and animation (various proprietary codebases, perhaps [http://en.wikipedia.org/wiki/WebGL WebGL] or [http://code.google.com/apis/o3d O3D]) |
** Render layers are low-level software libraries that expose the functionality of graphics hardware (e.g. OpenGL, DirectX) | ** Render layers are low-level software libraries that expose the functionality of graphics hardware (e.g. OpenGL, DirectX) | ||
** Numerous other 3D technologies exist at each of the other layers | ** Numerous other 3D technologies exist at each of the other layers | ||
Line 55: | Line 55: | ||
* Recommendation actions for HTML5 Recommendation | * Recommendation actions for HTML5 Recommendation | ||
− | ** Ensure proper X3D references in HTML5 specifications | + | ** Ensure proper X3D references in HTML5 specifications - what happened? |
− | ** Document correct integration and best practices | + | ** Document correct integration and best practices for X3D and HTML5 |
− | ** What about XHTML? | + | ** Other questions we have: |
− | ** | + | *** What about XHTML? |
+ | *** Any other recommendations or work issues? |
Revision as of 16:24, 13 October 2009
Status: these are draft slides for the X3D and HTML5 effort that will be provided to the Technical Plenary Week (TPAC) 2009.
- Family of X3D Specifications;
- X3D Abstract Specification describes basic functionality
- Three file formats are available: XML (.x3d), ClassicVRML (x3dv), and Compressed Binary Encoding (.x3db)
- High-performance Application Programming Interfaces (APIs) are defined for Ecmascript (Javascript) and Java
- X3D Strengths
- Non-profit Web3D Consortium maintains and extends X3D via working groups
- Set of International Standards certified over 12-year period by multiple national bodies in ISO
- Multiple implementations are available (open and commercial source)
- Numerous resources available online, including specifications themselves
- Third-generation 3D graphics language that extends predecessor Virtual Reality Modeling Language (VRML97)
- Long-time W3C member and contributor
- Formal liaisons and working partnerships with other key organizations
- Relationships between scene graphs, APIs and render layers;
- Scene graphs are high-level declarative models about how geometry is constructed, colored and animated; these can be expressed as an XML tree
- APIs are mid-level libraries for programmers to create imperative source code about geometry and animation (various proprietary codebases, perhaps WebGL or O3D)
- Render layers are low-level software libraries that expose the functionality of graphics hardware (e.g. OpenGL, DirectX)
- Numerous other 3D technologies exist at each of the other layers
- The X3D Specifications include both declarative models and strongly typed APIs
- Similarities between MathML, SVG, and X3D;
- MathML describes mathematical expressions and then renders a presentation of them
- Scalable Vector Graphics (SVG) describes and presents renderings of 2D shapes, with optional animation and interaction
- Extensible 3D (X3D) describes and presents renderings of 3D shapes, with optional animation and interaction
- All three languages are formally specified and have well-developed XML encodings
- Authors want to use these languages for multimedia content in HTML pages
- X3D scene graph APIs
- X3D Scene Access Interface (SAI) provides a consistent standardized high-performance API
- X3D SAI has Ecmascript and Java bindings, other programming languages can be added
- X3D SAI is functionally equivalent and has same expressive power as file formats
- Document Object Model (DOM) is also legal (X3D is XML after all) but infrequently used because of low performance
- Simple X3D and HTML5 examples
- X3D scene as external reference (Anchor link)
- X3D embedded in object tag
- HTML5 with embedded X3D as mixed-namespace document
- Forthcoming InstantReality X3DOM javascript demo: html5+x3d with event passing connections
- (Can we structure our non-scripted examples to correspond to MathML and SVG examples?)
- (We likely need multiple examples corresponding to DOM/SAI approaches)
- Recommendation actions for HTML5 Recommendation
- Ensure proper X3D references in HTML5 specifications - what happened?
- Document correct integration and best practices for X3D and HTML5
- Other questions we have:
- What about XHTML?
- Any other recommendations or work issues?