X3D

Last updated

X3D — Extensible 3D Graphics
Filename extension
  • .x3d, .x3dv (plain text)
  • .x3db, .x3dz, .x3dbz, .x3dvz (compressed)
Internet media type
  • model/x3d+xml
  • model/x3d+binary
  • model/x3d+vrml
Latest release
3.3, 3.2, 3.1, 3.0[ when? ]
Type of format 3D computer graphics
Extended from VRML, XML
Standard ISO/IEC 19775/19776/19777
Website www.web3d.org/x3d/what-x3d/

X3D is a royalty-free ISO/IEC standard for declaratively representing 3D computer graphics. File format support includes XML, ClassicVRML, Compressed Binary Encoding (CBE) and a draft JSON encoding. X3D became the successor to the Virtual Reality Modeling Language (VRML) in 2001. [1] X3D features extensions to VRML (e.g. CAD, geospatial, humanoid animation, NURBS etc.), the ability to encode the scene using an XML syntax as well as the Open Inventor-like syntax of VRML97, or binary formatting, and enhanced application programming interfaces (APIs).

Royalty-free (RF) material subject to copyright or other intellectual property rights may be used without the need to pay royalties or license fees for each use, per each copy or volume sold or some time period of use or sales.

ISO/IEC JTC 1 is a joint technical committee of the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC). Its purpose is to develop, maintain and promote standards in the fields of information technology (IT) and Information and Communications Technology (ICT).

3D computer graphics graphics that use a three-dimensional representation of geometric data

3D computer graphics or three-dimensional computer graphics, are graphics that use a three-dimensional representation of geometric data that is stored in the computer for the purposes of performing calculations and rendering 2D images. Such images may be stored for viewing later or displayed in real-time.

Contents

The X3D extension supports multi-stage and multi-texture rendering; it also supports shading with lightmap and normalmap. Starting in 2010, X3D has supported deferred rendering architecture. Now X3D can import SSAO, CSM and Realtime Environment Reflection/Lighting. The user can also use optimizations including BSP/QuadTree/OctTree or culling in the X3D scene.

X3D can work with other open source standards including XML, DOM and XPath.

Document Object Model Convention for representing and interacting with objects in HTML, XHTML and XML documents

The Document Object Model (DOM) is a cross-platform and language-independent interface that treats an XML or HTML document as a tree structure wherein each node is an object representing a part of the document. The DOM represents a document with a logical tree. Each branch of the tree ends in a node, and each node contains objects. DOM methods allow programmatic access to the tree; with them one can change the structure, style or content of a document. Nodes can have event handlers attached to them. Once an event is triggered, the event handlers get executed.

XPath is a query language for selecting nodes from an XML document. In addition, XPath may be used to compute values from the content of an XML document. XPath was defined by the World Wide Web Consortium (W3C).

Standardization

X3D defines several profiles (sets of components) for various levels of capability including X3D Core, X3D Interchange, X3D Interactive, X3D CADInterchange, X3D Immersive, and X3D Full. Browser makers can define their own component extensions prior to submitting them for standardisation by the Web3D Consortium. Formal review and approval is then performed by the International Organization for Standardization (ISO).

The Web3D Consortium is an international not-for-profit, member-funded industry consortium, originally founded in 1997. In the Web3D Consortium members from governmental, nonprofit and research organizations worldwide, working alongside individual professional members, collaborate in a consensus process encouraging development and implementation of open standards for 3D content and services.

International Organization for Standardization An international standard-setting body composed of representatives from national organizations for standards

The International Organization for Standardization is an international standard-setting body composed of representatives from various national standards organizations.

Liaison and cooperation agreements are also in place between the Web3D Consortium and the World Wide Web Consortium (W3C), Open Geospatial Consortium (OGC), Digital Imaging and Communications in Medicine (DICOM) and the Khronos Group.

World Wide Web Consortium web standards organization

The World Wide Web Consortium (W3C) is the main international standards organization for the World Wide Web. Founded and currently led by Tim Berners-Lee, the consortium is made up of member organizations which maintain full-time staff for the purpose of working together in the development of standards for the World Wide Web. As of 29 May 2019, the World Wide Web Consortium (W3C) has 444 members. The W3C also engages in education and outreach, develops software and serves as an open forum for discussion about the Web.

Open Geospatial Consortium standards organization

The Open Geospatial Consortium (OGC), an international voluntary consensus standards organization, originated in 1994. In the OGC, more than 500 commercial, governmental, nonprofit and research organizations worldwide collaborate in a consensus process encouraging development and implementation of open standards for geospatial content and services, sensor web and Internet of Things, GIS data processing and data sharing.

The Khronos Group, Inc. is an American non-profit member-funded industry consortium based in Beaverton, Oregon, focused on the creation of open standard, royalty-free application programming interfaces (APIs) for authoring and accelerated playback of dynamic media on a wide variety of platforms and devices. Khronos members may contribute to the development of Khronos API specifications, vote at various stages before public deployment, and accelerate delivery of their platforms and applications through early access to specification drafts and conformance tests.

A subset of X3D is XMT-A, a variant of XMT, defined in MPEG-4 Part 11. It was designed to provide a link between X3D and 3D content in MPEG-4 (BIFS).

The Extensible MPEG-4 Textual Format (XMT) is a high-level, XML-based file format for storing MPEG-4 data in a way suitable for further editing. In contrast, the more common MPEG-4 Part 14 (MP4) format is less flexible and used for distributing finished content.

MPEG-4 is a method of defining compression of audio and visual (AV) digital data. It was introduced in late 1998 and designated a standard for a group of audio and video coding formats and related technology agreed upon by the ISO/IEC Moving Picture Experts Group (MPEG) under the formal standard ISO/IEC 14496 – Coding of audio-visual objects. Uses of MPEG-4 include compression of AV data for web and CD distribution, voice and broadcast television applications. The MPEG-4 standard was developed by a group led by Touradj Ebrahimi and Fernando Pereira.

MPEG-4 Part 11Scene description and application engine was published as ISO/IEC 14496-11 in 2005. MPEG-4 Part 11 is also known as BIFS, XMT, MPEG-J. It defines:

The abstract specification for X3D (ISO/IEC 19775) was first approved by the ISO in 2004. The XML and ClassicVRML encodings for X3D (ISO/IEC 19776) were first approved in 2005. [2]

Applications

There are several applications, most of which are open-source software, [3] which natively parse and interpret X3D files, including the 3D graphics and animation editor Blender [4] and the Sun Microsystems virtual world client Project Wonderland. [5] An X3D applet is a software program that runs within a web browser and displays content in 3D, using OpenGL 3D graphics technology to display X3D content in several different browsers (IE, Safari, Firefox) across several different operating systems [6] (Windows, Mac OS X, Linux). However, X3D has not received as wide acceptance as that of other, more notable software applications.

In the 2000s, many companies such as Bitmanagement improved the quality level of virtual effects in X3D to the quality level of DirectX 9.0c, but at the expense of using proprietary solutions. All main features including game modeling are already complete. They include multi-pass render with low level setting for Z-buffer, BlendOp, AlphaOp, Stencil, [7] Multi-texture, [8] Shader with HLSL and GLSL support, [9] real-time Render To Texture, Multi Render Target (MRT) and post-processing. [10] Many demos shows that X3D already supports lightmap, normalmap, SSAO, CSM and real-time environment reflection along with other virtual effects. [11]

Striving to become the 3D standard for the Web, X3D is designed to be as integrated into HTML5 pages as other XML standards such as MathML and SVG. X3DOM is a proposed syntax model and its implementation as a script library [12] that demonstrates how this integration can be achieved without a browser plugin, using only WebGL and JavaScript. [13]

Example

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.2//EN"  "http://www.web3d.org/specifications/x3d-3.2.dtd"><X3Dprofile="Interchange"version="3.2"xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance"xsd:noNamespaceSchemaLocation="http://www.web3d.org/specifications/x3d-3.2.xsd"><Scene><Shape><IndexedFaceSetcoordIndex="0 1 2"><Coordinatepoint="0 0 0 1 0 0 0.5 1 0"/></IndexedFaceSet></Shape></Scene></X3D>

Alternatives

See also

Related Research Articles

HTML Hypertext Markup Language

Hypertext Markup Language (HTML) is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScript.

The Portable Document Format (PDF) is a file format developed by Adobe in the 1990s to present documents, including text formatting and images, in a manner independent of application software, hardware, and operating systems. Based on the PostScript language, each PDF file encapsulates a complete description of a fixed-layout flat document, including the text, fonts, vector graphics, raster images and other information needed to display it. PDF was standardized as ISO 32000 in 2008, and no longer requires any royalties for its implementation.

Scalable Vector Graphics (SVG) is an XML-based vector image format for two-dimensional graphics with support for interactivity and animation. The SVG specification is an open standard developed by the World Wide Web Consortium (W3C) since 1999.

Synchronized Multimedia Integration Language ) is a World Wide Web Consortium recommended Extensible Markup Language (XML) markup language to describe multimedia presentations. It defines markup for timing, layout, animations, visual transitions, and media embedding, among other things. SMIL allows presenting media items such as text, images, video, audio, links to other SMIL presentations, and files from multiple web servers. SMIL markup is written in XML, and has similarities to HTML.

XML Markup language developed by the W3C for encoding of data

Extensible Markup Language (XML) is a markup language that defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. The World Wide Web Consortium's XML 1.0 Specification and several other related specifications—all of them free open standards—define XML.

Mathematical Markup Language (MathML) is a mathematical markup language, an application of XML for describing mathematical notations and capturing both its structure and content. It aims at integrating mathematical formulae into World Wide Web pages and other documents. It is part of HTML5 and an ISO standard ISO/IEC DIS 40314 since 2015.

VRML is a standard file format for representing 3-dimensional (3D) interactive vector graphics, designed particularly with the World Wide Web in mind. It has been superseded by X3D.

COLLADA is an interchange file format for interactive 3D applications. It is managed by the nonprofit technology consortium, the Khronos Group, and has been adopted by ISO as a publicly available specification, ISO/PAS 17506.

Humanoid Animation (H-Anim) is an approved ISO and IEC standard for humanoid modeling and animation. H-Anim defines a specification for defining interchangeable human figures so that those characters can be used across a variety of 3D games and simulation environments.

Image file formats are standardized means of organizing and storing digital images. Image files are composed of digital data in one of these formats that can be rasterized for use on a computer display or printer. An image file format may store data in uncompressed, compressed, or vector formats. Once rasterized, an image becomes a grid of pixels, each of which has a number of bits to designate its color equal to the color depth of the device displaying it.

Office Open XML is a zipped, XML-based file format developed by Microsoft for representing spreadsheets, charts, presentations and word processing documents. The format was initially standardized by Ecma, and by the ISO and IEC in later versions.

Catalogue Service for the Web (CSW), sometimes seen as Catalogue Service - Web, is a standard for exposing a catalogue of geospatial records in XML on the Internet. The catalogue is made up of records that describe geospatial data, geospatial services, and related resources.

WebGL JavaScript bindings for OpenGL in web browsers

WebGL is a JavaScript API for rendering interactive 2D and 3D graphics within any compatible web browser without the use of plug-ins. WebGL is fully integrated with other web standards, allowing GPU-accelerated usage of physics and image processing and effects as part of the web page canvas. WebGL elements can be mixed with other HTML elements and composited with other parts of the page or page background. WebGL programs consist of control code written in JavaScript and shader code that is written in OpenGL ES Shading Language (ESSL), a language similar to C or C++, and is executed on a computer's graphics processing unit (GPU). WebGL is designed and maintained by the non-profit Khronos Group.

The Office Open XML file formats are a set of file formats that can be used to represent electronic office documents. There are formats for word processing documents, spreadsheets and presentations as well as specific formats for material such as mathematical formulae, graphics, bibliographies etc.

A scene description language is any description language used to describe a scene to be rendered by a 3D renderer such as a ray tracer. The scene is written in a text editor as opposed to be modeled in a graphical way.

ISO/IEC JTC 1/SC 24 Computer graphics, image processing and environmental data representation is a standardization subcommittee of the joint subcommittee ISO/IEC JTC 1 of the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC), which develops and facilitates standards within the field of computer graphics, image processing, and environmental data representation. The international secretariat of ISO/IEC JTC 1/SC 24 is the British Standards Institute (BSI) located in the United Kingdom.

References

  1. Paul Festa and John Borland (19 May 2005). "Is a 3D web more than just empty promises?". CNET News.com. Archived from the original on 12 November 2009.
  2. X3D FAQ – "What is the status of the X3D specification?" Archived July 16, 2007, at the Wayback Machine . Retrieved on November 30, 2007.
  3. "X3D Open Source Projects". Web3d.org. Retrieved 2010-02-23. Archived February 6, 2014, at the Wayback Machine .
  4. Blender Model Export to X3D
  5. "Project Wonderland". Research.sun.com. 2008-10-07. Retrieved 2010-02-23. Archived July 17, 2009, at the Wayback Machine .
  6. "X3D applet". Members.shaw.ca. Retrieved 2010-02-23. Archived September 16, 2012, at the Wayback Machine .
  7. DrawGroup & DrawOp
  8. Multitexturing Archived July 12, 2010, at the Wayback Machine
  9. Programmable shaders component Archived July 12, 2010, at the Wayback Machine
  10. Scene postprocessing support
  11. VRML X3D and Realtime Web3D
  12. X3DOM JavaScript library
  13. X3D and HTML5: X3DOM proposal, Web3D wiki. Archived October 26, 2016, at the Wayback Machine .