Table of Contents Previous Chapter Details Viewpoint Slideshow Next Chapter Details X3D Resources

X3D Example Archives: Basic, development

Additive Subtractive Light example These scenes help to demonstrate trial technology and develop new nodes for the X3D Specifications. They support the efforts of the X3D Working Group.
X3D Scenes Descriptions
Additive Subtractive Light This example tests various color combination capabilities, and also demonstrating that filtering (negative colors) are not supported in the X3D/VRML color model. Discussion follows. There are 2 ways to combine colors: Additive (e.g. a TV screen, overlapping spotlights, or pointillist art), for example [red + green = yellow] [1 0 0 + 0 1 0 = 1 1 0]. Subtractive (e.g. mixing paints or stacking filters), for example [white background + yellow filter + cyan filter = green] [1 1 1 + 0 0 -1 + -1 0 0 = 0 1 0].
AllVRML 97 Nodes List all VRML nodes in a single nonrendering scene as a convenient simple test for translation programs. Used for early development of X3D-Edit and Xj3D.
Amela Example Scene Amela example developed at VRST 99. Place mouse over geometry to light the Cylinder. PointLight is coincident with the Sphere.
Arc 2D Component Prototype X3D Geometry2D component node, implemented as prototype for backwards compatibility with VRML 97. Arc2D specifies a 2D linear circular arc.
Boolean Sequencer Example This example shows how to use the BooleanSequencer prototype in an animated scenario.
Boolean Sequencer Prototype BooleanSequencer is modeled after ScalarInterpolator and generates true or false values.
Braden Prototype Initialize Example Default color red, overridden color green: example answer to email question showing how to initialize a node field when creating a ProtoInstance.
Camera Examples Camera, CameraShot and CameraMove examples that demonstrate storyboard capabilities and precise camera operation. This is a developmental effort for potential X3D Specification improvement.
Camera Prototypes Camera, CameraShot and CameraMove prototypes that demonstrate storyboard capabilities and precise camera operation. This is a developmental effort for potential X3D Specification improvement.
Camera Shape Simple video camera shape
Coordinate Interpolator 2D Example Example to interpolate a Vector2FloatArray - click geometry to activate animation loop.
Coordinate Interpolator 2D Prototype CoordinateInterpolator2D prototype declaration, to interpolate across an array of Vector2FloatArray/MFVec2f values to produce an interpolated Vector2FloatArray - click text to see example.
ECMAScript Annex Example 2 A simple script example with no visible rendering results.
Event Utility Examples Event utility node examples for boolean filtering and other event utility nodes.
Event Utility Prototypes Event utility node prototypes for boolean filtering and other event utility nodes.
Example Extern Proto - 1 Show example ExternProto syntax for a nonexistent prototype with simple-type fields.
Example Extern Proto - 2 Show example ExternProto syntax for a nonexistent prototype with node-type fields.
Geometry 2D Component Examples Examples showing native use of X3D Geometry2D component nodes (Arc2D ArcClose2D Circle2D Disk2D Polyline2D Polypoint2D Rectangle2D TriangleSet2D), implemented as prototypes for backwards compatibility with VRML 97. Also provides Unfilled ProtoInstance versions of some nodes since FillProperties not possible in VRML 97. 2D nodes are considered particularly helpful for CADPart geometry and building user interfaces such as Heads-Up Displays (HUDs).
Geometry 2D Component Extern Protos ExternProto declarations and examples for developmental use showing X3D Geometry2D component nodes (Arc2D ArcClose2D Circle2D Disk2D Polyline2D Polypoint2D Rectangle2D TriangleSet2D), implemented as prototypes for backwards compatibility with VRML 97. Also provides Unfilled ProtoInstance versions of some nodes since FillProperties not possible in VRML 97. 2D nodes are considered particularly helpful for CADPart geometry and building user interfaces such as Heads-Up Displays (HUDs).
Geometry 2D Component Prototypes X3D Geometry2D component nodes, implemented as prototypes for developmental use to provide backwards compatibility with VRML 97. Arc2D specifies a 2D linear circular arc. ArcClose2D specifies a portion of a circle. Circle2D specifies a 2D circular line. Disk2D specifies a 2D circular disk. Polyline2D specifies 2D line segments. Polypoint2D specifies 2D point array. Rectangle2D specifies a 2D rectangle. TriangleSet2D specifies 2D triangles. 2D nodes are considered particularly helpful for CADPart geometry and building user interfaces such as Heads-Up Displays (HUDs).
Header Example Nonrendering example showing X3D profile and component definitions.
Hello Siggraph 2000 A simple VRML/X3D scene-graph example.
Hello Siggraph 2003 A simple VRML/X3D scene graph example for May 2000 WWW symposium.
Hello World Simple X3D example
Hello WWW 9 A simple VRML/X3D scene graph example for May 2000 WWW symposium.
Hello X3D Day 2001 A simple VRML/X3D scene-graph example.
Hello X3D Trademark Simple example showing spinning globe and X3D™ trademark text. X3D (tm) is a trademark of the Web3D Consortium Inc. X3D stands for Extensible 3D Graphics (X3D), an encoding of VRML using XML. X3D has been defined since 1998. Trademark registration pending. VRML is the Virtual Reality Modeling Language (VRML), International Standard ISO/IEC 14772-1:1997. XML is the Extensible Markup Language (XML), a Recommendation of the World Wide Web Consortium (W3C).
Import Export Syntax Demonstrate IMPORT/EXPORT syntax. Better examples needed, split across 2 files for separate IMPORT and EXPORT.
Integer Sequencer Example This example shows how to use the IntegerSequencer prototype in an animated scenario.
Integer Sequencer Prototype This proto, modeled after a ScalarInterpolator, generates an array of integer values based on the input fraction and keys.
Key Sensor Activation Key Switch Test A simple scene to show KeySensor functionality using Text nodes.
Key Sensor Activation Key Switch Test Interactive A simple scene to show KeySensor functionality using Interactive Profile.
Key Sensor Activation Key Switch Test Interchange A simple scene to show KeySensor functionality using Core Profile.
Lfov Display Exemplars Simple X3D example
Load Sensor Example LoadSensor test: default initial view means no functionality, active view means load in progress, final view means LoadSensor (and loading) success.
Load Sensor Prototype LoadSensor prototype for VRML 97 use. Assumes correct loading of resources and provides output events based on timeOut delay.
LODlevel Changed Example Example use of (proposed) LOD level_changed outputOnly field to trigger loading of Inline nodes in subsequent levels.
Material Example Material node example for X3D-Edit MaterialEditor, which uses Scene Access Interface (SAI) externally to select/deselect different shapes, axes and lights while modifying Material values.
Metadata Examples Examples showing use of new X3D Metadata nodes in Core component (MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString). Also provided: external prototype definitions for backwards compatibility with VRML 97.
Metadata Prototypes New X3D Metadata nodes in Core component (MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString) implemented as prototypes for backwards compatibility with VRML 97.
Orbiter A simple VRML/X3D scene graph example, used to illustrate and discuss schema suitability for X3D.
Physical Unit Representation Prototypes Prototypes to demonstrate functionality for Real-Length Representation nodes.
Pixel Texture Interpolator Prototype Create Script prototype to modify a PixelTexture as an image morph
Position Interpolator 2D Example Example to interpolate a Vector2Float value - click geometry to activate animation loop.
Position Interpolator 2D Prototype PositionInterpolator2D prototype declaration to pairwise interpolate across an array of Vector2Float/SFVec2f values to produce a single Vector2Float value - click text to see example.
Profile Example Interchange List of nodes available in a strictly compliant Interchange profile scene. Only Background renders in this example, other nodes have null values.
Proto Instance Example Simple PROTO example, includes Node as a field for PROTO
Proto MFNode Sensor Example Nonrendering test scene for sensor relationships inside a prototype declaration to verify multiple MFNode relationships.
Proto Tag Dtd Declaration Examples Provides Prototype XML-tag-definition examples to demonstrate DTD modularization and extensibility in X3D scenes. Also see SpinGroupInternalSubsetDeclaration.x3d
Proxy Shape Example Collision node, child test case: can reorder children as Shape Proxy Shape or other variations without problems.
Quad Tree Examples Show four ways of solving the QuadTree problem using native XML tags, PROTOs, IDREF/USE and MFNode children compatibly - view XML source to see DTD internal-subset declarations.
Rendering Component Examples Examples showing use of new X3D Rendering component nodes (IndexedTriangleFanSet IndexedTriangleSet IndexedTriangleStripSet LineSet TriangleFanSet TriangleSet TriangleStripSet), implemented as prototypes for backwards compatibility with VRML 97.
Rendering Component Extern Proto Definitions Examples showing use of new X3D Rendering component nodes (IndexedTriangleFanSet IndexedTriangleSet IndexedTriangleStripSet LineSet TriangleFanSet TriangleSet TriangleStripSet), implemented as prototypes for backwards compatibility with VRML 97.
Rendering Component Prototypes Prototype implementations of X3D Rendering component nodes (IndexedTriangleFanSet IndexedTriangleSet IndexedTriangleStripSet LineSet TriangleFanSet TriangleSet TriangleStripSet) implemented as prototypes for backwards compatibility with VRML 97.
Scene Node Prototype Expose functionality of Browser class in Java/ECMAscript annexes of VRML 97 specification. Consider promotion to a native node in X3D/VRML 200x scenes.
Schema Test Test scene for obscure schema validation cases.
Script Syntax Example Test Script node syntax example, testing sample values of various types with simple escaping of apostrophe and quotation mark characters, with results shown on Browser console output.
Shape Child Routing Example Show routing of a node as an input to a Script - success shows a Sphere, failure shows a Box.
Spin Group Internal Subset Declaration SpinGroup PROTO example content to test DTD modularization and extensibility - view XML source to see DTD internal-subset declarations.
Test Color Count Scene to test detection of mismatched color-value size by translation stylesheet X3dToVrml97.xslt
Test Container Field Values Test default and improperly overridden containerField values.
Test Diagnostic Overloaded Child Nodes Test error diagnostics for multiple Appearance child nodes, since this possibility is no longer precluded by DTD or Schema due to addition of Shader nodes.
Test Doctype A simple X3D scene to test XML declaration and DOCTYPE declaration syntax.
Test Field Checks Ensure X3dToVrml97 xsl translator properly diagnoses content errors with field, fieldValue tags. Does not produce a legal/viewable scene.
Test Json Encoding Test scene to ensure that X3dToJson xslt stylesheet translator properly converts X3D source into JavaScript Object Notation (JSON).
Test Metadata Nodes Test parentage and type checking of MetadataNodes.
Test Orientation Interpolator Size Test ability to handle large OrientationInterpolator sizes.
Test Proto Interface Node Scope Test override of color values in prototypes and scripts. Color code: red = left-most default prototype interface, yellow = middle ProtoInstance fieldValue, green = Script initialization of middle ProtoInstance, blue = right-side default prototype instance.
Test Prototype Interpolators Test case for Prototype PositionInterpolator OrientationInterpolator, expected behavior: is for both sets of test Text to move identically.
Test Regular Expression Checks Conformance test for regular expression checks. Tests are performed by build.xml target processScenes.regularExpressionChecks.
Test Schematron Diagnostics Test Schematron diagnostics capabilities for detecting various content errors and style warnings.
Test Viewpoint Jump Conformance Test for Viewpoint: immediate switching (jump=true) and smooth animation (jump=false). Press PgUp/PgDn or touch geometry to change viewpoints.
Text Examples Show different escape-character text examples for embedded quotation marks.
Understanding Scene Graphs - Touch To Light Put mouse (or pointing device) over ball to turn on light. Demonstration example used in Doctor Dobb's Journal (DDJ) article.
Unquoted Tokens Navigation Info And Font Style This scene tests whether enclosing "quote marks" can be omitted for three tokenized fields in X3D. The X3dToVrml97.xsl translator does this for FontStyle family, FontStyle justify and NavigationInfo type.
USE - example Simple example showing how to DEF and USE nodes for efficient "copy by reference."
Viewpoint Group Example Example to test ViewpointGroup, which contains Viewpoint and ViewpointGroup nodes, allowing nested lists and viewpoint scoping in viewpoint lists.
Viewpoint Group Prototype ViewpointGroup contains Viewpoint and ViewpointGroup nodes, allowing nested lists and viewpoint scoping in viewpoint lists. This is a developmental example for potential specification improvement. It is needed because (a) currently specified rules for X3D/VRML node binding state that behavior of child Viewpoints beneath Switch/LOD/etc. is undefined, and (b) browser viewpoint list display behavior is undefined.
Viewpoint Group Test Test browser support for ViewpointGroup node
Welcome To WWW 9 A simple example VRML/X3D scene graph, easily modifiable for demonstration at WWW9 Amsterdam.
Wrapper Tags Example Demonstrate and test field-name wrapper tags. Links to document "Wrapper Tags Considered Harmful." Scene includes 21 nodes, 34 open/close element tags, 44 wrapper tags, producing 78 scene-graph tags total if wrapper tags are required.
X3D Header Prototype Syntax Examples X3D scene header and prototype syntax examples. This example header indicates that the content is XML encoded, follows the Interactive Profile and explicitly lists additional necessary components. The X3D header may also contain additional semantic information. The remainder of this scene contains example Prototype declaration and instancing.
X3D Retreat Proto Exercise Solutions to the Proto Exercise posed by Chris Marrin of SONY at the May 2000 X3D Retreat. This exercise includes intentionally illegal VRML and does not render.

Online at http://www.web3d.org/x3d/content/examples/Basic/development

Master source code archive is under subversion control at
http://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Basic/development

Table of Contents Previous Chapter Details Viewpoint Slideshow Next Chapter Details X3D Resources

Also available: current and archived nightly builds and distributions of these examples, all published under an Open-Source License.

The X3D Resources: Examples page and Savage Developers Guide provide more information about the production of this archive.