VRML97 Tutorial

This page now covers 95% of the VRML spec (I think), and all there is left to cover is Scripting and Optimisation. We've completed the first three parts of the tutorial, and have only 4 and 5 left to go before we're done! I'm hoping to make this one of the most complete tutorials on the web. I'm constantly updating it (well, I'm meant to) and if anyone has any comments or suggestions or omissions, let me know.

This tutorial is constantly being written as I learn new things in VRML. I'm not an expert, but I'm certainly learning. I just hope this page is of some use to you. It's not intended as a be-all and end-all reference guide. It's only meant to get you started. Once you've got the basics from here, I suggest you go away and learn the detail, either from the specification or from the Annotated VRML 2.0 Reference Manual.

Please note, all the examples in this tutorial (and everything else on this site) are tested with Netscape 4.05 and Cosmo Player 2.1. I don't have time to try the examples out in other browsers, so if there are any problems, let me know. If something doesn't seem right, just mail me.

You might be interested to know that the the bottom of this page, there is a link to a zipfile of this tutorial, so you can download and go through it offline.

Part 1: The Basics

Getting Started
The very first things you need to know to get started, including the basic file structure.
In The Beginning...
Covering the basic WorldInfo and Shape nodes, and how to get a simple box in your world.
Spin Spin Sugar
Co-ordinate systems, axes, and transformations.
Keeping Up Appearances
Appearances, materials and textures; changing the look of your objects.
The Shape Of Things To Come
Basic geometry nodes: boxes, spheres, cones, cylinders and text.
Get Off My Land!
Escaping to the outside world.
Techy Stuff
Essentials of fields, events, routes, and prototypes.

Part 2: Adding Realism

I Can See My House From Here!
Adding cameras to your scenes.
Over The Hills And Far Away...
Giving your world some distance with background and fog.
The Church of Noise
Adding sound and music to your worlds.
Objects Of Desire
Advanced shapes, like Extrusions, IndexedFaceSets, and ElevationGrids.
Are You Normal?
Normals, colours, and so on for the advanced objects.
Light Of My Life
Adding proper lighting to your worlds, and making it work, too.
Slightly Rippled, With A Flat Underside
Advanced texturing with textureCoordinates and TextureTransforms.
Move Over I'll Drive
Customising your world with the NavigationInfo node.
Let's Twist Again...
Using the Billboard node to create user-facing geometry, and some more uses of the humble Transform node.

Part 3: Bringing Your Worlds To Life

More Power, Igor!
A review of the basics of VRML animation.
There's Klingons On The Starboard Bow...
Using environmental sensors.
It's Rude To Point
Getting input with pointing-device sensors.
How to use interpolators for animation.
A Change Is As Good As A Rest
Changing the appearance of your world with bindable nodes.
It's Life, Jim, But Not As We Know It
Creating advanced behaviours with Script nodes.
Smack My Switch Up
Changing the world around with Switch nodes.

Part 4: Scripting with ECMAscript

More Tea, Vicar?
An introduction to programming with ECMAScript.


Quick Node Reference
The full syntax of every node.
File Structure Summary
A summary of the VRML file structure.
Tutorial Index
What is covered where.
Download Tutorial 296k
If you want to read this tutorial offline, you can download a zipfile of the whole lot.
Beware! Long filenames!

Sitemap © Copyright 1999 Vapour Technology - vrmlguide@vapourtech.com