Moving Worlds VRML 2.0 Node Changes from VRML 1.0

Draft #2, May 30, 1996

This document provides a very brief list of the changes to the set of predefined node types for Moving Worlds. It briefly describes all the newly added nodes, summarizes the changes to VRML 1.0 nodes, and lists the VRML 1.0 nodes that have been deleted in Moving Worlds. (For fuller descriptions of each node type, click the type name to link to the relevant portion of the Moving Worlds specification proposal.) Finally, this document briefly describes the new field types in Moving Worlds.

New Node Types

The new node types are listed by category, using the same categorization used by the Moving Worlds specification:

Grouping Nodes

Collision
Tells the browser whether or not given pieces of geometry can be navigated through.
Transform
Groups nodes together under a single coordinate system, or "frame of reference"; incorporates the fields of the old Separator node.

Browser Information

In place of the old Info node type, Moving Worlds provides several new node types to give specific information about the scene to the browser:

Background
Provides a shaded plane and/or distant geometry to be used as a backdrop, drawn behind the displayed scene.
NavigationInfo
Provides hints to the browser about what kind of viewer to use (walk, examiner, fly, etc.), suggested average speed of travel, a radius around the camera for use by collision detection, and an indication of whether the browser should turn on a headlight.
Viewpoint
Specifies an interesting location in a local coordinate system from which a user might wish to view the scene. Replaces the former PerspectiveCamera node.
WorldInfo
Provides the scene's title and other information about the scene (such as author and copyright information), in a slightly more structured manner than a VRML 1.0 Info node.

Lights and Lighting

Fog
Describes global lighting attributes such as ambient lighting, light attenuation, and fog.

Sound

Sound
Defines a sound source that emits sound primarily in a 3D space.

Shapes

Shape
A node whose fields specify a set of geometry nodes and a set of property nodes to apply to the geometry.

Geometry

ElevationGrid
Provides a compact method of specifying an irregular "ground" surface.
Extrusion
A compact representation of extruded shapes and solids of rotation.
Text
Replaces VRML 1.0's AsciiText node; has many more options, to allow easy use of non-English text.

Geometric Properties

Color
Defines a set of RGB colors to be used in the color fields of various geometry nodes.

Appearance

Appearance
Gathers together all the appearance properties for a given Shape node.

Geometric Sensors

ProximitySensor
Generates events when the camera moves within a bounding box of a specified size around a specified point.
ClickSensor
Generates events when the user moves the pointing device across an associated piece of geometry, and when the user clicks on said geometry.
PlaneSensor
Generates events that interpret a user's click-and-drag as translation in two dimensions.

Special Nodes

ColorInterpolator
Interpolates intermediate values from a given list of color values.
CoordinateInterpolator
Interpolates intermediate values from a given list of 3D vectors.
IndexInterpolator
Interpolates intermediate integer values for use in changing the active child of a Switch node.
NormalInterpolator
Interpolates intermediate normalized vectors from a given list of 3D vectors.
OrientationInterpolator
Interpolates intermediate absolute rotations from a given list of rotation amounts.
PositionInterpolator
Interpolates intermediate values from a given list of 3D vectors, suitable for a series of translations.
ScalarInterpolator
Interpolates intermediate values from a given list of floating-point numbers.
Script
Contains a program which can process incoming events and generating outgoing ones.
TimeSensor
Generates events at a given time or at given intervals.

Changed Node Types

Almost all node types have been changed in one way or another -- if nothing else, most can now send and receive simple events. The most far-reaching changes, however, are in the new approaches to grouping nodes: in particular, Separators have been replaced by Transforms, which incorporate the fields of the now-defunct Transform node, and Groups no longer allow state to leak. The other extensive changes are in the structure of geometry-related nodes (which now occur only as fields in a Shape node). See the section of the spec titled "Structuring the Scene Graph" for details.

Deleted Node Types

The following VRML 1.0 node types have been removed from Moving Worlds:

New Field Types

In addition to all of the other changes, Moving Worlds introduces a couple of new field types:

Contact rikk@best.com. cmarrin@sgi.com, or gavin@acm.org with questions or comments.
This URL: http://vrml.sgi.com/moving-worlds/Overview/nodechanges.html.