Difference between revisions of "X3D version 3.4 Development"

From Web3D.org
Jump to: navigation, search
m (Update in progress!)
m
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__TOC__
+
== X3D version 3.4 is now merged with X3D version 4.0 ==
== Update in progress! ==
+
  
The Web3D Consortium has decided to merge all X3D version 3.4 efforts into X3D version 4.0.  Stay tuned for continued reorganization of the still-valid activities listed here.
+
The Web3D Consortium has decided to merge all X3D version 3.4 efforts into  
 +
[http://www.web3d.org/wiki/index.php/X3D_version_4.0_Development X3D version 4.0 Development Efforts].
  
== Strategic overview ==
+
All participation is welcome.  Stay tuned for continued reorganization of the still-valid activities listed there.
 
+
[[X3D version 3.4 Development]] efforts are evolutionary improvements to the widely proven X3D Graphics architecture.
+
 
+
Web3D Consortium working groups currently define specification goals and requirements. Working group efforts are often the focus for defining and testing new X3D components.
+
 
+
We publicly review these goals annually during [http://www.web3d2015.org Web3D Conference] and [http://s2014.siggraph.org/attendees/birds-feather SIGGRAPH BOF] meetings.
+
 
+
Suggestions, development and discussion via the [http://web3d.org/mailman/listinfo/x3d-public_web3d.org x3d-public mailing list] is ongoing.
+
X3D version 3.4 progress also informs and helps to extend [[X3D version 4.0 Development]].
+
 
+
The following list shows that a lot of interesting capabilities have been proposed and are under way for X3D version 3.4. However, topics on this list are not guaranteed to be completed! Rather these are all works in progress.
+
 
+
Activity and approval proceeds based on technical contributions and Web3D Consortium Member priorities. Please consider [http://web3d.org/membership/join joining Web3D Consortium] to help advance 3D graphics on the Web.
+
 
+
== Legacy Issues ==
+
 
+
We plan to confirm the existence of complete capabilities for X3D v3.3 prior to final approval of X3D v3.4.
+
 
+
* Full support for all existing X3D v3.3 components:
+
** At least two compatible implementations (including at least one in open source) plus repeatable examples
+
** Layer, ParticleSystems, RigidBodyPhysics, Shaders, TODO others
+
** TransformSensor node: [http://doc.instantreality.org/documentation/nodetype/TransformSensor/ IGD] and [http://www.parallelgraphics.com/developer/products/cortona/extensions/transformsensor/ old Cortona]
+
 
+
* Is it necessary for Layout component to be deprecated or improved?
+
 
+
== Candidate capabilities ==
+
 
+
Each of the following possibilities for X3D 3.4 have been discussed by the various X3D working groups during meetings and on mailing lists.
+
Each potential capability is considered to be a feasible (and in most cases, straightforward) addition to the existing X3D version 3.3 architecture.
+
 
+
*'''Appearance'''
+
**'''Images''':  recommended formats for imagery and video (.gif .bmp .svg .flv .exr .hdr etc.).  Consider [http://en.wikipedia.org/wiki/QR_code QR codes] as a first-class image type since it contains imagery and information, especially useful in Mixed Augmented Reality (MAR) applications
+
**'''Materials''': advanced parameters
+
**[[X3D Multitexture | Multitexture]]: review for correctness, completeness and conformance of rendering example scenes
+
**'''Rendering''': bump maps, [http://doc.instantreality.org/tutorial/dynamic-shadows/ shadows], edge smoothing
+
**[http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/components/shaders.html Shaders]: improved support and better interoperability, library of examples; [http://doc.instantreality.org/documentation/nodetype/CommonSurfaceShader/ CommonSurfaceShader?]
+
**'''Texturing''': [http://en.wikipedia.org/wiki/Texture_atlas Texture atlas], [http://en.wikipedia.org/wiki/Projective_texture_mapping projective texture mapping (PTM)], [http://www.xj3d.org/extensions/render_texture.html RenderedTexture node] (for multipass rendering - 2d texture version of GeneratedCubeMapTexture, first proposed by Xj3D and also impl. in X3DOM and InstantReality, useful for all kinds of NPR, shadows, mirrors, etc.).
+
*'''Events'''
+
** Review X3D event interoperability with other event models, such as Document Object Model (DOM) Recommendations
+
*'''Audio and video''': adding royalty-free formats, streamability, [http://web3d.org/pipermail/x3d-public_web3d.org/2013-December/002681.html disabling attenuation], 3D aural spatialization using reflection from simple geometry (such as [http://gamma.cs.unc.edu/Sound/RESound RESOUND] or [https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html Web Audio API])
+
*'''[http://www.web3d.org/realtime-3d/working-groups/computer-aided-design-cad Computer Aided Design (CAD)]''' Interactive/Mobile Profile, to include:
+
**[http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/CADInterchange.html CADInterchange profile] plus FillProperties/LineProperties, primitive/Geometry2D nodes, Extrusion, NURBS, ClipPlane
+
**Part selection/animation, 3D printing, [http://www.web3d.org/realtime-3d/news/3d-graphics-compress-call-contributions Compressed Binary Encoding (CBE)], possibly [http://svn.xj3d.org/xj3d_website/trunk/extensions/annotation.html annotations component]
+
** Building Information Models (BIM), Architecture Engineering Construction (AEC), Physical Sensors
+
*'''[http://www.ecma-international.org/publications/standards/Ecma-262.htm ECMAScript]''' (Javascript) specification revision compatibility with [http://www.web3d.org/files/specifications/19777-1/V3.0/index.html X3D scripting]; possibly add C# or Python support
+
*'''Generalized input/output interface support'''
+
**Possibly [http://www.cs.unc.edu/Research/vrpn/index.html Virtual Reality Peripheral Network (VRPN)], gesture recognition (such as [http://en.wikipedia.org/wiki/Kinect KINECT], [https://www.leapmotion.com LEAP]), etc.
+
** Support for arbitrary sensors and user interaction devices
+
* '''Geometry''': point size (or perspective rendering), progressive meshes (suitable for both compression and streaming), 3D ExtrudedText, support for [https://en.wikipedia.org/wiki/Web_typography Web typography] using [http://www.w3.org/TR/WOFF Web Open Fonts Format (WOFF)]
+
*'''[http://www.web3d.org/realtime-3d/working-groups/x3d-earth Geospatial X3D]''' component: [http://www.igraphics.com/Standards/EnhancedGeospatialComponent_2007_10_30/Part01/X3D.html Enhanced Geospatial Component - spatial reference frame (SRF)] and [http://www.opengeospatial.org/standards/kml KML] support, [http://www.opengeospatial.org/projects/initiatives/3dpie OGC 3D Portrayal], [http://web3d.org/pipermail/x3d-public_web3d.org/2010-December/001187.html GpsSensor], [http://openlayers.org OpenLayer] mashups
+
*'''[http://www.web3d.org/realtime-3d/working-groups/h-anim Humanoid Animation (H-Anim)]''' anatomical correctness for skeleton and skinning, motion capture and playback, interchangeable avatars, animation for hands feet and faces
+
* '''Interoperability''': include ''class'' attribute for all nodes to all encodings
+
* '''[http://www.json.org JSON]''': JavaScript Object Notation as an X3D encoding ([http://web3d.org/pipermail/x3d-public_web3d.org/2014-July/thread.html#2854 assessment thread]), relation to [https://www.khronos.org/gltf GlTF], streaming considerations
+
*'''[http://www.web3d.org/realtime-3d/working-groups/medx3d Medical working group]''' capabilities
+
** [http://svn.xj3d.org/xj3d_website/trunk/extensions/annotation.html Annotations component] and metadata usage
+
** Archival 3D medical records, potential emphasis on [http://en.wikipedia.org/wiki/Traumatic_brain_injury Traumatic brain injury (TBI)] volume visualization
+
** Haptics component for force feedback
+
** Soft-body physics component to complement rigid-body physics component
+
* '''Mobile Profile.''' TODO - needed? Calling out a reduced palette for mobile devices remains interesting, but might instead become a goal for X3D version 4.0 efforts.
+
* '''[http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Nodereference Metadata]''': support for embedding information useful for applications utilizing X3D
+
** Enumerated types: better access, typing, naming, and validation than using MetadataSet/MetadataString combinations
+
* '''Mixed and Augmented Reality (MAR)''': integration of multiple capabilities with mobile devices
+
*'''Networking''': consider [http://www.web3d.org/x3d/content/examples/Basic/Networking NetworkSensor] and event-passing issues, streaming using [http://www.json.org JSON], server-side 3D topics
+
*'''Security and privacy''':
+
** [http://www.w3.org/standards/xml/security XML Security] provides best-available encryption, digital signature (authentication)
+
** [http://www.w3.org/standards/webdesign/privacy Web Privacy]: examine X3D compatibility with Do Not Track, P3P, POWDER
+
** Review X3D specifications to ensure that Security Considerations are fully documented
+
*'''Viewing and navigation''': cinematic camera control, alternative navigation types (such as PAN, [http://www.x3dom.org/?p=3536 TURNTABLE] etc.), [http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/behaviours.html Recommended navigation behaviours] review, and old MatrixTransform node (esp. useful for CAD, VR/AR etc., impl. in X3DOM and InstantReality)
+
 
+
All suggestions and recommendations are welcome. Component improvements and additions are approved by Web3D Consortium members.
+
 
+
* TODO: Which experimental nodes are ready? Candidates include [http://doc.instantreality.org Fraunhofer], Bit Management, other members and working groups?
+
* TODO: articulate Big Data and Cloud, server-side visualization, related issues
+
 
+
Please [http://www.web3d.org/realtime-3d/contact contact us] if you think additional technologies need to be considered.
+
 
+
== Backwards and forwards compatibility ==
+
 
+
Thanks to careful design and insistence on implementation/evaluation, the X3D International Standard has maintained both steady growth and interoperability ever since Virtual Reality Modeling Language (VRML) in 1997. This track record of stability and innovation is among the best in the 3D graphics industry.
+
 
+
[[X3D version 4.0 Development]] efforts are focused on HTML5/Declarative 3D/X3DOM, and X3D Version 4.1 is focused on Mixed Augmented Reality (MAR) capabilities, which may require architectural changes. Some new technologies may get pushed from 4.0 to 3.4 (or back again) after careful consideration by the respective working groups.
+
 
+
*As with all other X3D components, all work is defined in the abstract specification has corresponding file encodings (.x3d .x3dv .x3db) and language bindings (ECMAScript and Java).
+
*Compatibility concerns include evolutionary efforts to upgrade the X3D Compressed Binary Encoding (CBE), as described in the [http://www.web3d.org/realtime-3d/working-groups/x3d/compressed-binary/x3d-compressed-binary-encoding-call-contributions X3D Compressed Binary Encoding Call For Contributions].
+
*ECMAscript (JavaScript) support in X3D needs to be upgraded to the new standard for that rapidly improving programming language.
+
**[http://standards.iso.org/ittf/PubliclyAvailableStandards/c055755_ISO_IEC_16262_2011(E).zip ISO/IEC 16262:2011 Information technology — ECMAScript language specification] (.zip download)
+
**Downloadable from [http://standards.iso.org/ittf/PubliclyAvailableStandards/index.html ISO Publicly Available Standards] site without charge
+
**This relates to [http://www.web3d.org/files/specifications/19777-1/V3.0/index.html 19777-1 Part 2, X3D Scene Access Interface (SAI) language bindings for EcmaScript]
+
 
+
== Related work==
+
 
+
Much careful planning is involved, we are working to ensure that X3D v3.4 can be coherently advanced in combination with a [http://www.web3d.org/specifications/X3dSpecificationRelationships.png coordinated set of steadily evolving ISO/IEC standards].
+
*'''X3D Efficient Binary Encoding (EBE).''' This work is proceeding in parallel.  X3D v3.4 must maintain compatibility with all encodings. See also SRC format (Web3D 2014)and ExternalGeometry node in InstantPlayer and X3DOM
+
*'''X3D JavaScript Object Notation (JSON) Encoding.''' This work is proceeding in parallel.  X3D v3.4 must maintain compatibility with all encodings.
+
*'''X3D version 4.0 (HTML5/X3DOM)'''. This work is proceeding in parallel.  X3D v3.4 support is expected.
+
*'''X3D version 4.1 (Mixed Augmented Reality)'''. Nodes and capabilities in this arena will build on v4.0 and HTML5.
+
 
+
== Schedule ==
+
 
+
'''ISO Considerations'''
+
* Deciding readiness for ISO New Work Item Proposal (NWIP): we need Committee Draft (CD) specification prose for each planned capability.
+
* Web3D Consortium is not locked into an annual schedule, ISO handling is flexible.
+
* Once the NWIP is approved, ISO rules for schedule and review are established.
+
 
+
'''X3D version 3.4 execution goals'''
+
* Review progress during monthly calls, Web3D Conference, and SIGGRAPH Conference.
+
* We are continuing a monthly review schedule for submissions so that we can build out X3D v3.4 one component at a time.
+
* We are planning to have a 1-year deadline for completion of CD specification prose, rather than wait until all possible v3.4 work is ready.
+
* Web3D Consortium members and public review when a final draft specification is ready to proceed to ISO.
+
* Any new components not meeting Web3D deadlines might be a candidate for deferral as v3.5. Or considered not ready.
+

Latest revision as of 17:15, 6 January 2016

X3D version 3.4 is now merged with X3D version 4.0

The Web3D Consortium has decided to merge all X3D version 3.4 efforts into X3D version 4.0 Development Efforts.

All participation is welcome. Stay tuned for continued reorganization of the still-valid activities listed there.