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.
VRML is a text file format where, e.g., vertices and edges for a 3D polygon can be specified along with the surface color, UV mapped textures, shininess, transparency, and so on. URLs can be associated with graphical components so that a web browser might fetch a webpage or a new VRML file from the Internet when the user clicks on the specific graphical component. Animations, sounds, lighting, and other aspects of the virtual world can interact with the user or may be triggered by external events such as timers. A special Script Node allows the addition of program code (e.g., written in Java or ECMAScript) to a VRML file.
VRML files are commonly called "worlds" and have the *.wrl extension (for example island.wrl). VRML files are in plain text and generally compress well using gzip, useful for transferring over the internet more quickly (some gzip compressed files use the *.wrz extension). Many 3D modeling programs can save objects and scenes in VRML format.
X3D is ISO standard XML-based file format for representing 3D computer graphics. 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.
In the seventh part of the series, we explore two open formats aimed at putting 3D data on the web, which found use in the CAD spaceRead more