What is the WRL file format?
The .wrl file extension is used by VRML (Virtual Reality Modeling Language), the established format for interactive 3D vector graphics originally designed for WWW applications. .wrl files contain a complete virtual reality scene description - including the 3D view starting point, object coordinates, colors, textures, and properties of all scene elements.
.wrl files, commonly referred to as "worlds", store scene data as plain text. VRML 1.0 files begin with the header #VRML V1.0 ascii, while VRML97 (V2.0) files use #VRML V2.0 utf8, reflecting its UTF-8 character encoding. Users can navigate these virtual worlds freely in all three directions using a compatible viewer.
.wrlfiles were widely used with web browser plugins for generating 3D virtual reality environments, though those plugins are now largely unsupported in modern browsers.- Although
.wrlfiles store data in plain text, they can be compressed with GZIP; such files use the.wrzextension. - VRML97 added scripting (via
Scriptnodes), animation (Interpolator nodes), and interactive sensors absent from VRML 1.0. - The
.wrlformat has largely been succeeded by X3D (Extensible 3D); its plain-text variant is.x3dv.
Security & safety
RISK: LOWA WRL is plain text describing geometry, so simply viewing it is low-risk. The one caveat is VRML97's Script nodes and EXTERNPROTO/Inline references, which can pull in external resources or (in a full VRML browser) run ECMAScript/Java behaviors - relevant only in an interactive VRML player, not in mesh viewers like Blender/MeshLab. For untrusted files, use a plain mesh viewer rather than a scripting-capable VRML browser.
Format details
in a nutshellPrograms that open WRL files
Technical details
deep spec| Text encoding (VRML 1.0) | ASCII only; every file must begin with the header line `#VRML V1.0 ascii` at byte offset 0 |
| Text encoding (VRML97) | UTF-8; file must open with `#VRML V2.0 utf8` - the version-identifying magic string |
| MIME type | `model/vrml` |
| Scene structure | Node-based hierarchical scene graph; core nodes include Transform, Shape, Appearance, and geometry nodes |
| Built-in geometry primitives | Box, Cone, Cylinder, Sphere; arbitrary meshes via IndexedFaceSet and IndexedLineSet |
| Navigation modes | Walk, Fly, Examine, and None - declared in the `NavigationInfo` node per VRML97 |
| Animation mechanism | Interpolator nodes (PositionInterpolator, OrientationInterpolator, ColorInterpolator, etc.) driven by `TimeSensor` |
| Scripting | JavaScript and Java supported through `Script` nodes in VRML97; ECMAScript is the primary scripting language |
| Texture mapping | `ImageTexture`, `PixelTexture`, and `MovieTexture` nodes; texture coordinates set via `TextureCoordinate` |
| Interactive sensors | TouchSensor, ProximitySensor, VisibilitySensor, and CylinderSensor enable user-driven interactivity |
| Compressed variant | GZIP-compressed `.wrl` is saved with the `.wrz` extension; internal structure is identical |
| Prototype / reuse system | `PROTO` and `EXTERNPROTO` keywords allow custom reusable node definitions within or across files |
| Coordinate system | Right-handed, Y-up; VRML97 specifies distances in metres |
| Successor format | X3D (ISO/IEC 19775); `.x3dv` is the plain-text X3D equivalent and is backward-compatible with VRML97 concepts |
| Released | 1995 (VRML 1.0); VRML97 = ISO/IEC 14772-1:1997 |
| Open standard | Yes · royalty-free |
| Specification | www.web3d.org |
WRL conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about WRL files.