to X3D Resources
  

X3D for Web Authors Examples Archive

  
to Web3D Consortium home page

X3D for Web Authors is an introductory reference textbook for learning Extensible 3D (X3D) Graphics. Online resources include X3D authoring tools and this open-source model archive.


Zip archive 16 Chapters, 250 Models X3D Resources

Chapter 01 - Technical Overview Chapter 02 - Geometry Primitives Chapter 03 - Grouping
Chapter 04 - Viewing Navigation Chapter 05 - Appearance Material Textures Chapter 06 - Geometry Points Lines Polygons
Chapter 07 - Event Animation Interpolation Chapter 08 - User Interactivity Chapter 09 - Event Utilities Scripting
Chapter 10 - Geometry 2D Chapter 11 - Lighting Environmental Effects Chapter 12 - Environment Sensor Sound
Chapter 13 - Geometry Triangles Quadrilaterals Chapter 14 - Prototypes Chapter 15 - Metadata
Kelp Forest Exhibit    

  Chapter Links   X3D Scenes
  Chapter 01 - Technical Overview
X3D for Web Authors book X3D for Web Authors slidesets, videos and the complete Chapter 1 Technical Overview are available online via X3dGraphics.com. The Getting Started and X3D-Edit Update slidesets describe good ways to begin. X3d for Web Authors video course is online
All of these examples were created using the X3D-Edit authoring tool. A published paper "Computer Graphics Teaching Support using X3D" describes how X3D is used to teach introductory 3D in university courses. Together these assets can be used to learn X3D.
  Chapter 02 - Geometry Primitives

Geometry Primitives

Shape nodes can contain one geometry node and one Appearance node. Geometry primitives include the Box, Cone, Cylinder, Sphere and Text nodes. The supporting Chapter 2 slideset and course videos are available online via X3dGraphics.com.

  Chapter 03 - Grouping
Coordinate Axes (North South East West)

Grouping nodes help to organize the scene graph, can establish relative coordinate systems, and can contain most other kinds of X3D nodes.

Grouping nodes include the Anchor, Billboard, Collision, Group, StaticGroup, Switch and Transform nodes. The Inline node is related, containing nodes loaded from another X3D scene retrieved via a local or online url address.

The supporting Chapter 3 slideset and course videos are available online via X3dGraphics.com.

  Chapter 04 - Viewing Navigation
Anchor comparison, view from front Course slidesets, videos and the complete Chapter 1 Technical Overview are available online via X3dGraphics.com. Anchor comparison, oblique view from right side
Only one NavigationInfo and one Viewpoint node can be active a time, with order controlled via a binding stack. The supporting Chapter 4 slideset and course videos are available online via X3dGraphics.com.
  Chapter 05 - Appearance Material Textures
FillProperties Hatch Style LineProperties Linetype Options MovieTexture Authoring Options ImageTexture Example PixelTexture Snowman

Appearance is associated with specific geometry within a shared Shape node.

Appearance for shapes is defined by Material, TwoSidedMaterial, ImageTexture, MovieTexture, PixelTexture and MultiTexture nodes. Appearance and texture properties are controlled by FillProperties, LineProperties, TextureProperties, and TextureTransform/MultiTextureTransform nodes.

The supporting Chapter 5 slideset and course videos are available online via X3dGraphics.com.

  Chapter 06 - Geometry Points Lines Polygons

Color Per Vertex Examples

Many kinds of geometry can be created using PointSet, LineSet/IndexedLineSet, IndexedLineSet, ElevationGrid and Extrusion nodes.

Geometric properties are controlled by Color/ColorRGBA, Coordinate/CoordinateDouble, Normal, TextureCoordinate/TextureCoordinateGenerator and MultiTextureCoordinate nodes. The supporting Chapter 6 slideset and course videos are available online via X3dGraphics.com.

  Chapter 07 - Event Animation Interpolation

Dolphin Wireframe: Coordinate Interpolator Morphing

Event animation and interpolation is accomplished by ROUTE connections that pass events between nodes. Strong typing requirements ensure that only valid values are allowed to modify the scene graph.

The TimeSensor node produces output stimulus events that track the passage of time intervals using the computer clock. Interpolation values are produced by ScalarInterpolator, ColorInterpolator, PositionInterpolator/PositionInterpolator2D, OrientationInterpolator, NormalInterpolator and CoordinateInterpolator/CoordinateInterpolator2D nodes. The supporting Chapter 7 slideset and course videos are available online via X3dGraphics.com.

  Chapter 08 - User Interactivity
User Interactivity Sensor Nodes

User interactivity is accomplished by sensing user actions, which create events that are sent via ROUTE connections.

Sensor output values are produced by LoadSensor, CylinderSensor, PlaneSensor, SphereSensor, KeySensor and StringSensor nodes.

The supporting Chapter 8 slideset and course videos are available online via X3dGraphics.com.

  Chapter 09 - Event Utilities Scripting
IntegerSequencer example:  Road Work Ahead!

Event utility nodes simplify data-type conversion of events when producing animation chains between nodes. These include BooleanFilter, BooleanSequencer, BooleanToggle, IntegerSequencer, IntegerTrigger and TimeTrigger, which are illustrated in the quick-reference sheet X3D Event Utility Nodes: Field Event Diagrams.

The Script node node allows authors to define new functionality produced by JavaScript or Java code. Field declarations define inputOnly, outputOnly, initializeOnly and inputOutput access and types for each field.

The supporting Chapter 9 slideset and course videos are available online via X3dGraphics.com.

  Chapter 10 - Geometry 2D

Geometry2D nodes simplify creation of simple planar shapes. They include Arc2D/ArcClose2D, Circle2D, Disk2D, Polyline2D, Polypoint2D, Rectangle2D and TriangleSet2D.

The supporting Chapter 10 slideset and course videos are available online via X3dGraphics.com.

X3D Geometry2D nodes are planar
  Chapter 11 - Lighting Environmental Effects
DirectionalLight Diagram

Lights illuminate geometry in a scene relative to the user's view. Lighting nodes include DirectionalLight, PointLight, SpotLight, and the active NavigationInfo headlight. Environmental effects include Background, TextureBackground, Fog and LocalFog. Lights, NavigationInfo, background nodes and fog nodes are each bound nodes, meaning that only one of each can be active at a time.

The supporting Chapter 11 slideset and course videos are available online via X3dGraphics.com.

  Chapter 12 - Environment Sensor Sound
Sound node coverage visualization Event-producing environmental sensors include LoadSensor, ProximitySensor, and VisibilitySensor. Audio nodes include Sound for aural spatialization and AudioClip for identifying sound files. MovieTexture nodes can also be used as an audio soundtrack source. ProximitySensor Visualization
The supporting Chapter 12 slideset and course videos are available online via X3dGraphics.com.

  Chapter 13 - Geometry Triangles Quadrilaterals

Low-level high-performance nodes for geometry definition and fast rendering include TriangleSet/IndexedTriangleSet, TriangleFanSet/IndexedTriangleFanSet, TriangleStripSet/IndexedTriangleStripSet, and QuadSet/IndexedQuadSet. Special definition rules apply to each node in order to best match underlying graphics hardware requirements.

The supporting Chapter 13 slideset and course videos are available online via X3dGraphics.com.

Nonplanar Polygons
  Chapter 14 - Prototypes
MaterialModulator prototype demonstration       ViewFrustum prototype demonstration

Authors can create prototype declarations and instances to define new X3D nodes. Prototypes are built using ProtoDeclare or ExternProtoDeclare definitions with ProtoInstance nodes.

The supporting Chapter 14 slideset and course videos are available online via X3dGraphics.com.

  Chapter 15 - Metadata
Metadata (book with question mark)

Metadata is about data relating to other data. Typed metadata information can annotate any X3D node, either for use offline or for queries within an active scene graph at run time. Metadata nodes include MetadataDouble, MetadataFloat, MetadataInteger, MetadataString, MetadataSet, and (in X3D version 3.3) MetadataBoolean.

The supporting Chapter 15 Metadata Information is available online via X3dGraphics.com.

  Kelp Forest Exhibit
Kelp Forest Exhibit

The Kelp Forest Exhibit is a large student-produced project that illustrates how X3D can build and integrate a large collection of individual Web-based models. The overall scene that integrates all these individual X3D models is Kelp Forest Main.

The paper Teaching 3D Modeling and Simulation: Virtual Kelp Forest Case Study describes how this group effort was accomplished. Comprehensive modeling efforts such as the Kelp Forest Exhibit provide an excellent way to organize course work and student projects.


Point of contact:
Don Brutzman (brutzman at nps.edu)
License
Content Catalog
Valid XHTML 1.0! Autogenerated 2 December 2012
http://X3dGraphics.com/examples/X3dForWebAuthors

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.