|Name:||OFF.TWG 3D/VR File Format Requirements|
|Status:||Public Final Draft|
|Email list:||OFF.TWG (at) lists.mediagrid.org|
|Standards process:||http://MediaGrid.org/process/Immersive_Education_Initiative_Process_Document.pdf||IP policy:||http://MediaGrid.org/policy/Media_Grid_Intellectual_Property_Policy.pdf|
|Editors:||Nagel, Nicholas H. (Grid Institute and Boston College), Walsh, Aaron E. (Grid Institute and Boston College)|
This is a natural language (not formal) document that specifies baseline requirements for 3D and Virtual Reality (3D/VR) file formats that may be adopted by the Media Grid Immersive Education Initiative [REF1].
This document is a Public Final Draft under active development and may be updated, replaced or made obsolete by other documents at any time and without notice. It is inappropriate to use this document as reference material or to cite it as other than “public final draft under active development” or "work in progress".
This document should be considered stable but subject to change. As such it should not it be normatively referenced. Publication as a Public Final Draft does not imply endorsement by Media Grid members or collaborators.
This document has been produced by the Media Grid Open File Formats Technology Working Group (OFF.TWG) [REF2]. As a Public Final Draft under active development this document is not member-confidential and may be circulated as-is to the general public for comment and feedback.
Comments and notes not intended as specification material appears as RED TEXT.
TBD: The acronym TBD is used to indicate material "To Be Determined" for which feedback, comments and discussion are requested.
The following set embodies baseline requirements for 3D/VR file formats specified by the Open File Formats Technology Working Group (OFF.TWG):
Open and Royalty-Free Standards. File formats must be open (i.e., non-proprietary and publicly available) and not conditioned on payment of royalties, fees or other financial consideration. Specifically, file formats must be available under a license compatible with the open and royalty-free terms defined by the Media Grid Intellectual Property Policy [REF3].
Modular design. File formats must be modular in design. That is, where aspects of the data (i.e., features and capabilities) can be separated or compartmentalized they should be in such a way that updates or changes within one modularized area cannot affect other areas. Examples of modular design include object-oriented architectures, componentization, profiles and levels.
Extensible. File formats must have an extensible architecture. The term extensible refers to the ability of a file format to have its features and capabilities expanded, enhanced, or added to.
Validatable. File formats must support the construction of documents (e.g., document files that represent 3D/VR objects, scenes, avatars, etc.) that can be testable in such a way as to guarantee the validity of the document for subsequent processing by target applications (e.g., virtual world applications and content development tools). The term validation refers to the process of verifying that a document follows the grammar, vocabulary and syntax rules for the language(s) used to construct the document. A document that passes this process with success is considered valid.
Wide support. File formats must be widely supported by content development tools. At a minimum the content development tools cited in Appendix A of this document should support the ability to export and import 3D/VR content in the target file format(s).
Polygon mesh support. File formats must support the ability to represent 3D/VR content (e.g., objects, scenes, avatars, etc.) using polygon meshes. The term polygon mesh refers to a collection of vertices, edges and faces that together define the shape (geometry) of a 3D/VR polyhedral object. To optimize the rendering process the faces in a polygon mesh are typically comprised of triangles, quadrilaterals or other simple convex polygons but may also consist of more complex polygonal structures.
XML-based (with support for compression and encryption). File formats must be based on the Extensible Markup Language (XML) [REF4]. XML document files constructed in accordance with the target format(s) must be representable using plain-text character sets compatible with Unicode standards [REF5] (i.e., file descriptors used to construct documents must support plain-text character sets compatible with Unicode encoding). Although file formats are not required to define specific compression and encryption capabilities directly, any text-based XML document constructed using the target format(s) should be capable of being compressed using general-purpose data compression techniques (e.g., ZIP, GZIP, etc.), and should further support encryption using well-known data protection techniques (e.g., DRM). Digital media assets (e.g., texture images, audio files, videos, etc.) are not required to be represented using XML.
Arbitrarily complex content. File formats must support arbitrarily complex and detailed 3D/VR content (i.e., complexity and detail arising from polygon count, primitive objects and groups, etc.) as well as very simple content. File formats must not constrain or restrict content complexity or level of detail; formats must support the creation of a wide spectrum of 3D/VR content, ranging from simplistic content (e.g., flat planes, cubes, spheres, cones, boxes, etc.) to highly complex and extremely detailed 3D/VR objects, avatars, scenes, and environments (i.e., high resolution cinematic quality content).
State-of-the-art rendering. File formats must support state-of-the-art rendering features and capabilities commonly exhibited by modern graphics rendering hardware (e.g., video game consoles and graphics workstations) and modern versions of mainstream computer graphics APIs (e.g., DirectX/Direct3D and OpenGL). Examples include shaders (pixel, vertex and geometry shaders), special effects, and advanced lighting techniques.
Animation. File formats must support animation. The term animation refers to the illusion of movement achieved by the perceived motion of an object over time. Specifically, animation refers to the temporal description of objects in a 3D/VR scene, such as how they are moved and deformed over time. Common techniques for animating 3D/VR computer graphics include: keyframing, motion capture, forward and inverse kinematics, morph targets (per-vertex animation), skeletal and facial animation, blend shapes, physical simulation, and so forth.
Physics. File formats must support physics. The term physics refers to the capacity to model in real-time the behavior of objects in three dimensional space. 3D/VR platforms (i.e., virtual worlds, video games and simulators) commonly rely on third-party physics engines to support real-time physical simulations such as: collision detection, rigid body dynamics, life-like character and avatar motion, cloth and hair motion, special effects (smoke, fog, dust, etc.), realistic object interactions, destructible objects and environments, vehicle motion and simulations, and so forth. 3D/VR file formats may provide bindings or APIs to common physics engines (e.g., Havok Physics, Open Dynamics Engine, NVIDIA PhysX, and Bullet) rather than define their own format-specific physics solutions.
Continuous Level of Detail (CLOD). File formats must support continuous rendering of content at varying levels of detail. The term Level of Detail (LOD) refers to the amount of detail or complexity that is displayed at any particular time for any particular object in a 3D/VR scene. The term Continuous Level of Detail (CLOD) refers to the ability to render an object at a desired level of detail in real-time and without interruption. Whereas switching between different resolutions of an object using traditional LoD (i.e., Discrete LoD) often results in "popping" or other obvious visual disruptions, Continuous LOD enables gradual and smooth transitions between object resolutions. Continuous LOD typically requires a 3D/VR data structure that is designed specifically for continuous extraction of object data at run time and progressive transmission of object data.
Metadata. File formats must support system-supplied and user-supplied metadata. The term metadata refers to information that characterizes data (“information about information”). Keywords, tags, labels, and descriptors are common forms of metadata. The term system-supplied metadata refers to metadata provided by system-level software tools or processes that are used to assign metadata during the content production or pre-production stage (i.e., before the content is available to end users). Automated data classification, taxonomy and ontology tools may, for example, assign metadata automatically and without human intervention at the time a document is entered into a content repository. The term user-supplied metadata refers to metadata that is provided by end users (e.g., teachers, trainers and students) through a process that is commonly referred to as tagging or labeling.
X3D. Web3D Consortium. http://www.web3d.org/x3d/specifications/x3d/
COLLADA. The Khronos Group. http://www.khronos.org/collada/
ECMA Universal 3D (ECMA-363). ECMA International. http://www.ecma-international.org/publications/standards/Ecma-363.htm
Autodesk 3ds Max [commercial]: http://www.autodesk.com/3dsmax
Autodesk AutoCAD [commercial]: http://www.autodesk.com/autocad
Autodesk Maya [commercial]: http://www.autodesk.com/maya
Autodesk Revit Architecture [commercial]: http://usa.autodesk.com/adsk/servlet/index?id=3781831&siteID=123112
Autodesk Softimage [commercial]: http://www.softimage.com/
Bentley MicroStation [commercial]: http://www.bentley.com/en-US/Products/MicroStation/
Blender [free; open source]: http://www.blender.org/
Caligari trueSpace [free]: http://www.caligari.com/
Chumbalum Soft MilkShape 3D [shareware]: http://chumbalum.swissquake.ch/
Darwin Dimensions Evolver [commercial]: http://darwindimensions.com/
Dassault Systèmes CATIA [commercial]: http://www.3ds.com/products/catia/
Dassault Systèmes CB Model Pro [free]: http://www.cbmodelpro.com/
DAZ Studio [free]: http://www.daz3d.com/
Gehry Technologies Digital Project [commercial]: http://www.gehrytechnologies.com/index.php?option=com_content&task=view&id=97&Itemid=211
Google SketchUp [commercial; free and for-fee versions available]: http://sketchup.google.com/
Luxology modo [commercial]: http://www.luxology.com/
MAXON CINEMA 4D [commercial]: http://www.maxon.net/pages/products/cinema4d/cinema4d_e.html
Nemetschek ArchiCAD [commercial]: http://www.nemetschek.net/products/index.php
Nemetschek VectorWorks [commercial]: http://www.nemetschek.net/products/index.php
PTC Pro/ENGINEER [commercial]: http://www.ptc.com/products/proengineer/
Smith Micro Poser [commercial]: http://my.smithmicro.com/win/poser/
Wings 3D [free; open source]: http://www.wings3d.com/
Media Grid Immersive Education Initiative: http://ImmersiveEducation.org
Open File Formats Technology Working Group (OFF.TWG): http://MediaGrid.org/groups/technology/OFF.TWG
Media Grid Intellectual Property Policy: http://MediaGrid.org/policy/Media_Grid_Intellectual_Property_Policy.pdf
Extensible Markup Language (XML): http://www.w3.org/XML/
Unicode standards: http://www.unicode.org
Document revised 2008-11-10