Table of Contents Previous Chapter Summary Chapter Viewpoint Slideshow Javadoc for translated .java source Next Chapter Summary X3D Resources

X3D Example Archives: Basic, development

Additive Subtractive Light example

These scene examples support specification development, player implementations, and demonstration of exemplar X3D capabilities.

These scenes help to demonstrate trial technology and develop new nodes for the X3D Specifications. They support the efforts of the X3D Working Group.

  83 X3D Scenes       Scene Descriptions
AdditiveSubtractiveLight 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].
AllVrml97Nodes 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.
AmelaExampleScene Amela Example Scene Amela example developed at VRST 99. Place mouse over geometry to light the Cylinder. PointLight is coincident with the Sphere.
Arc2dComponentPrototype Arc 2D Component Prototype X3D Geometry2D component node, implemented as prototype for backwards compatibility with VRML 97. Arc2D specifies a 2D linear circular arc.
BooleanSequencerExample Boolean Sequencer Example This example shows how to use the BooleanSequencer prototype in an animated scenario.
BooleanSequencerPrototype Boolean Sequencer Prototype BooleanSequencer is modeled after ScalarInterpolator and generates true or false values.
BradenPrototypeInitializeExample 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.
CameraExamples 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.
CameraPrototypes Camera Prototypes Camera, CameraShot and CameraMovement prototypes that demonstrate storyboard capabilities and precise camera operation. This is a developmental effort for potential X3D Specification improvement.
CameraShape Camera Shape Simple video camera shape
CoordinateInterpolator2dExample Coordinate Interpolator 2D Example Example to interpolate a Vector2FloatArray - click geometry to activate animation loop.
CoordinateInterpolator2dPrototype 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.
ECMAScriptAnnexExample2 ECMAScript Annex Example 2 A simple script example with no visible rendering results.
EventUtilityExamples Event Utility Examples Event utility node examples for boolean filtering and other event utility nodes.
EventUtilityPrototypes Event Utility Prototypes Event utility node prototypes for boolean filtering and other event utility nodes.
ExampleExternPrototype1 Example Extern Prototype 1 Show example ExternProto syntax for a nonexistent prototype with simple-type fields.
ExampleExternPrototype2 Example Extern Prototype 2 Show example ExternProto syntax for a nonexistent prototype with node-type fields.
Geometry2dComponentExamples 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).
Geometry2dComponentExternProtos 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).
Geometry2dComponentPrototypes 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).
HeaderExample Header Example Nonrendering example showing X3D profile and component definitions.
HelloSiggraph2000 Hello Siggraph 2000 A simple VRML/X3D scene-graph example.
HelloSiggraph2003 Hello Siggraph 2003 A simple VRML/X3D scene graph example for May 2000 WWW symposium.
HelloWorld Hello World Simple X3D example
HelloWWW9 Hello WWW 9 A simple VRML/X3D scene graph example for May 2000 WWW symposium.
HelloX3dDay2001 Hello X3D Day 2001 A simple VRML/X3D scene-graph example.
HelloX3dTrademark 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).
ImportExportSyntax Import Export Syntax Demonstrate IMPORT/EXPORT syntax. Better examples needed, split across 2 files for separate IMPORT and EXPORT.
IntegerSequencerExample Integer Sequencer Example This example shows how to use the IntegerSequencer prototype in an animated scenario.
IntegerSequencerPrototype Integer Sequencer Prototype This proto, modeled after a ScalarInterpolator, generates an array of integer values based on the input fraction and keys.
KeySensorActivationKeySwitchTest Key Sensor Activation Key Switch Test A simple scene to show KeySensor functionality using Text nodes.
KeySensorActivationKeySwitchTestInteractive Key Sensor Activation Key Switch Test Interactive A simple scene to show KeySensor functionality using Interactive Profile.
KeySensorActivationKeySwitchTestInterchange Key Sensor Activation Key Switch Test Interchange A simple scene to show KeySensor functionality using Core Profile.
LfovDisplayExemplars Lfov Display Exemplars Simple X3D example
LoadSensorExample Load Sensor Example LoadSensor test: default initial view means no functionality, active view means load in progress, final view means LoadSensor (and loading) success.
LoadSensorPrototype Load Sensor Prototype LoadSensor prototype for VRML 97 use. Assumes correct loading of resources and provides output events based on timeOut delay.
LODlevelChangedExample LODlevel Changed Example Example use of (proposed) LOD level_changed outputOnly field to trigger loading of Inline nodes in subsequent levels.
MaterialExample 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.
MetadataExamples 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.
MetadataPrototypes Metadata Prototypes New X3D Metadata nodes in Core component (MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString) implemented as prototypes for backwards compatibility with VRML 97.
Orbiter Orbiter A simple VRML/X3D scene graph example, used to illustrate and discuss schema suitability for X3D.
PhysicalUnitRepresentationPrototypes Physical Unit Representation Prototypes Prototypes to demonstrate functionality for Real-Length Representation nodes.
PixelTextureInterpolatorPrototype Pixel Texture Interpolator Prototype Create Script prototype to modify a PixelTexture as an image morph
PositionInterpolator2dExample Position Interpolator 2D Example Example to interpolate a Vector2Float value - click geometry to activate animation loop.
PositionInterpolator2dPrototype 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.
ProfileExampleInterchange 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.
ProtoInstanceExample Proto Instance Example Simple PROTO example, includes Node as a field for PROTO
ProtoMFNodeSensorExample Proto MFNode Sensor Example Nonrendering test scene for sensor relationships inside a prototype declaration to verify multiple MFNode relationships.
ProtoTagDtdDeclarationExamples Proto Tag Dtd Declaration Examples Provides Prototype XML-tag-definition examples to demonstrate DTD modularization and extensibility in X3D scenes. Also see SpinGroupInternalSubsetDeclaration.x3d
ProxyShapeExample Proxy Shape Example Collision node, child test case: can reorder children as Shape Proxy Shape or other variations without problems.
QuadTreeExamples 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.
RenderingComponentExamples 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.
RenderingComponentExternProtoDefinitions 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.
RenderingComponentPrototypes 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.
SceneNodePrototype 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.
SchemaTest Schema Test Test scene for obscure schema validation cases.
ScriptSyntaxExampleTest 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.
ShapeChildRoutingExample Shape Child Routing Example Show routing of a node as an input to a Script - success shows a Sphere, failure shows a Box.
SpinGroupInternalSubsetDeclaration Spin Group Internal Subset Declaration SpinGroup PROTO example content to test DTD modularization and extensibility - view XML source to see DTD internal-subset declarations.
TestColorCount Test Color Count Scene to test detection of mismatched color-value size by translation stylesheet X3dToVrml97.xslt
TestContainerFieldValues Test Container Field Values Test default and improperly overridden containerField values.
TestDiagnosticOverloadedChildNodes 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.
TestDoctype Test Doctype A simple X3D scene to test XML declaration and DOCTYPE declaration syntax.
TestFieldChecks Test Field Checks Ensure X3dToVrml97 xsl translator properly diagnoses content errors with field, fieldValue tags. Does not produce a legal/viewable scene.
TestJsonEncoding Test Json Encoding Test scene to ensure that X3dToJson xslt stylesheet translator properly converts X3D source into JavaScript Object Notation (JSON).
TestMetadataNodes Test Metadata Nodes Test parentage and type checking of MetadataNodes.
TestOrientationInterpolatorSize Test Orientation Interpolator Size Test ability to handle large OrientationInterpolator sizes.
TestProtoInterfaceNodeScope 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.
TestPrototypeInterpolators Test Prototype Interpolators Test case for Prototype PositionInterpolator OrientationInterpolator, expected behavior: is for both sets of test Text to move identically.
TestRegularExpressionChecks Test Regular Expression Checks Conformance test for regular expression checks. Tests are performed by build.xml target processScenes.regularExpressionChecks.
TestSchematronDiagnostics Test Schematron Diagnostics Test Schematron diagnostics capabilities for detecting various content errors and style warnings.
TestViewpointJump 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.
TextExamples Text Examples Show different escape-character text examples for embedded quotation marks.
UnderstandingSceneGraphsTouchToLight 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.
UnquotedTokensNavigationInfoAndFontStyle 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.
UseNodeExample Use Node Example Simple example showing how to DEF and USE nodes for efficient "copy by reference."
ViewpointGroupExample Viewpoint Group Example Example to test ViewpointGroup, which contains Viewpoint and ViewpointGroup nodes, allowing nested lists and viewpoint scoping in viewpoint lists.
ViewpointGroupPrototype 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.
ViewpointGroupTest Viewpoint Group Test Test browser support for ViewpointGroup node
WelcomeToWWW9 Welcome To WWW 9 A simple example VRML/X3D scene graph, easily modifiable for demonstration at WWW9 Amsterdam.
WrapperTagsExample 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.
X3dHeaderPrototypeSyntaxExamples 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.
X3dRetreatProtoExercise 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

Validate XHTML 1.1

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 Summary Chapter Viewpoint Slideshow Javadoc for translated .java source Next Chapter Summary 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.