X3D

X3D is a royalty-free ISO standard for declaratively representing 3D computer graphics. File format support includes XML, ClassicVRML, Compressed Binary Encoding (CBE) and a draft JSON encoding. It 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).

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.

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
Type of format3D computer graphics
Extended fromVRML, XML
StandardISO/IEC 19775/19776/19777
Websitewww.web3d.org/x3d/what-x3d/

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).

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.

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 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">

<X3D profile="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>
    <IndexedFaceSet coordIndex="0 1 2">
      <Coordinate point="0 0 0 1 0 0 0.5 1 0"/>
    </IndexedFaceSet>
  </Shape>
</Scene>
</X3D>

Alternatives

  • WebGL: JavaScript API for rendering interactive 3D graphics and 2D graphics within any compatible web browser, managed by the Khronos Group
  • 3DMLW: 3D Markup Language for Web
  • COLLADA: interchange file format for interactive 3D applications, managed by the Khronos Group
  • O3D: developed by Google
  • U3D: Ecma International standard ECMA-363
  • VRML: precursor of X3D
  • 3MF: An XML-based format that includes 3D additive manufacturing data such as material properties.

See also

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.

External links

3DXML

3DXML is a proprietary 3D file format developed by Dassault Systemes under its 3DVIA Brand. It uses an XML container whose specifications were published. It should not be confused with X3D, the ISO standard XML-based file format for representing 3D computer graphics.

The 3DXML file itself is actually a zip archive file that contains a BOM file and one or more 3D representation files. Renaming the file from .3dxml to .zip allows a program like WinZip to open the archive.

The 3DXML file can contain 3D representation files stored in either XML or binary format and they can contain either surface data, as a mesh that can be interpreted as surface data or as a simple mesh.

The surface data is stored as Gregory patches.

The "surface" mesh (containing topology, faces, edges, vertices, and rounding weights) can be reinterpreted back into a surface by a compliant 3DXML viewer.

The simple mesh is tessellated data stored as triangles. trifans, and trisets.

Armand Rousso

Armand Rousso, also known as Marc Rousso, is a French businessman. He is the founder of Accoona.com, a business-to-business search engine, and X3D Technology. He is the father of Vanessa Rousso, professional poker player and Big Brother contestant.

Equals sign

The equals sign or equality sign (=) is a mathematical symbol used to indicate equality. It was invented in 1557 by Robert Recorde. In an equation, the equals sign is placed between two (or more) expressions that have the same value. In Unicode and ASCII, it is U+003D = EQUALS SIGN (HTML =).

Flux (software)

Flux is a software suite released by Media Machines which consists of Flux Player and Flux Studio.

Flux Player is a VRML/X3D viewer that works both as plugin in Internet Explorer, and as standalone program in Windows. Flux Studio is a VRML/X3D editor that works in Windows. Both programs supports Windows Me/2000 and higher.

Flux Player and Flux Studio are freely downloadable for any usage under a proprietary Flux Player and Flux Studio license.

Flux software is developed by Tony Parisi, who coworked with Mark Pesce on the development of the experimental VRML prototype called Labyrinth. Flux Studio can successfully import and export *.WRL, *.X3DV and *.X3D files.

Initial distribution version of Flux Player 2.0 and Flux Studio 2.0 was released on February 21, 2007; while final distribution version of Flux Player 2.1 and Flux Studio 2.1 was released on May 28, 2007.

FreeWRL

FreeWRL is an open-source compliant VRML/X3D browser for Microsoft Windows, Linux and Mac OS X.

GPAC Project on Advanced Content

GPAC Project on Advanced Content (GPAC, a recursive acronym) is an implementation of the MPEG-4 Systems standard written in ANSI C. GPAC provides tools for media playback, vector graphics and 3D rendering, MPEG-4 authoring and distribution.GPAC provides three sets of tools based on a core library called libgpac:

A multimedia player, cross-platform command-line based MP4Client or with a GUI Osmo4

A multimedia packager, MP4Box

Some server tools, around multiplexing and streaming (under development)GPAC is cross-platform. It is written in (almost 100% ANSI) C for portability reasons, attempting to keep the memory footprint as low as possible. It is currently running under Windows, Linux, Solaris, Windows CE (SmartPhone, PocketPC 2002/2003), iOS, Android, Embedded Linux (familiar 8, GPE) and recent Symbian OS systems.

The project is intended for a wide audience ranging from end-users or content creators with development skills who want to experiment the new standards for interactive technologies or want to convert files for mobile devices, to developers who need players and/or server for multimedia streaming applications.

The GPAC framework is being developed at École nationale supérieure des télécommunications (ENST) as part of research work on digital media.

Humanoid animation

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.

The H-Anim Standard was developed in the late 1990s and was significantly influenced by the Jack human modeling system and the research of experts in the graphics, ergonomics, simulation & gaming industry.

Human–computer chess matches

This article documents the progress of significant human–computer chess matches.

Chess computers were first able to beat strong chess players in the late 1980s. Their most famous success was the victory of Deep Blue over then World Chess Champion Garry Kasparov in 1997, but there was some controversy over whether the match conditions favored the computer.

In 2002–2003, three human-computer matches were drawn, but whereas Deep Blue was a specialized machine, these were chess programs running on commercially available computers.

Chess programs running on commercially-available desktop computers had convincing victories against human players in matches in 2005 and 2006. Since that time, chess programs running on commercial hardware—more recently including mobile phones—have been able to defeat even the strongest human players.

ISO/IEC JTC 1/SC 24

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.

MPEG-4 Part 11

See also: Banded Iron FormationMPEG-4 Part 11 Scene 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 coded representation of the spatio-temporal positioning of audio-visual objects as well as their behaviour in response to interaction (scene description);

the coded representation of synthetic two-dimensional (2D) or three-dimensional (3D) objects that can be manifested audibly or visually;

the Extensible MPEG-4 Textual (XMT) format - a textual representation of the multimedia content described in MPEG-4 using the Extensible Markup Language (XML);

and a system level description of an application engine (format, delivery, lifecycle, and behaviour of downloadable Java byte code applications). (The MPEG-J Graphics Framework eXtensions (GFX) is defined in MPEG-4 Part 21 - ISO/IEC 14496-21.)Binary Format for Scenes (BIFS) is a binary format for two- or three-dimensional audiovisual content. It is based on VRML and part 11 of the MPEG-4 standard.

BIFS is MPEG-4 scene description protocol to compose MPEG-4 objects, describe interaction with MPEG-4 objects and to animate MPEG-4 objects.

MPEG-4 Binary Format for Scene (BIFS) is used in Digital Multimedia Broadcasting (DMB).The XMT framework accommodates substantial portions of SMIL, W3C Scalable Vector Graphics (SVG) and X3D (the new name of VRML). Such a representation can be directly played back by a SMIL or VRML player, but can also be binarised to become a native MPEG-4 representation that can be played by an MPEG-4 player. Another bridge has been created with BiM (Binary MPEG format for XML).

MeshLab

MeshLab is a 3D mesh processing software system that is oriented to the management and processing of unstructured large meshes and provides a set of tools for editing, cleaning, healing, inspecting, rendering, and converting these kinds of meshes. MeshLab is free and open-source software, subject to the requirements of the GNU General Public License (GPL), version 2 or later, and is used as both a complete package and a library powering other software. It is well known in the more technical fields of 3D development and data handling.

MeshLab is developed by the ISTI - CNR research center; initially MeshLab was created as a course assignment at the University of Pisa in late 2005. It is a general-purpose system aimed at the processing of the typical not-so-small unstructured 3D models that arise in the 3D scanning pipeline.

The automatic mesh cleaning filters includes removal of duplicated, unreferenced vertices, non-manifold edges, vertices, and null faces. Remeshing tools support high quality simplification based on quadric error measure, various kinds of subdivision surfaces, and two surface reconstruction algorithms from point clouds based on the ball-pivoting technique and on the Poisson surface reconstruction approach. For the removal of noise, usually present in acquired surfaces, MeshLab supports various kinds of smoothing filters and tools for curvature analysis and visualisation.

It includes a tool for the registration of multiple range maps based on the iterative closest point algorithm. MeshLab also includes an interactive direct paint-on-mesh system that allows users to interactively change the color of a mesh, to define selections and to directly smooth out noise and small features.

MeshLab is available for most platforms, including Linux, Mac OS X, Windows and, with reduced functionality, on Android and iOS and even as a pure client-side JavaScript application called MeshLabJS. The system supports input/output in the following formats: PLY, STL, OFF, OBJ, 3DS, VRML 2.0, U3D, X3D and COLLADA. MeshLab can also import point clouds reconstructed using Photosynth.

MeshLab is used in various academic and research contexts, like microbiology, cultural heritage, surface reconstruction, paleontology, for rapid prototyping in orthopedic surgery, in orthodontics, and desktop manufacturing.

OpenVRML

OpenVRML is a free and open-source software project that makes it possible to view three-dimensional objects in the VRML and X3D formats in Internet-based applications. The software was initially developed by Chris Morley; since 2000 the project has been led by Braden McDaniel.OpenVRML provides a GTK+-based plugin to render VRML and X3D worlds in web browsers. Its libraries can be used to add VRML and X3D support to applications. The software is licensed under the terms of the GNU Lesser General Public License (LGPL) and distributed a GNU-style source package that is portable to most POSIX systems with a C++ compiler. The source distribution also includes project files for building on Microsoft Windows with the freely-available Visual C++ Express compiler.Binary (compiled) versions of the software are available within the Linux distributions Fedora and Debian, as well as under FreshPorts for FreeBSD and Fink for Mac OS X.

A number of software applications are designed to generate VRML code; see for instance GNU Octave.

Scene description language

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 (which may include syntax highlighting) as opposed to be modeled in a graphical way.

Some scene description language may include variables, constants, conditional statements, while loops and for loops.

3DMLW and X3D are XML-based scene description languages. The Tao Presentations application uses XL as a dynamic document description language.

Scene graph

A scene graph is a general data structure commonly used by vector-based graphics editing applications and modern computer games, which arranges the logical and often spatial representation of a graphical scene.

A scene graph is a collection of nodes in a graph or tree structure. A tree node may have many children but only a single parent, with the effect of a parent applied to all its child nodes; an operation performed on a group automatically propagates its effect to all of its members. In many programs, associating a geometrical transformation matrix (see also transformation and matrix) at each group level and concatenating such matrices together is an efficient and natural way to process such operations. A common feature, for instance, is the ability to group related shapes and objects into a compound object that can then be moved, transformed, selected, etc. as easily as a single object.

VRML

VRML (Virtual Reality Modeling Language, pronounced vermal or by its initials, originally—before 1995—known as the Virtual Reality Markup Language) 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.

Web3D

Web3D was initially the idea to fully display and navigate Web sites using 3D. By extension, the term now refers to all interactive 3D content which are embedded into web pages' HTML, and that users can see through a web browser.

Notable formats and tools include:

3DMLW

A-Frame (VR)

Additive Manufacturing File Format

Adobe Shockwave

Blend4Web

Java 3D

JOGL

LWJGL

O3D

Oak3D

PlayCanvas

ShiVa

Three.js

Unity

Verge3D

Viewpoint

Virtools

VRML

Web3D Consortium

WebGL

WebVR

WireFusion

X3D (extension of VRML)

X3DOMThey are mainly distinguished by five criteria:

Simplicity (Automatic Installation, rates facilities already high)

Compatibility (Windows, Mac, Unix ..)

Quality (Performances, see Frames per second, and indirectly display quality)

Interactivity (Depending on the solutions, their programming opportunities, the creators of content have more or less freedom in the creation of interactivity)

Standardization (none, "market position", by a standards organization, etc.)

Web3D Consortium

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.

The Web3D Consortium promotes deployment of X3D standards for the communication of 3D scenes in multiple applications, use cases, platforms, and verticals. Members collaboratively develop the X3D standards and tools making them widely adopted across diverse markets for academia, government, industry, and individuals. The Web3D Consortium offers robust ISO standardized 3D functionality and long-term stability for enterprise solutions and interoperability with other 3D standards.

The Consortium defines and develops the X3D royalty-free open standards file format and runtime architecture to represent and communicate 3D scenes. The development of 3D web-based graphics has evolved from its beginnings as the Virtual Reality Modeling Language (VRML) to Extensible 3D (X3D). Over recent years, advances in real time graphics and networking technology, and most notably the emergence of the Extensible Markup Language XML, have heavily influenced the development of the ISO-approved, freely available, X3D open standard. X3D embodies best practices in commercial real time graphics within the widely adopted framework of the World Wide Web family of technologies and standards and has no intellectual property restrictions. It provides a system for the storage, retrieval and playback of real time graphics content embedded in applications, all within an open architecture to support a wide array of domains and user scenarios.

Web3D applications have been active for some time. Previously known as the VRML Consortium, this community spearheaded the development of the VRML 1.0 and 2.0 specifications, which provide the basis for the development of associated applications. The organizations involved in this effort felt that the creation of an open consortium focused exclusively on Web3D would provide the structure necessary to stabilize, standardize, and nurture the technology for the entire community. Today, the Web3D Consortium is utilizing its broad-based industry support to develop the X3D specification as a successor to VRML for communicating 3D on the web, between applications and across distributed networks and web services.

Related to its educational mission, the Consortium maintains an extensive website of documents and links related to VRML and X3D resources, including plugins and browsers from many long term members and open source developers.

WebGL

WebGL (Web Graphics Library) 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 (GLSL ES), 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.

X3D Fritz

X3D Fritz was a version of the Fritz chess program, which in November 2003 played a four-game Human–computer chess match against world number one Grandmaster Garry Kasparov. The match was tied 2–2, with X3D Fritz winning game 2, Kasparov winning game 3 and drawing games 1 and 4.

By type
See also
ISO standards by standard number
1–9999
10000–19999
20000+

This page is based on a Wikipedia article written by authors (here).
Text is available under the CC BY-SA 3.0 license; additional terms may apply.
Images, videos and audio are available under their respective licenses.