Native VRML97 / X3D browser · since 1998v6.7.0-rc.1 · 2026-10-03

FIG. 1 — The FreeWRL landing world · VRML97

The old Web was made of pages.

Some of us thought it would be made of worlds. Maybe we weren’t finished.

Live world loads when you scroll here
freewrl-landing.wrlVRML9748 KB

Web preview: X_ITE 16.4.1Native viewer: FreeWRL

FreeWRL is an open-source browser for VRML97 and X3D, the ISO standards for 3D worlds on the Web. It runs natively on your computer. It has been in development since 1998.

Written in
VRML97 text, 256 lines, 48 KB (11 KB gzipped)
Holds
67 Shape nodes, 4 Viewpoints
Moves by
One TimeSensor → two OrientationInterpolators → the cyan ring and a small orbiting marker
  1. 01Dreamers wanted.FreeWRL needs testers, writers, world builders and people who keep a platform alive.
  2. 02View source.A world is a text file. You can read this one below.
  3. 03Change something.Change one number and watch the world change with it.
  4. 04Build a world.Worlds to turn around and read. Take any of them home and open it in FreeWRL.
§01

View source

The world at the top of this page, in plain text.

freewrl-landing.wrl (excerpt)VRML97 · 37 lines
#VRML V2.0 utf8
# freewrl-landing.wrl — the FreeWRL mark in a small world: a plaza, a dial, a tower,
 
DEF Hand Transform { # the FreeWRL mark: eye at the origin, five fingers around it
  children [
    Transform { # eyeball, flattened so the iris sits on its face
      scale 1 1 0.62
      children Shape {
        appearance Appearance { material Material { diffuseColor 0.62 0.76 0.95 emissiveColor 0.12 0.16 0.24 specularColor 1 1 1 shininess 0.8 } }
        geometry Sphere { radius 1.15 }
      }
    }
    Transform { # iris
      translation 0 0 0.735 rotation 1 0 0 1.5708
      children Shape {
        appearance Appearance { material DEF Iris Material { diffuseColor 0.04 0.28 0.85 emissiveColor 0.02 0.14 0.48 specularColor 0.25 0.3 0.4 shininess 0.3 } }
        geometry Cylinder { radius 0.64 height 0.06 }
      }
    }
    # … pupil and catch-light …
    Transform { # the five fingers
      children [
        Shape { appearance DEF Glass Appearance { material Material { diffuseColor 0.1 0.62 1 emissiveColor 0.04 0.4 0.78 specularColor 0.9 0.97 1 shininess 0.7 } } }
      Transform { # finger 1
        translation -2.396 0.509 0
        rotation 0 0 1 1.361
        children [
          Shape { appearance USE Glass geometry Cylinder { radius 0.3 height 2.2 top FALSE bottom FALSE } }
          Transform { translation 0 1.1 0 children Shape { appearance USE Glass geometry Sphere { radius 0.3 } } }
          Transform { translation 0 -1.1 0 children Shape { appearance USE Glass geometry Sphere { radius 0.3 } } }
        ]
      }
    # … fingers 2 to 5 …
      ]
    }
  ]
}
  1. Line 1

    The first line says which language this is. FreeWRL, X_ITE and every VRML97 browser since 1997 read it the same way.

  2. Line 6

    Transform moves, turns or stretches what is inside it. Here scale 1 1 0.62 squashes a Sphere into the eye.

  3. Line 8

    A Shape joins what a thing looks like (appearance) with what it is (geometry).

  4. Line 13

    The iris is a flat Cylinder, turned 90° (1.5708 radians) to face you.

  5. Line 24

    A finger is a Cylinder with a Sphere on each end. DEF Glass names one appearance; USE Glass reuses it for all five fingers.

  6. Full file, 48 KB. Save it, then open it in FreeWRL or any VRML browser. Or start with one box.
§02

What FreeWRL is

A native program that opens 3D worlds written in VRML97 and X3D, and lets you walk, fly and look around in them.

Tuomas J. Lukka started FreeWRL in 1998. From about 1999 to 2010, John A. Stewart ran the project at the Communications Research Centre Canada. Many people added to it after that. The last upstream release, 6.7, is dated April 2024.

Today the 6.7 code line is maintained on GitHub. The first results are a native Apple Silicon build for macOS and a Linux build from source. The code is written in C and uses OpenGL. JavaScript in Script nodes runs in the bundled Duktape engine.

Read the full history and credits.

Reads
VRML97 .wrl, X3D XML .x3d, X3D Classic .x3dv, gzipped too
Version
6.7.0-rc.1
macOS
macOS 15.0+ on Apple Silicon. Signed pre-release.
Linux
Build from source. Tested on Ubuntu 24.04.
Windows, Android
Not maintained now. Old upstream builds remain on SourceForge.
Licence
GNU LGPL 3.0 or later
Written in
C, with OpenGL
§03

From the archive

The project’s own pictures, kept as they were.

History & creditsThe old site, archived

A blue poster: the words FreeWRL, VRML 3D and Beyond, with photos of a data glove, a person in a head-mounted display on a motion chair, a space station, a music synthesizer scene and a jet.

FIG. 2FreeWRL — VRML 3D and Beyond

Poster from the Communications Research Centre Canada. Labels on the poster: CNN’s Space Station, Music Synthesizer, Digital Data Glove, CNN’s F-18 Hornet, Flying Chair. Web3D Consortium mark, lower left.

FreeWRL_poster.jpg800×520recovered via Wayback Machine

A tic-tac-toe board with yellow walls and blue squares; red spheres and green cones are the pieces.

FIG. 3Tic-tac-toe

A board of spheres and cones in FreeWRL. No caption survives.

tictactoe.gif800×600recovered via Wayback Machine

A grey spherical space station with a window band, in a FreeWRL window on black.

FIG. 4Space station

A space-station model in a FreeWRL window. The same model appears on the poster.

2001.jpg814×638recovered via Wayback Machine

§04

Now

Latest release · pre-release

FreeWRL 6.7.0-rc.1

Published
2026-10-03
For
macOS 15.0+ on Apple Silicon
File
FreeWRL-6.7.0-rc.1-macOS-arm64.zip