|
Anchor Appearance Arc2D ArcClose2D AudioClip Background Billboard BooleanFilter BooleanSequencer BooleanToggle BooleanTrigger Box Circle2D Collision Color ColorInterpolator ColorRGBA component Cone connect Contour2D ContourPolyline2D Coordinate CoordinateDouble CoordinateInterpolator CoordinateInterpolator2D Cylinder CylinderSensor DirectionalLight Disk2D ElevationGrid EspduTransform EXPORT ExternProtoDeclare Extrusion field fieldValue FillProperties Fog FontStyle GeoCoordinate GeoElevationGrid GeoLocation GeoLOD GeoMetadata GeoOrigin GeoPositionInterpolator GeoTouchSensor GeoViewpoint Group HAnimDisplacer HAnimHumanoid HAnimJoint HAnimSegment HAnimSite head ImageTexture IMPORT IndexedFaceSet IndexedLineSet IndexedTriangleFanSet IndexedTriangleSet IndexedTriangleStripSet Inline IntegerSequencer IntegerTrigger IS KeySensor LineProperties LineSet LoadSensor LOD Material meta MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString MovieTexture MultiTexture MultiTextureCoordinate MultiTextureTransform NavigationInfo Normal NormalInterpolator NurbsCurve NurbsCurve2D NurbsOrientationInterpolator NurbsPatchSurface NurbsPositionInterpolator NurbsSet NurbsSurfaceInterpolator NurbsSweptSurface NurbsSwungSurface NurbsTextureCoordinate NurbsTrimmedSurface OrientationInterpolator PixelTexture PlaneSensor PointLight PointSet Polyline2D Polypoint2D PositionInterpolator PositionInterpolator2D ProtoBody ProtoDeclare ProtoInstance ProtoInterface ProximitySensor ReceiverPdu Rectangle2D ROUTE ScalarInterpolator Scene Script Shape SignalPdu Sound Sphere SphereSensor SpotLight StaticGroup StringSensor Switch Text TextureBackground TextureCoordinate TextureCoordinateGenerator TextureTransform TimeSensor TimeTrigger TouchSensor Transform TransmitterPdu TriangleFanSet TriangleSet TriangleSet2D TriangleStripSet Viewpoint VisibilitySensor WorldInfo X3D
accessType Definitions type Definitions XML data types Range Intervals Field Type Definitions Credits and Translations X3D Resources X3D Scene Authoring Hints
SFBool MFBool SFColor MFColor SFColorRGBA MFColorRGBA SFInt32 MFInt32 SFFloat MFFloat SFDouble MFDouble SFImage MFImage SFNode MFNode SFRotation MFRotation SFString MFString SFTime MFTime SFVec2f MFVec2f SFVec2d MFVec2d SFVec3f MFVec3f SFVec3d MFVec3d SFVec4f MFVec4f SFVec4d MFVec4d SFMatrix3f MFMatrix3f SFMatrix3d MFMatrix3d SFMatrix4f MFMatrix4f SFMatrix4d MFMatrix4d
accessType and type Credits and Translations X3D Resources Anchor Anchor is a Grouping node that can contain most nodes. When the user selects any of the geometry contained by the Anchor node, the browser either jumps to another viewpoint (similar to HTML bookmark) or else loads content (such as X3D, an image or HTML) specified by the url field. Newly loaded content completely replaces current content, if the value of parameter field indicates using the same window.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: X3D Architecture 20.2.1 Overview of pointing device sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#OverviewOfPointingDeviceSensors
Hint: X3D Architecture 20.2.3 Activating and manipulating pointing device sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#Activatingandmanipulating
Hint: apply containerField='watchList' when parent node is LoadSensor.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.children [children accessType inputOutput, type MFNode array, empty list] [X3DChildNode]
Grouping nodes contain an ordered list of children nodes.
Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
Hint: X3D Architecture 10.2.1 Grouping and children node types, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodesdescription [description accessType inputOutput, type SFString CDATA #IMPLIED]
Author-provided prose that describes intended purpose of this node.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).url [url accessType inputOutput, type MFString CDATA #IMPLIED]
Address of replacement world, or #ViewpointDEFName within the current scene, or alternate Web resource, activated by the user selecting Shape geometry within the Anchor children nodes.
Hint: jump to a world's internal viewpoint by appending viewpoint name (e.g. #ViewpointName, someOtherCoolWorld.x3d#GrandTour).
Hint: jump to a local viewpoint by only using viewpoint name (e.g. #GrandTour).
Hint: binding a different Viewpoint triggers an isBound event that can initiate other user-arrival reactions via event chains to interpolators or scripts.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Hint: pop up a new window with url value as follows: "JavaScript:window.open('somePage.html','popup','width=240,height=240');location.href='HelloWorld.x3d'"
Hint: X3D Scene Authoring Hints, urls https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urlsparameter [parameter accessType inputOutput, type MFString CDATA #IMPLIED]
If provided, parameter tells the X3D player where to to redirect the loaded url.
Hint: set parameter value as target=_blank to load the target url into a new browser frame.
Hint: set parameter value as target=frame_name to load target url into another browser frame.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks. "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Interchange profile hint: this field may be ignored, applying the default value regardless.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN (children | watchList) "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Appearance Appearance specifies the visual properties of geometry by containing the Material, ImageTexture/MovieTexture/PixelTexture, FillProperties, LineProperties, programmable shader nodes (ComposedShader, PackagedShader, ProgramShader) and TextureTransform nodes.
Hint: insert a Shape node before adding geometry or Appearance.
Interchange profile hint: only Material and ImageTexture children are allowed.
Hint: DEF/USE copies of a single node can provide a similar "look + feel" style for related shapes in a scene.
Hint: Advanced uses can contain MultiTexture or MultiTextureTransform.
Hint: X3D Architecture 12.2.2 Appearance node https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Appearancenode
Hint: X3D Architecture 17.2.2 Lighting model https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/lighting.html#LightingmodelSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.containerField [containerField type NMTOKEN "appearance"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Arc2D Arc2D is a line-based geometry node that defines a linear circular arc with center (0,0) in X-Y plane, with angles measured starting at positive x-axis and sweeping towards positive y-axis.
Hint: Material emissiveColor in corresponding Appearance is used for rendering lines.
Warning: lines are not lit, are not texture-mapped, and do not participate in collision detection.
Warning: use a different Material emissiveColor than the Background color, otherwise geometry is invisible.
Hint: adding LineProperties to the corresponding Appearance node can modify the rendering style of these lines.
Hint: insert a Shape node before adding geometry or Appearance.
Warning: requires X3D profile='Full' or else include <component name='Geometry2D' level='2'/>
Examples: X3D Example Archives, X3D for Web Authors, Chapter 10 Geometry 2D https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter10Geometry2DSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.radius [radius accessType initializeOnly, type SFFloat CDATA "1"] (0,+β)
circle radius, of which the arc is a portion.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.startAngle [startAngle accessType initializeOnly, type SFFloat CDATA "0"] [0,2pi]
Arc extends from startAngle counterclockwise to endAngle, in radians.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadianendAngle [endAngle accessType initializeOnly, type SFFloat CDATA "1.570796"] [0,2pi]
Arc extends from startAngle counterclockwise to endAngle, in radians.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadiancontainerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ArcClose2D ArcClose2D is a polygonal geometry node that defines a linear circular arc, closed by PIE or CHORD line segments, with center (0,0) in X-Y plane with angles measured starting at positive x-axis and sweeping towards positive y-axis.
Hint: insert a Shape node before adding geometry or Appearance.
Warning: requires X3D profile='Full' or else include <component name='Geometry2D' level='2'/>
Examples: X3D Example Archives, X3D for Web Authors, Chapter 10 Geometry 2D https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter10Geometry2DSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.radius [radius accessType initializeOnly, type SFFloat CDATA "1"] (0,+β)
circle radius, of which the arc is a portion.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.startAngle [startAngle accessType initializeOnly, type SFFloat CDATA "0"] [0,2pi]
Arc extends from startAngle counterclockwise to endAngle, in radians.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadianendAngle [endAngle accessType initializeOnly, type SFFloat CDATA "1.570796"] [0,2pi]
Arc extends from startAngle counterclockwise to endAngle, in radians.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadianclosureType [closureType accessType initializeOnly, type SFString CDATA (PIE|CHORD) "PIE"]
Defines whether pair of line segments connect to center (PIE), or single line-segment chord connects arc endpoints (CHORD).
Warning: simple-geometry parameters cannot be changed after initial creation.solid [solid accessType initializeOnly, type SFBool (true|false) "false"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.
Warning: solid false not supported in VRML97.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources AudioClip AudioClip provides audio data used by parent Sound nodes.
Hint: add a parent Sound node first.
Hint: utilize DEF/USE references for multiple copies of a single AudioClip sound file in order to avoid multiple-download delays, reduce memory requirements, and maintain synchronization.
Hint: authors can provide multiple audio formats for the same audio track, with each source address listed separately in the url field.
Hint: player support for .wav format is required, .midi format is recommended, other formats are optional.
Hint: X3D Scene Authoring Hints:Audio https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Audio
Hint: apply containerField='watchList' when parent node is LoadSensor.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.description [description accessType inputOutput, type SFString CDATA #IMPLIED]
Author-provided prose that describes intended purpose of this node.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).url [url accessType inputOutput, type MFString CDATA #IMPLIED]
Location and filename of sound file or stream. Support for .wav format is required, .midi format is recommended, other formats are optional.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks. "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Hint: X3D Scene Authoring Hints, urls https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urlsloop [loop accessType inputOutput, type SFBool (true|false) "false"]
Repeat indefinitely when loop=true, repeat only once when loop=false.pitch [pitch accessType inputOutput, type SFFloat CDATA "1.0"] (0,+β)
Multiplier for the rate at which sampled sound is played. Changing pitch also changes playback speed.
Hint: changing the pitch field does not trigger a duration_changed event. Playback interval may vary but duration of the original media data remains unmodified.startTime [startTime accessType inputOutput, type SFTime CDATA "0"]
Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.stopTime [stopTime accessType inputOutput, type SFTime CDATA "0"]
Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
Warning: An active TimeSensor node ignores set_cycleInterval and set_startTime events.
Warning: An active TimeSensor node ignores set_stopTime event values less than or equal to startTime.duration_changed [duration_changed accessType outputOnly, type SFTime CDATA #FIXED ""] [0,+β)
or -1. duration_changed is length of time in seconds for one cycle of media stream.
Warning: duration value of -1 implies that media data has not yet loaded or is unavailable for some reason.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
Hint: duration_changed is an SFTime duration interval, normally nonnegative, and not an absolute clock time.
Hint: changing the pitch field does not trigger a duration_changed event. Playback interval may vary but duration of the original media data remains unmodified.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
isActive true/false events are sent when playback starts/stops.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isPaused [isPaused accessType outputOnly, type SFBool #FIXED ""]
isPaused true/false events are sent when AudioClip is paused/resumed.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.pauseTime [pauseTime accessType inputOutput, type SFTime CDATA "0"]
When time now >= pauseTime, isPaused becomes true and AudioClip becomes paused. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.resumeTime [resumeTime accessType inputOutput, type SFTime CDATA "0"]
When resumeTime becomes <= time now, isPaused becomes false and AudioClip becomes active. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.elapsedTime [elapsedTime accessType outputOnly, type SFTime CDATA #FIXED ""] [0,+β)
Current elapsed time since AudioClip activated/running, cumulative in seconds, and not counting any paused time.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
Hint: elapsedTime is a nonnegative SFTime duration interval, not an absolute clock time.containerField [containerField type NMTOKEN "source"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Background Background simulates ground and sky, using vertical arrays of wraparound color values. Background can also provide url addresses for backdrop textures on all six sides.
Hint: Background, Fog, NavigationInfo, TextureBackground and Viewpoint are bindable nodes, meaning that no more than one of each node type can be active at a given time.
Warning: results are undefined if a bindable node (Background, Fog, NavigationInfo, OrthoViewpoint, TextureBackground, Viewpoint) is a contained descendant node of either LOD or Switch. Avoid this authoring pattern.
Hint: X3D Example Archives, Basic, Universal Media Panoramas https://www.web3d.org/x3d/content/examples/Basic/UniversalMediaPanoramasSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.skyColor [skyColor accessType inputOutput, type MFColor CDATA "0 0 0"]
Color of the sky at various angles on the sky sphere. First value is color of sky at 0.0 radians representing the zenith (straight up).
Hint: setting the same color at two consecutive angles produces a solid color band.
Warning: you must have one more skyColor value than skyAngle values.
Interchange profile hint: only one color might be rendered, others can be ignored.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColorskyAngle [skyAngle accessType inputOutput, type MFFloat CDATA #IMPLIED] [0,Ο]
The angle array values increase from 0.0 zenith (straight up) to Ο/2=1.570796 (horizon) to Ο=3.14159 (nadir).
Warning: you must have one more skyColor value than skyAngle values.
Warning: colors at skyAngle=0 are ignored.
Interchange profile hint: this field may be ignored, applying the default value regardless.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadiangroundColor [groundColor accessType inputOutput, type MFColor CDATA #IMPLIED]
Color of the ground at the various angles on the ground partial sphere. First value is color of ground at 0.0 radians representing the nadir (straight down).
Hint: setting the same color at two consecutive angles produces a solid color band.
Warning: you must have one more groundColor value than groundAngle values.
Interchange profile hint: this field may be ignored, applying the default value regardless.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColorgroundAngle [groundAngle accessType inputOutput, type MFFloat CDATA #IMPLIED] [0,Ο/2]
The angle array values increase from 0.0 nadir (straight down) to Ο/2=1.570796 (horizon).
Warning: you must have one more groundColor value than groundAngle values.
Warning: colors at groundAngle=0 are ignored.
Interchange profile hint: this field may be ignored, applying the default value regardless.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadianfrontUrl [frontUrl accessType inputOutput, type MFString CDATA #IMPLIED]
Image background panorama between ground/sky backdrop and scene's geometry.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Interchange profile hint: this field may be ignored, applying the default value regardless.backUrl [backUrl accessType inputOutput, type MFString CDATA #IMPLIED]
Image background panorama between ground/sky backdrop and scene's geometry.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Interchange profile hint: this field may be ignored, applying the default value regardless.leftUrl [leftUrl accessType inputOutput, type MFString CDATA #IMPLIED]
Image background panorama between ground/sky backdrop and scene's geometry.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Interchange profile hint: this field may be ignored, applying the default value regardless.rightUrl [rightUrl accessType inputOutput, type MFString CDATA #IMPLIED]
Image background panorama between ground/sky backdrop and scene's geometry.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Interchange profile hint: this field may be ignored, applying the default value regardless.topUrl [topUrl accessType inputOutput, type MFString CDATA #IMPLIED]
Image background panorama between ground/sky backdrop and scene's geometry.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Interchange profile hint: this field may be ignored, applying the default value regardless.bottomUrl [bottomUrl accessType inputOutput, type MFString CDATA #IMPLIED]
Image background panorama between ground/sky backdrop and scene's geometry.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Interchange profile hint: this field may be ignored, applying the default value regardless.set_bind [set_bind accessType inputOnly, type SFBool #FIXED ""]
Input event set_bind=true makes this node active, input event set_bind=false makes this node inactive. Thus setting set_bind true/false will pop/push (enable/disable) this node.
Hint: paired node operations can be established by connecting set_bind and isBound fields of corresponding bindable nodes.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.bindTime [bindTime accessType outputOnly, type SFTime CDATA #FIXED ""]
event sent when node becomes active/inactive.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isBound [isBound accessType outputOnly, type SFBool #FIXED ""]
event true sent when node becomes active, event false sent when unbound by another node.
Hint: paired node operations can be established by connecting set_bind and isBound fields of corresponding bindable nodes.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Billboard Billboard is a Grouping node that can contain most nodes. Contained child geometry faces the user, rotating about the specified axis. Set axisOfRotation=0 0 0 to fully face the user's camera.
Hint: Put Billboard as close to the geometry as possible, nested inside Transform for local coordinate system.
Warning: don't put Viewpoint inside a Billboard.
Hint: insert a Shape node before adding geometry or Appearance.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.children [children accessType inputOutput, type MFNode array, empty list] [X3DChildNode]
Grouping nodes contain an ordered list of children nodes.
Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
Hint: X3D Architecture 10.2.1 Grouping and children node types, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodesaxisOfRotation [axisOfRotation accessType inputOutput, type SFVec3f CDATA "0 1 0"]
axisOfRotation direction is relative to local coordinate system.
Hint: axis 0 0 0 always faces viewer.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources BooleanFilter BooleanFilter selectively passes true, false or negated events.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting
Hint: X3D Event-Utility Node Diagrams https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting/X3dEventUtilityNodeEventDiagrams.pdfSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.set_boolean [set_boolean accessType inputOnly, type SFBool #FIXED ""]
set_boolean is the input value to be filtered.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.inputTrue [inputTrue accessType outputOnly, type SFBool #FIXED ""]
inputTrue only passes a true value, which occurs when set_boolean input is true.
Hint: inputTrue is an output event that can only provide a value of true.inputFalse [inputFalse accessType outputOnly, type SFBool #FIXED ""]
inputFalse only passes a false value, which occurs when set_boolean is false.
Hint: inputFalse is an output event that can only provide a value of false.inputNegate [inputNegate accessType outputOnly, type SFBool #FIXED ""]
inputNegate is an output event that provides an opposite value by negating set_boolean input.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources BooleanSequencer BooleanSequencer generates periodic discrete Boolean values. Authors can ROUTE value_changed output events to other Boolean attributes.
Hint: typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction
Hint: typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting
Hint: X3D Event-Utility Node Diagrams https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting/X3dEventUtilityNodeEventDiagrams.pdfSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.key [key accessType inputOutput, type MFFloat CDATA #IMPLIED]
Definition values for linear-interpolation function input intervals, in non-decreasing order and corresponding to a value in the keyValue array.
Warning: number of keys must match number of keyValues!
Warning: values in key array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
Hint: typical interval for values in key array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.keyValue [keyValue accessType inputOutput, type MFBool CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to an input-fraction value in the key array.
Warning: number of keys must match number of keyValues!set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
set_fraction selects input key for corresponding keyValue output.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type SFBool #FIXED ""]
Single intermittent output value determined by current key time and corresponding keyValue entry.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.previous [previous accessType inputOnly, type SFBool (true|false) ""]
Send previous output value in keyValue array, and reset internal fraction field to match corresponding value in key array.
Hint: this input event will "wrap around" boundary of keyValue array, i.e. continue from first to last if necessary.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.next [next accessType inputOnly, type SFBool (true|false) ""]
Send next output value in keyValue array, and reset internal fraction field to match corresponding value in key array.
Hint: this input event will "wrap around" boundary of keyValue array, i.e. continue from last to first if necessary.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources BooleanToggle BooleanToggle maintains state and negates output when a true input is provided.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting
Hint: X3D Event-Utility Node Diagrams https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting/X3dEventUtilityNodeEventDiagrams.pdfSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.set_boolean [set_boolean accessType inputOnly, type SFBool #FIXED ""]
If input event set_boolean is true, flip state by negating current value of the toggle field
Hint: for logical consistency, input event set_boolean false has no effect (under review as part of Mantis issue 519).
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.toggle [toggle accessType inputOutput, type SFBool (true|false) "false"]
Persistent state value that gets toggled or reset.
Hint: directly setting a new value for the toggle field generates a corresponding toggle_changed output event.toggle_changed [toggle_changed accessType outputOnly, type SFInt32 CDATA #FIXED ""]
toggle_changed provides boolean output event matching updated toggle value when input event set_boolean true is received.
Hint: directly setting a new value for the toggle field generates a corresponding toggle_changed output event.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources BooleanTrigger BooleanTrigger converts time events to boolean true events.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting
Hint: X3D Event-Utility Node Diagrams https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting/X3dEventUtilityNodeEventDiagrams.pdfSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.set_triggerTime [set_triggerTime accessType inputOnly, type SFTime CDATA #FIXED ""]
set_triggerTime provides input time event, typical event sent is TouchSensor touchTime.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.triggerTrue [triggerTrue accessType outputOnly, type SFBool #FIXED ""]
triggerTrue outputs a true value whenever a triggerTime event is received.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Box Box is a geometry node specifying a rectangular cuboid.
Hint: Cuboid https://en.wikipedia.org/wiki/Cuboid
Hint: Parallelepiped https://en.wikipedia.org/wiki/Parallelepiped
Hint: insert a Shape node before adding geometry or Appearance.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.size [size accessType initializeOnly, type SFVec3f CDATA "2 2 2"] (0,+β)
size x y z in meters.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.
Warning: solid false not supported in VRML97.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Circle2D Circle2D is a geometry node that defines a linear circle with center (0,0) in X-Y plane..
Hint: insert a Shape node before adding geometry or Appearance.
Warning: requires X3D profile='Full' or else include <component name='Geometry2D' level='2'/>
Examples: X3D Example Archives, X3D for Web Authors, Chapter 10 Geometry 2D https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter10Geometry2DSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.radius [radius accessType initializeOnly, type SFFloat CDATA "1"] (0,+β)
circle radius.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Collision Collision detects camera-to-object contact using current view and NavigationInfo avatarSize. Collision is a Grouping node that handles collision detection for its children. Collision can contain a single proxy child node for substitute collision-detection geometry.
Hint: proxy geometry is not rendered.
Hint: PointSet, IndexedLineSet, LineSet and Text are not collidable geometry do not trigger collisions.
Hint: improve performance using proxy for simpler contact-calculation geometry.
Hint: NavigationInfo types '"WALK" "FLY"' support camera-to-object collision detection.
Hint: insert a Shape node before adding geometry or Appearance.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.children [children accessType inputOutput, type MFNode array, empty list] [X3DChildNode]
Grouping nodes contain an ordered list of children nodes.
Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
Hint: X3D Architecture 10.2.1 Grouping and children node types, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodesbboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectenabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables collision detection for children and all descendants.
Hint: former name "collide" in VRML97 specification.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
isActive true/false events are sent when triggering the sensor. isActive=true when view-object collision occurs, isActive=false when view-object collision no longer occurs.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.collideTime [collideTime accessType outputOnly, type SFTime CDATA #FIXED ""]
Time of collision between camera (avatar) and geometry.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Color Color node defines a set of RGB color values that apply either to a sibling Coordinate|CoordinateDouble node, or else to a parent ElevationGrid node. Color is only used by ElevationGrid, IndexedFaceSet, IndexedLineSet, LineSet, PointSet, Triangle* and IndexedTriangle* nodes.
Hint: colors are often controlled by Material instead.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColorSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.color [color accessType inputOutput, type MFColor CDATA #IMPLIED]
The color field defines an array of 3-tuple RGB colors.containerField [containerField type NMTOKEN "color"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ColorInterpolator ColorInterpolator generates a range of color values. Authors can ROUTE value_changed output events to various color fields of Material or Color nodes.
Hint: typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction.
Hint: typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Color
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolationSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.key [key accessType inputOutput, type MFFloat CDATA #IMPLIED]
Definition values for linear-interpolation function input intervals, in non-decreasing order and corresponding to a value in the keyValue array.
Warning: number of keys must match number of keyValues!
Warning: values in key array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
Hint: typical interval for values in key array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.keyValue [keyValue accessType inputOutput, type MFColor CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to an input-fraction value in the key array.
Warning: number of keys must match number of keyValues!set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
set_fraction selects input key for corresponding keyValue output.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type SFColor CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ColorRGBA ColorRGBA node defines a set of RGBA color values that apply either to a sibling Coordinate|CoordinateDouble node, or else to a parent ElevationGrid node. ColorRGBA is only used by ElevationGrid, IndexedFaceSet, IndexedLineSet, LineSet, PointSet, Triangle* and IndexedTriangle* nodes.
Hint: colors are often controlled by Material instead.
Hint: alpha channel may be ignored under Interchange profile.
Warning: ColorRGBA requires Rendering component level 3 (alpha fully supported), Rendering component level 1 (alpha optional), otherwise Full profile.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColorSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.color [color accessType inputOutput, type MFColorRGBA CDATA #IMPLIED] [0,1]
The color field defines an array of 4-tuple RGBA colors.
Warning: ColorRGBA requires Rendering component level 3 (alpha fully supported), Rendering component level 1 (alpha optional), otherwise Full profile.containerField [containerField type NMTOKEN "color"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources component Each added component statement indicates needed scene functionality above the given X3D profile.
Hint: component statements are optional secondary children of head statement (add a head statement first).
Hint: X3D XML Encoding https://www.web3d.org/documents/specifications/19776-1/V3.3/Part01/concepts.html#Header
Warning: the COMPONENT statement is capitalized in the ClassicVRML Encoding.
Hint: X3D Architecture 7.2.5.4 COMPONENT statement https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#COMPONENTStatementSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadataname [name type ENUMERATION #REQUIRED]
Provides name of this component, as defined in corresponding X3D Specification component Introduction.
Example: X3D Architecture 10.1.1 Name for Grouping component https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#Name
Hint: all nodes, components and levels are already supported in Full profile.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionslevel [level type SFInt32 #REQUIRED]
Necessary level of support for this scene, as defined in corresponding Support table for a given node's component.
Hint: for example specification definitions, X3D Architecture Grouping component, 10.5 Support levels https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#SupportLevelsclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Cone Cone is a geometry node.
Hint: cone https://en.wikipedia.org/wiki/Cone
Hint: insert a Shape node before adding geometry or Appearance.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.height [height accessType initializeOnly, type SFFloat CDATA "2"] (0,+β)
Size in meters.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.bottomRadius [bottomRadius accessType initializeOnly, type SFFloat CDATA "1"] (0,+β)
Size in meters.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.side [side accessType initializeOnly, type SFBool (true|false) "true"]
Whether to draw sides (other inside faces are not drawn).
Warning: since this field has accessType initializeOnly, the value cannot be changed after initial creation.bottom [bottom accessType initializeOnly, type SFBool (true|false) "true"]
Whether to draw bottom (other inside faces are not drawn).
Warning: since this field has accessType initializeOnly, the value cannot be changed after initial creation.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.
Warning: solid false not supported in VRML97.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources connect connect statements define event-routing connections between node fields defined inside a ProtoBody declaration back to corresponding ProtoInterface fields. To define each Prototype connection between a ProtoInterface field and a ProtoBody node field, add one or more connect statements within each IS statement.
Warning: IS/connect elements are only allowed within ProtoDeclare body definitions.
Warning: nodeField and protoField types must match.
Hint: any matching field type can be connected, including SFNode or MFNode.
Hint: if provided, value of the outer ProtoInstance fieldValue overrides default value of inner IS/connect nodeField (defined within the original prototype declaration) when first creating a new ProtoInstance node.
Hint: see the IS and ProtoBody statements.
Hint: X3D Architecture 4.4.4 Prototype semantics, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#PROTOdefinitionsemantics
Examples: X3D Example Archives, X3D for Web Authors, Chapter 14 Prototypes https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter14PrototypesSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadatanodeField [nodeField type NMTOKEN #REQUIRED]
Name of field within this node which IS CONNECTed to the ancestor ProtoDeclare field definition.
Warning: do not define a nodeField connection to an internal DEF, USE, class or containerField, since they are not fields in a node that can be modified by events at run time.
Warning: do not connect more than one interface protoField to a single field within this node.
Warning: nodeField and protoField types must match.protoField [protoField type NMTOKEN #REQUIRED]
Name of parent ProtoDeclare field definition connecting to field in this node.
Hint: use multiple IS/connect elements for multiple fan-out from a single protoField interface.
Warning: nodeField and protoField types must match.class [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Contour2D Contour2D groups a set of curve segments into a composite contour. The children segments form a closed loop, with first point of first child repeated as last point of last child, and last point of segment repeated as first point of consecutive segments. The children segments are type NurbsCurve2D or ContourPolyline2D, enumerated in the consecutive order of contour topology.
Warning: Contour2D is not a renderable geometry node.
Hint: Contour2D is used as the trimmingContour field of the NurbsTrimmedSurface node.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.containerField [containerField type NMTOKEN "trimmingContour"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ContourPolyline2D ContourPolyline2D defines a linear curve segment as part of a trimming contour in the u-v domain of a NURBS surface. NurbsCurve2D and ContourPolyline2D nodes that together form a closed contour, defined in the u-v parametric space of a NURBS surface, may be used as children in a Contour2D node.
Warning: ContourPolyline2D is not a renderable geometry node.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.controlPoint [controlPoint accessType inputOutput, type MFVec2d CDATA #IMPLIED]
controlPoint specifies the end points of each segment of the piecewise linear curve.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Coordinate Coordinate builds geometry by defining a set of 3D coordinate (triplet) point values. Coordinate is used by IndexedFaceSet, IndexedLineSet, LineSet, PointSet, Triangle* and IndexedTriangle* nodes. Coordinate is also used by HAnimHumanoid, HAnimSegment, and various Nurbs nodes. Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.point [point accessType inputOutput, type MFVec3f CDATA #IMPLIED]
point contains a set of 3D coordinate (triplet) point values.containerField [containerField type NMTOKEN "coord"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources CoordinateDouble CoordinateDouble builds geometry by defining a set of 3D coordinate (triplet) point values. CoordinateDouble is used by IndexedFaceSet, IndexedLineSet, LineSet, PointSet, Triangle* and IndexedTriangle* nodes. CoordinateDouble is also used by NurbsPositionInterpolator and NurbsOrientationInterpolator.
Warning: CoordinateDouble requires NURBS component level 1, otherwise Full profile.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.point [point accessType inputOutput, type MFVec3d CDATA #IMPLIED]
point contains a set of 3D coordinate (triplet) point values.containerField [containerField type NMTOKEN "coord"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
CoordinateInterpolatorCoordinateInterpolator linearly interpolates among a list of 3-tuple MFVec3f arrays, producing a single MFVec3f array that is fractional average between two nearest arrays in the list. Authors can ROUTE value_changed output events to a <Coordinate> node's 'point' attribute or another MFVec3f attribute.
Hint: typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction.
Hint: typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolationSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.key [key accessType inputOutput, type MFFloat CDATA #IMPLIED]
Definition values for linear-interpolation function input intervals, in non-decreasing order and corresponding to a value in the keyValue array.
Hint: number of keyValues must be an integer multiple of the number of keys!
Hint: keyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
Warning: values in key array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
Hint: typical interval for values in key array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.keyValue [keyValue accessType inputOutput, type MFVec3f CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to an input-fraction value in the key array.
Hint: number of keyValues must be an integer multiple of the number of keys!
Hint: keyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
set_fraction selects input key for corresponding keyValue output.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type MFVec3f CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Hint: keyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
CoordinateInterpolator2DCoordinateInterpolator2D generates a series of SFVec2f or MFVec2f 2-tuple float values. Authors can ROUTE value_changed output events to a SFVec2f or MFVec2f attribute.
Hint: typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction.
Hint: typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
Warning: requires X3D profile='Full' or else include <component name='Interpolation' level='3'/>
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolationSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.key [key accessType inputOutput, type MFFloat CDATA #IMPLIED]
Definition values for linear-interpolation function input intervals, in non-decreasing order and corresponding to a value in the keyValue array.
Hint: number of keyValues must be an integer multiple of the number of keys!
Hint: keyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
Warning: values in key array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
Hint: typical interval for values in key array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.keyValue [keyValue accessType inputOutput, type MFVec2f CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to an input-fraction value in the key array.
Hint: number of keyValues must be an integer multiple of the number of keys!
Hint: keyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
set_fraction selects input key for corresponding keyValue output.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type MFVec2f CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Hint: keyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Cylinder Cylinder is a geometry node.
Hint: Cylinder https://en.wikipedia.org/wiki/Cylinder
Hint: insert a Shape node before adding geometry or Appearance.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.height [height accessType initializeOnly, type SFFloat CDATA "2"] (0,+β)
Size in meters.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.radius [radius accessType initializeOnly, type SFFloat CDATA "1"] (0,+β)
Size in meters.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.top [top accessType initializeOnly, type SFBool (true|false) "true"]
Whether to draw top (inside faces are never drawn).
Warning: since this field has accessType initializeOnly, the value cannot be changed after initial creation.side [side accessType initializeOnly, type SFBool (true|false) "true"]
Whether to draw sides (inside faces are never drawn).
Warning: since this field has accessType initializeOnly, the value cannot be changed after initial creation.bottom [bottom accessType initializeOnly, type SFBool (true|false) "true"]
Whether to draw bottom (inside faces are never drawn).
Warning: since this field has accessType initializeOnly, the value cannot be changed after initial creation.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.
Warning: solid false not supported in VRML97.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources CylinderSensor CylinderSensor converts pointer motion (for example, a mouse or wand) into rotation values using an invisible cylinder aligned with local Y-axis.
Hint: this sensor detects user interactions affecting peer nodes and their child geometry.
Hint: add semi-transparent surrounding geometry to see the effect of the sensor.
Hint: initial relative bearing of pointer drag determines whether cylinder sides or end-cap disks are used for manipulation.
Hint: X3D Architecture 20.2.1 Overview of pointing device sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#OverviewOfPointingDeviceSensors
Hint: X3D Architecture 20.2.2 Drag sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#DragSensors
Hint: X3D Architecture 20.2.3 Activating and manipulating pointing device sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#Activatingandmanipulating
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter08UserInteractivitySearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.description [description accessType inputOutput, type SFString CDATA #IMPLIED]
Author-provided prose that describes intended purpose of this node.
Hint: include space characters since a description is not a DEF identifier. Write short phrases that make descriptions clear and readable.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.minAngle [minAngle accessType inputOutput, type SFFloat CDATA "0"]
clamps rotation_changed events within range of min/max values
Hint: if minAngle > maxAngle, rotation is not clamped.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadianmaxAngle [maxAngle accessType inputOutput, type SFFloat CDATA "0"]
clamps rotation_changed events within range of min/max values
Hint: if minAngle > maxAngle, rotation is not clamped.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadiandiskAngle [diskAngle accessType inputOutput, type SFFloat CDATA "0.262" (15 degrees)]
Help decide rotation behavior from initial relative bearing of pointer drag: acute angle whether cylinder sides or end-cap disks of virtual-geometry sensor are used for manipulation.
Hint: diskAngle 0 forces disk-like behavior, diskAngle 1.570796 (90 degrees) forces cylinder-like behavior.autoOffset [autoOffset accessType inputOutput, type SFBool (true|false) "true"]
determines whether previous offset values are remembered/accumulated.offset [offset accessType inputOutput, type SFFloat CDATA "0"]
Sends event and remembers last value sensed.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
Select geometry by activating the pointing device (e.g. clicking the mouse) to generate isActive events. Output event isActive=true is sent when geometry is selected (e.g. when primary mouse button is pressed), output event isActive=false is sent when geometry is deselected (e.g. when primary mouse button is released).
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isOver [isOver accessType outputOnly, type SFBool #FIXED ""]
Hover over geometry by aiming the mouse (or pointing device) to generate isOver events. Sensor sends output event isOver=true event when pointing device moves over sensor's geometry, and later sends output event isOver=false event when pointing device moves off.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.rotation_changed [rotation_changed accessType outputOnly, type SFRotation CDATA #FIXED ""]
rotation_changed events equal sum of relative bearing changes plus offset value about Y-axis in local coordinate system.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.trackPoint_changed [trackPoint_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
trackPoint_changed events give intersection point of bearing with sensor's virtual geometry.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
Warning: trackPoint_changed events represent unclamped intersection points on plane surface. Browsers can interpret drags off of the surface in various ways. Note that translation_changed events are clamped by minPosition/maxPosition and thus may be preferable.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources DirectionalLight DirectionalLight defines parallel light rays that illuminate geometric shapes. Lighting illuminates all geometry except lines and points. By default, light scope only illuminates peer geometry and children nodes within the scene graph hierarchy. No source location is needed since rays are parallel from an infinitely distant source. DirectionalLight nodes do not attenuate with distance. Lights have no visible shape themselves and lighting effects continue through any intermediate geometry.
Hint: animate direction to simulate time-of-day sunlight effects.
Hint: the bound NavigationInfo controls whether headlight is enabled on/off.
Interchange profile hint: light might not be scoped by parent Group or Transform.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.on [on accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables this light source.color [color accessType inputOutput, type SFColor CDATA "1 1 1"] [0,1]
color of light, applied to colors of objects.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Colordirection [direction accessType inputOutput, type SFVec3f CDATA "0 0 -1"]
Orientation vector of light relative to local coordinate system.
Hint: animate direction to simulate time-of-day sunlight effects.intensity [intensity accessType inputOutput, type SFFloat CDATA "1"] [0,1]
Brightness of direct emission from the light.ambientIntensity [ambientIntensity accessType inputOutput, type SFFloat CDATA "0"] [0,1]
Brightness of ambient (nondirectional background) emission from the light.
Interchange profile hint: this field may be ignored, applying the default value regardless.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Disk2D Disk2D is a geometry node that defines a filled (or partially filled) planar circle with center (0,0) in X-Y plane.
Hint: insert a Shape node before adding geometry or Appearance.
Warning: requires X3D profile='Full' or else include <component name='Geometry2D' level='2'/>
Examples: X3D Example Archives, X3D for Web Authors, Chapter 10 Geometry 2D https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter10Geometry2DSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.innerRadius [innerRadius accessType initializeOnly, type SFFloat CDATA "0"] [0,+β)
Inner circle radius, greater than or equal to 0.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.outerRadius [outerRadius accessType initializeOnly, type SFFloat CDATA "1"] (0,+β)
Outer radius of circle, greater than or equal to inner radius.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.solid [solid accessType initializeOnly, type SFBool (true|false) "false"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.
Warning: solid false not supported in VRML97.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ElevationGrid ElevationGrid is a geometry node defining a rectangular height field, with default values for a 1m by 1m square at height 0. Vertices corresponding to ElevationGrid height values define quadrilaterals, which are placed above or below a flat surface.
Hint: the height array defines (xDimension-1)*(zDimension-1) quadrilaterals.
Warning: generated quadrilaterals can be nonplanar. Tessellation splits quadrilaterals into triangles along seam starting at initial vertex of the quadrilateral and proceeding to opposite vertex.
Hint: positive direction for normal of each triangle is on same side of the quadrilateral. Triangles are defined either counterclockwise or clockwise depending on value of ccw field.
Hint: ElevationGrid can contain Color|ColorRGBA, Normal and TextureCoordinate nodes.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.xDimension [xDimension accessType initializeOnly, type SFInt32 CDATA "2"] [0,+β)
Number of elements in the height array along X direction.
Hint: total horizontal x-axis distance equals (xDimension-1) * xSpacing.
Warning: xDimension < 2 means that ElevationGrid contains no quadrilaterals.zDimension [zDimension accessType initializeOnly, type SFInt32 CDATA "2"] [0,+β)
Number of elements in the height array along Z direction.
Hint: total horizontal z-axis distance equals (zDimension-1) * zSpacing.
Warning: zDimension < 2 means that ElevationGrid contains no quadrilaterals.xSpacing [xSpacing accessType initializeOnly, type SFFloat CDATA "1.0"] (0,+β)
Meters distance between grid-array vertices along X direction.
Hint: total horizontal x-axis distance equals (xDimension-1) * xSpacing.zSpacing [zSpacing accessType initializeOnly, type SFFloat CDATA "1.0"] (0,+β)
Meters distance between grid-array vertices along Z direction.
Hint: total lateral z-axis distance equals (zDimension-1) * zSpacing.height [height accessType initializeOnly, type MFFloat CDATA "0 0 0 0"]
Grid array of height vertices with upward direction along +Y axis, with xDimension rows and zDimension columns.
Hint: height array values are given in row-major order from left to right along X axis, then back to front along Z axis.set_height [set_height accessType inputOnly, type MFFloat CDATA #FIXED ""]
Grid array of height vertices with upward direction along +Y axis, with xDimension rows and zDimension columns.
Hint: height array values are given in row-major order from left to right along X axis, then back to front along Z axis.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
ccw defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/ClockwisecreaseAngle [creaseAngle accessType initializeOnly, type SFFloat CDATA "0"] [0,+β)
creaseAngle defines angle (in radians) for determining whether adjacent polygons are drawn with sharp edges or smooth shading. If angle between normals of two adjacent polygons is less than creaseAngle, smooth shading is rendered across the shared line segment.
Hint: creaseAngle=0 means render all edges sharply, creaseAngle=3.14159 means render all edges smoothly.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/Radiansolid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.colorPerVertex [colorPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Color node color values are applied to each point vertex (true) or per quadrilateral (false).
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColornormalPerVertex [normalPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Normal node vector values are applied to each point vertex (true) or per quadrilateral (false).
Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources EspduTransform EspduTransform is a networked Transform node that can contain most nodes. If activated, EspduTransform can send or receive Entity State Protocol Data Unit (PDU) packets using the IEEE Distributed Interactive Simulation (DIS) protocol. EspduTransform integrates functionality for the following DIS PDUs: EntityStatePdu, CollisionPdu, DetonatePdu, FirePdu, CreateEntity and RemoveEntity packets.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/DistributedInteractiveSimulation.pdf
Warning: requires X3D profile='Full' or else include <component name='DIS' level='1'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.marking [marking accessType inputOutput, type SFString CDATA #IMPLIED]
Maximum of 11 characters for simple entity label.entityID [entityID accessType inputOutput, type SFInt32 CDATA "0"]
entityID is unique ID for entity within that application.applicationID [applicationID accessType inputOutput, type SFInt32 CDATA "1"]
applicationID is unique for application at that site. Each simulation application that can respond to simulation management PDUs needs to have a unique applicationID.siteID [siteID accessType inputOutput, type SFInt32 CDATA "0"]
siteID of the participating LAN or organization.forceID [forceID accessType inputOutput, type SFInt32 CDATA "0"]
forceID determines the team membership of the issuing entity, and whether FRIENDLY OPPOSING or NEUTRAL or OTHER.entityKind [entityKind accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumerations value for whether entity is a PLATFORM, MUNITION, LIFE_FORM, ENVIRONMENTAL, CULTURAL_FEATURE, SUPPLY, RADIO, EXPENDABLE, SENSOR_EMITTER or OTHER.entityDomain [entityDomain accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumerations value for domain in which the entity operates: LAND, AIR, SURFACE, SUBSURFACE, SPACE or OTHER.entityCountry [entityCountry accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumerations value for country to which the design of the entity or its design specification is attributed.entityCategory [entityCategory accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumerations value for main category that describes the entity, semantics of each code varies according to domain. See DIS Enumerations values.entitySubCategory [entitySubCategory accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumerations value for particular subcategory to which an entity belongs based on the Category field. See DIS Enumerations values.entitySpecific [entitySpecific accessType inputOutput, type SFInt32 CDATA "0"]
Specific information about an entity based on the Subcategory field. See DIS Enumerations values.entityExtra [entityExtra accessType inputOutput, type SFInt32 CDATA "0"]
Any extra information required to describe a particular entity. The contents of this field shall depend on the type of entity represented.readInterval [readInterval accessType inputOutput, type SFTime CDATA "0.1"] [0,+β)
Seconds between read updates, 0 means no reading.
Hint: readInterval is a nonnegative SFTime duration interval, not an absolute clock time.writeInterval [writeInterval accessType inputOutput, type SFTime CDATA "1.0"] [0,+β)
Seconds between write updates, 0 means no writing (sending).
Hint: writeInterval is a nonnegative SFTime duration interval, not an absolute clock time.networkMode [networkMode accessType inputOutput, type SFString CDATA ( standAlone | networkReader | networkWriter ) standAlone]
Whether this entity is ignoring the network, sending DIS packets to the network, or receiving DIS packets from the network. (1) standAlone: ignore network but still respond to events in local scene. (2) networkReader: listen to network and read PDU packets at readInterval, act as remote copy of entity. (3) networkWriter: send PDU packets to network at writeInterval, act as master entity. Default value "standAlone" ensures that DIS network activation within a scene as networkReader or networkWriter is intentional.
Warning: do not wrap extra quotation marks around these SFString enumeration values, since "quotation" "marks" are only used for MFString values.isStandAlone [isStandAlone accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="local" (ignore network but still respond to local events)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isNetworkReader [isNetworkReader accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="remote" (listen to network as copy of remote entity)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isNetworkWriter [isNetworkWriter accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="master" (output to network as master entity at writeInterval)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.address [address accessType inputOutput, type SFString CDATA localhost]
Multicast network address, or else "localhost"
Example: 224.2.181.145.port [port accessType inputOutput, type SFInt32 CDATA "0"]
Network connection port number (EXAMPLE 3000) for sending or receiving DIS messages.
Example: 3000.multicastRelayHost [multicastRelayHost accessType inputOutput, type SFString CDATA #IMPLIED]
Fallback server address if multicast not available locally.
Example: track.nps.edu.multicastRelayPort [multicastRelayPort accessType inputOutput, type SFInt32 CDATA "0"]
Fallback server port if multicast not available locally.
Example: 8010.rtpHeaderExpected [rtpHeaderExpected accessType initializeOnly, type SFBool (true|false) "false"]
Whether RTP headers are prepended to DIS PDUs.isRtpHeaderHeard [isRtpHeaderHeard accessType outputOnly, type SFBool #FIXED ""]
Whether incoming DIS packets have an RTP header prepended.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
Have we received a network update recently?
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.timestamp [timestamp accessType outputOnly, type SFTime CDATA #FIXED ""]
DIS timestamp received from latest PDU update, converted to X3D SFTime units.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.translation [translation accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Position of children relative to local coordinate system, usually read from (or written to) remote, networked EspduTransform nodes.rotation [rotation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Orientation of children relative to local coordinate system, usually read from (or written to) remote, networked EspduTransform nodes.center [center accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Translation offset from origin of local coordinate system.scale [scale accessType inputOutput, type SFVec3f CDATA "1 1 1"]
Non-uniform x-y-z scale of child coordinate system, adjusted by center and scaleOrientation.scaleOrientation [scaleOrientation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Preliminary rotation of coordinate system before scaling (to allow scaling around arbitrary orientations).bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectlinearVelocity [linearVelocity accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Velocity of the entity relative to the rotating Earth in either world or entity coordinates, depending on the dead reckoning algorithm used.linearAcceleration [linearAcceleration accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Acceleration of the entity relative to the rotating Earth in either world or entity coordinates, depending on the dead reckoning algorithm used.deadReckoning [deadReckoning accessType inputOutput, type SFInt32 CDATA "0"]
Dead reckoning algorithm being used to project position/orientation with velocities/accelerations.isCollided [isCollided accessType outputOnly, type SFBool #FIXED ""]
Has a matching CollisionPDU reported a collision?
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.collideTime [collideTime accessType outputOnly, type SFTime CDATA #FIXED ""]
When were we collided with?
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isDetonated [isDetonated accessType outputOnly, type SFBool #FIXED ""]
Has a matching DetonationPDU reported a detonation?
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.detonateTime [detonateTime accessType outputOnly, type SFTime CDATA #FIXED ""]
When were we detonated?fired1 [fired1 accessType inputOutput, type SFBool (true|false) "false"]
Has the primary weapon (Fire PDU) been fired?fired2 [fired2 accessType inputOutput, type SFBool (true|false) "false"]
Has the secondary weapon (Fire PDU) been fired?firedTime [firedTime accessType outputOnly, type SFTime CDATA #FIXED ""]
When did we shoot a weapon (Fire PDU)?
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.fireMissionIndex [fireMissionIndex accessType inputOutput, type SFInt32 CDATA #FIXED ""]
munitionEntityID [munitionEntityID accessType inputOutput, type SFInt32 CDATA "0"]
munitionEntityID is unique ID for entity firing munition within that application.munitionApplicationID [munitionApplicationID accessType inputOutput, type SFInt32 CDATA "1"]
munitionApplicationID, unique for application at that site. Each simulation application that can respond to simulation management PDUs needs to have a unique applicationID.munitionSiteID [munitionSiteID accessType inputOutput, type SFInt32 CDATA "0"]
Munition siteID of the participating LAN or organization.munitionStartPoint [munitionStartPoint accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Initial point of the munition path from firing weapon to detonation or impact, in exercise coordinates.munitionEndPoint [munitionEndPoint accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Final point of the munition path from firing weapon to detonation or impact, in exercise coordinates.warhead [warhead accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumerations value for type of warhead on the munition.fuse [fuse accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumerations value for type of fuse on the munition.munitionQuantity [munitionQuantity accessType inputOutput, type SFInt32 CDATA "0"]
Quantity of munitions fired.firingRate [firingRate accessType inputOutput, type SFInt32 CDATA "0"]
Rate at which munitions are fired.firingRange [firingRange accessType inputOutput, type SFFloat CDATA "0"]
Range (three dimension, straight-line distance) that the firing entity's fire control system has assumed for computing the fire control solution if a weapon and if the value is knowncollisionType [collisionType accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumeration for type of collision: ELASTIC or INELASTIC.detonationLocation [detonationLocation accessType inputOutput, type SFVec3f CDATA "0 0 0"]
World coordinates for detonationLocationdetonationRelativeLocation [detonationRelativeLocation accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Relative coordinates for detonation locationdetonationResult [detonationResult accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumeration for type of detonation and result that occurred., if any.eventApplicationID [eventApplicationID accessType inputOutput, type SFInt32 CDATA "1"]
Simulation/exercise eventApplicationID is unique for events generated from application at that site. Each simulation application that can respond to simulation management PDUs needs to have a unique applicationID.eventEntityID [eventEntityID accessType inputOutput, type SFInt32 CDATA "0"]
For a given event, simulation/exercise entityID is a unique ID for a single entity within that application.eventNumber [eventNumber accessType inputOutput, type SFInt32 CDATA "0"]
Sequential number of each event issued by an application.
Warning: reuse of numbers may be necessary during long simulation exercises.eventSiteID [eventSiteID accessType inputOutput, type SFInt32 CDATA "0"]
Simulation/exercise siteID of the participating LAN or organization.articulationParameterCount [articulationParameterCount accessType inputOutput, type SFInt32 CDATA "0"]
Number of articulated parameters attached to this entity state PDU.articulationParameterDesignatorArray [articulationParameterDesignatorArray accessType inputOutput, type MFInt32 CDATA #IMPLIED]
Array of designators for each articulated parameter.articulationParameterChangeIndicatorArray [articulationParameterChangeIndicatorArray accessType inputOutput, type MFInt32 CDATA #IMPLIED]
Array of change counters, each incremented when an articulated parameter is updated.#IMPLIED]articulationParameterIdPartAttachedToArray [articulationParameterIdPartAttachedToArray accessType inputOutput, type MFInt32 CDATA #IMPLIED]
Array of ID parts that each articulated parameter is attached to.articulationParameterTypeArray [articulationParameterTypeArray accessType inputOutput, type MFInt32 CDATA #IMPLIED]
Array of type enumerations for each articulated parameter element.articulationParameterArray [articulationParameterArray accessType inputOutput, type MFFloat CDATA #IMPLIED]
Information required for representation of the entity's visual appearance and position of its articulated parts.
Hint: renamed as Variable Parameter in IEEE DIS 2012 revised standard.set_articulationParameterValue0 [set_articulationParameterValue0 accessType inputOnly, type SFFloat CDATA #FIXED ""]
Set element of user-defined payload array.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_articulationParameterValue1 [set_articulationParameterValue1 accessType inputOnly, type SFFloat CDATA #FIXED ""]
Set element of user-defined payload array.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_articulationParameterValue2 [set_articulationParameterValue2 accessType inputOnly, type SFFloat CDATA #FIXED ""]
Set element of user-defined payload array.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_articulationParameterValue3 [set_articulationParameterValue3 accessType inputOnly, type SFFloat CDATA #FIXED ""]
Set element of user-defined payload array.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_articulationParameterValue4 [set_articulationParameterValue4 accessType inputOnly, type SFFloat CDATA #FIXED ""]
Set element of user-defined payload array.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_articulationParameterValue5 [set_articulationParameterValue5 accessType inputOnly, type SFFloat CDATA #FIXED ""]
Set element of user-defined payload array.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_articulationParameterValue6 [set_articulationParameterValue6 accessType inputOnly, type SFFloat CDATA #FIXED ""]
Set element of user-defined payload array.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_articulationParameterValue7 [set_articulationParameterValue7 accessType inputOnly, type SFFloat CDATA #FIXED ""]
Set element of user-defined payload array.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.articulationParameterValue0_changed [articulationParameterValue0_changed accessType outputOnly, type SFFloat CDATA #FIXED ""]
Get element of user-defined payload array.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.articulationParameterValue1_changed [articulationParameterValue1_changed accessType outputOnly, type SFFloat CDATA #FIXED ""]
Get element of user-defined payload array.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.articulationParameterValue2_changed [articulationParameterValue2_changed accessType outputOnly, type SFFloat CDATA #FIXED ""]
Get element of user-defined payload array.articulationParameterValue3_changed [articulationParameterValue3_changed accessType outputOnly, type SFFloat CDATA #FIXED ""]
Get element of user-defined payload array.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.articulationParameterValue4_changed [articulationParameterValue4_changed accessType outputOnly, type SFFloat CDATA #FIXED ""]
Get element of user-defined payload array.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.articulationParameterValue5_changed [articulationParameterValue5_changed accessType outputOnly, type SFFloat CDATA #FIXED ""]
Get element of user-defined payload array.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.articulationParameterValue6_changed [articulationParameterValue6_changed accessType outputOnly, type SFFloat CDATA #FIXED ""]
Get element of user-defined payload array.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.articulationParameterValue7_changed [articulationParameterValue7_changed accessType outputOnly, type SFFloat CDATA #FIXED ""]
Get element of user-defined payload array.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).geoCoords [geoCoords accessType inputOutput, type SFVec3d CDATA "0 0 0"]
Geographic location (specified in current geoSystem coordinates) for children geometry (specified in relative coordinate system, in meters).
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources EXPORT EXPORT exposes a local node for ROUTE passing of event values when the current Scene is included via Inline by a parent external world. These connections allow event values to be exchanged via ROUTE statements between a parent model and a child Inline model.
Hint: you can place EXPORT statements after Scene tag to show interfaces at top.
Hint: see IMPORT statement for corresponding functionality in the parent external world.
Warning: EXPORT statements are not allowed in prototype declarations.
Warning: corresponding parent-scene IMPORT and child Inline-scene EXPORT statements are necessary in order to ROUTE values between a parent model and a child Inline model.
Hint: X3D Architecture 4.4.6 Import/Export semantics https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#ImportExportsemanticsSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadatalocalDEF [localDEF type IDREF #REQUIRED]
localDEF is the DEF name of the local node to be EXPORTed.AS #IMPLIED]
rename localDEF node AS a different name when exporting.
Hint: optional, default is to use same localDEF name.class [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ExternProtoDeclare ExternProtoDeclare refers to a ProtoDeclare node declaration provided in another file. ExternProtoDeclare interfaces are defined by <field> statements (without IS/connect statements).
Hint: ExternProtoDeclare is a definition only, add corresponding ProtoInstance nodes to create new instances.
Hint: ExternProtoDeclare url is of the form https://www.web3d.org/x3d/someWorld.x3d#ProtoName
Hint: X3D Scene Authoring Hints, Inlines and Prototypes https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#InlinesPrototypes
Warning: do not include a <ProtoInterface> element.
Warning: setting a value is not allowed for ExternProtoDeclare field declarations, since original ProtoDeclare initializations or local ProtoInstance fieldValue initializations take precedence.
Hint: X3D Architecture 7.2.5.9 EXTERNPROTO statement https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#EXTERNPROTOStatement
Hint: X3D Architecture 4.4.4 Prototype semantics, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#PROTOdefinitionsemantics
Examples: X3D Example Archives, X3D for Web Authors, Chapter 14 Prototypes https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter14PrototypesSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadataname [name type NMTOKEN #REQUIRED]
name of the ExternProtoDeclare (External Prototype Declaration) being referenced.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsurl [url accessType initializeOnly, type MFString CDATA #IMPLIED]
Location and filename of ProtoDeclare source declaration of interest. Multiple locations are more reliable, and including a Web address lets e-mail attachments work.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Hint: X3D Scene Authoring Hints, urls https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urlsappinfo [appinfo type SFString CDATA #IMPLIED]
Application information to provide simple description usable as a tooltip, similar to XML Schema appinfo tag.documentation [documentation type SFString CDATA #IMPLIED]
Documentation url for further information, similar to XML Schema documentation tag.class [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Extrusion Extrusion is a geometry node that sequentially stretches a 2D cross section along a 3D-spine path in the local coordinate system, creating an outer hull. Scaling and rotating the crossSection 2D outline at each control point can modify the outer hull of the Extrusion to produce a wide variety of interesting shapes.
Warning: take care to avoid defining parameter combinations that create self-intersecting, impossible or inverted geometry.
Hint: Extrusion https://en.wikipedia.org/wiki/Extrusion
Hint: insert a Shape node before adding geometry or Appearance.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.spine [spine accessType initializeOnly, type MFVec3f CDATA "0 0 0, 0 1 0"]
spine is a list of 3D points for a piecewise-linear curve forming a series of connected vertices, open or closed. This is the path along which the crossSection is extruded.
Hint: number of values must all match for 3-tuple spine points, 2-tuple scale values, and 4-tuple orientation values.
Warning: special care is needed if creating loops or spirals since self-intersecting, impossible or inverted geometry can result!
Warning: ensure that spine segments have non-zero length and are not coincident with each other.
Hint: if a spine is closed (or nearly closed) then the inner diameter usually needs to be greater than the corresponding crossSection width.crossSection [crossSection accessType initializeOnly, type MFVec2f CDATA "1 1, 1 -1, -1 -1, -1 1, 1 1"]
An ordered set of 2D points drawing a piecewise-linear curve and forming an X-Y planar series of connected vertices. The crossSection array defines a silhouette outline of the outer Extrusion surface.
Hint: the crossSection array can be open or closed (closed means that endpoints are coincident).
Hint: number of values must all match for 3-tuple spine points, 2-tuple scale values, and 4-tuple orientation values.
Warning: if the order of crossSection point definition does not match clockwise/counterclockwise setting of ccw field, then self-intersecting, impossible or inverted geometry can result!
Warning: avoid self-intersecting polygon line segments, otherwise defined geometry is irregular and rendering results are undefined (especially for end caps).scale [scale accessType initializeOnly, type MFVec2f CDATA "1 1"] (0,+β)
scale is a list of 2D-scale parameters applied at each spine-aligned cross-section plane.
Hint: number of values must all match for 3-tuple spine points, 2-tuple scale values, and 4-tuple orientation values.
Hint: if the scale array contains one value, it is applied at all spine-aligned crossSection planes.
Warning: zero or negative scale values not allowed.orientation [orientation accessType initializeOnly, type MFRotation CDATA "0 0 1 0"]
The orientation array is a list of axis-angle 4-tuple values applied at each spine-aligned cross-section plane.
Hint: if the orientation array contains a single 4-tuple value, it is applied at all spine-aligned crossSection planes.
Hint: number of values must all match for 3-tuple spine points, 2-tuple scale values, and 4-tuple orientation values.beginCap [beginCap accessType initializeOnly, type SFBool (true|false) "true"]
Whether beginning cap is drawn (similar to Cylinder top cap).
Warning: since this field has accessType initializeOnly, the value cannot be changed after initial creation.endCap [endCap accessType initializeOnly, type SFBool (true|false) "true"]
Whether end cap is drawn (similar to Cylinder bottom cap).
Warning: since this field has accessType initializeOnly, the value cannot be changed after initial creation.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
The ccw field indicates counterclockwise ordering of vertex-coordinates orientation.
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/Clockwiseconvex [convex accessType initializeOnly, type SFBool (true|false) "true"]
The convex field is a hint to renderers whether all polygons in a shape are convex (true), or possibly concave (false). A convex polygon is planar, does not intersect itself, and has all interior angles < 180 degrees.
Hint: concave is the opposite of convex.
Warning: concave or inverted geometry may be invisible when using default value convex=true, since some renderers use more-efficient algorithms to perform tessellation that may inadvertently fail on concave geometry.
Hint: select convex=false (i.e. concave) and solid=false (i.e. two-sided display) for greatest visibility of geometry.
Hint: convex polygon https://en.wikipedia.org/wiki/Convex_polygon
Hint: tessellation https://en.wikipedia.org/wiki/TessellationcreaseAngle [creaseAngle accessType initializeOnly, type SFFloat CDATA "0.0"] [0,+β)
creaseAngle defines angle (in radians) where adjacent polygons are drawn with sharp edges or smooth shading. If angle between normals of two adjacent polygons is less than creaseAngle, smooth shading is rendered across the shared line segment.
Hint: creaseAngle=0 means render all edges sharply, creaseAngle=3.14159 means render all edges smoothly.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/Radiansolid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.set_crossSection [set_crossSection accessType inputOnly, type MFVec2f CDATA #FIXED ""]
An ordered set of 2D points drawing a piecewise-linear curve and forming an X-Y planar series of connected vertices. The crossSection array defines a silhouette outline of the outer Extrusion surface.
Warning: if the order of crossSection point definition does not match clockwise/counterclockwise setting of ccw field, then self-intersecting, impossible or inverted geometry can result!
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_orientation [set_orientation accessType inputOnly, type MFRotation CDATA #FIXED ""]
The orientation array is a list of axis-angle 4-tuple values applied at each spine-aligned cross-section plane.
Hint: if the orientation array contains a single 4-tuple value, it is applied at all spine-aligned crossSection planes.
Hint: number of values must all match for 3-tuple spine points, 2-tuple scale values, and 4-tuple orientation values.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_scale [set_scale accessType inputOnly, type MFVec2f CDATA #FIXED ""] (0,+β)
scale is a list of 2D-scale parameters applied at each spine-aligned cross-section plane.
Hint: number of values must all match for 3-tuple spine points, 2-tuple scale values, and 4-tuple orientation values.
Warning: zero or negative scale values not allowed.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_spine [set_spine accessType inputOnly, type MFVec3f CDATA #FIXED ""]
spine is a list of 3D points for a piecewise-linear curve forming a series of connected vertices, open or closed. This is the path along which the crossSection is extruded.
Hint: number of values must all match for 3-tuple spine points, 2-tuple scale values, and 4-tuple orientation values.
Warning: special care is needed if creating loops or spirals since self-intersecting, impossible or inverted geometry can result!
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources field A field statement defines an interface attribute or node.
Hint: first add a parent Script node or ProtoDeclare/ProtoInterface statements before defining a new field.
Hint: in addition to defining a simple-type value attribute, a field statement can alternatively hold initializing SFNode/MFNode values as contained node(s).Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadataname [name type NMTOKEN #REQUIRED]
Name of this field declaration.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsaccessType [accessType , type NMTOKEN #REQUIRED]
Event-model semantics for field set/get capabilities.
Hint: renamed accessType correspondences for X3D from VRML97 are inputOnly=eventIn, outputOnly=eventOut, initializeOnly=field, inputOutput=exposedField.
Warning: inputOutput=exposedField not allowed in VRML97 Script nodes, use initializeOnly=field for backwards compatibility.
Hint: an accessType value is required and must be provided.
Hint: X3D Architecture 4.4.2.2 Field semantics, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#FieldSemantics
Hint: X3D XML Encoding 4.3.7 Prototype and field declaration syntax, https://www.web3d.org/documents/specifications/19776-1/V3.3/Part01/concepts.html#PrototypeAndFieldDeclarationSyntaxtype [type NMTOKEN #REQUIRED]
Base type of this field variable.
Hint: a type value is required and must be provided.value [value type CDATA #IMPLIED]
Provide default initialization value for this field variable (which may be re-initialized later by instantiation value of a named ProtoInstance fieldValue).
Hint: SFNode/MFNode fields are initialized using contained node content, instead of this value attribute.
Hint: value is required for Script and ProtoDeclare unless MF-type array initialization is empty list, SFString initialization is empty string, or SFNode is being initialized.
Hint: SFNode/MFNode fields are initialized by contained node element(s), if any.
Warning: setting a value is not allowed for ExternProtoDeclare field declarations, since original ProtoDeclare initializations or local ProtoInstance fieldValue initializations take precedence.
Warning: not allowed for field variables with accessType inputOnly or outputOnly.
Warning: initialization value is not allowed if this field is part of a Script interface and has a corresponding IS/connect definition.appinfo [appinfo type SFString CDATA #IMPLIED]
Application information to provide simple description usable as a tooltip, similar to XML Schema appinfo tag.documentation [documentation type SFString CDATA #IMPLIED]
Documentation url for further information, similar to XML Schema documentation tag.class [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources fieldValue A fieldValue statement re-initializes the default value of a field in a parent ProtoInstance. Note that a field statement with a matching name must be already defined by the corresponding ProtoDeclare or ExternProtoDeclare statement.
Hint: first add a parent ProtoInstance node before defining a new fieldValue.
Warning: fieldValue content type must match the content type defined in the corresponding ProtoDeclare or ExternProtoDeclare field statement.
Hint: in addition to defining a simple-type value attribute, a fieldValue statement can alternatively hold initializing SFNode/MFNode values as contained node(s).Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadataname [name type NMTOKEN #REQUIRED]
Name of the ProtoInstance field being re-initialized (corresponding to field name already defined in ProtoDeclare or ExternProtoDeclare).
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsvalue [value type CDATA #IMPLIED]
Initial value for this field, which overrides default initialization value defined in original ProtoDeclare field.
Hint: initialize SFNode/MFNode field value using contained content element(s), instead of a simple attribute value.class [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources FillProperties FillProperties indicates whether appearance is filled or hatched for associated geometry nodes inside the same Shape. Hatches are applied on top of the already rendered appearance of the node, and are not affected by lighting.
Hint: DEF/USE copies of a single node can provide a similar "look + feel" style for related shapes in a scene.
Warning: requires X3D profile='Full' or else include <component name='Shape' level='3'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.filled [filled accessType inputOutput, type SFBool (true|false) "true"]
Whether or not associated geometry is filled.hatched [hatched accessType inputOutput, type SFBool (true|false) "true"]
Whether or not associated geometry is hatched.hatchStyle [hatchStyle accessType inputOutput, type SFInt32 CDATA "1"]
hatchStyle selects a hatch pattern from International Register of Graphical Items. 1=Horizontal equally spaced parallel lines. 2=Vertical equally spaced parallel lines. 3=Positive slope equally spaced parallel lines. 4=Negative slope equally spaced parallel lines. 5=Horizontal/vertical crosshatch. 6=Positive slope/negative slope crosshatch. 7=(cast iron or malleable iron and general use for all materials). 8=(steel). 9=(bronze, brass, copper, and compositions). 10=(white metal, zinc, lead, babbit, and alloys). 11=(magnesium, aluminum, and aluminum alloys). 12=(rubber, plastic, and electrical insulation). 13=(cork, felt, fabric, leather, and fibre). 14=(thermal insulation). 15=(titanium and refi-actory material). 16=(marble, slate, porcelain, glass, etc.). 17=(earth). 18=(sand). 19=(repeating dot).
Hint: detailed descriptions of hatchstyle values are found at the ISO/IEC International Register of Graphical Items https://www.iso.org/jtc1/sc24/register (may require login)hatchColor [hatchColor accessType inputOutput, type SFColor CDATA "1 1 1"] [0,1]
Color of the hatch pattern.containerField [containerField type NMTOKEN "fillProperties"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Fog Fog simulates atmospheric effects by blending distant objects with fog color.
Hint: Background, Fog, NavigationInfo, TextureBackground and Viewpoint are bindable nodes, meaning that no more than one of each node type can be active at a given time.
Warning: results are undefined if a bindable node (Background, Fog, NavigationInfo, OrthoViewpoint, TextureBackground, Viewpoint) is a contained descendant node of either LOD or Switch. Avoid this authoring pattern.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.color [color accessType inputOutput, type SFColor CDATA "1 1 1"] [0,1]
Fog color.
Hint: match Background color to make objects fade away.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColorfogType [fogType accessType inputOutput, type SFString CDATA (LINEAR|EXPONENTIAL) LINEAR]
Specifies algorithm for rate of increasing Fog, either LINEAR or EXPONENTIAL.
Hint: EXPONENTIAL is more natural but also more computationally expensive.
Warning: do not wrap "quotation" "marks" around this SFString value.visibilityRange [visibilityRange accessType inputOutput, type SFFloat CDATA "0.0"]
Distance in meters where objects are totally obscured by the fog, using local coordinate system.
Hint: visibilityRange 0 disables Fog.set_bind [set_bind accessType inputOnly, type SFBool #FIXED ""]
Receiving event set_bind=true activates and binds this node at the top of the binding stack. Receiving event set_bind=false deactivates and unbinds this node from the top of the binding stack. Thus setting set_bind to true/false will enable/disable the effect of this node.
Hint: paired node operations can be established by connecting set_bind and isBound fields of corresponding bindable nodes.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.bindTime [bindTime accessType outputOnly, type SFTime CDATA #FIXED ""]
Event sent reporting timestamp when node becomes active/inactive.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isBound [isBound accessType outputOnly, type SFBool #FIXED ""]
Output event true gets sent when node becomes bound and activated, otherwise output event false gets sent when node becomes unbound and deactivated.
Hint: paired node operations can be established by connecting set_bind and isBound fields of corresponding bindable nodes.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources FontStyle [inherits X3DFontStyleNode]
FontStyle is an X3DFontStyleNode that defines the size, family, justification and other styles used by Text nodes.
Hint: full internationalization (i18n) and localization (l10n) features are available for any written language.
Hint: DEF/USE copies of a single node can provide a similar "look + feel" style for related shapes.
Hint: relates to Internationalization (i18n) http://www.w3.org/standards/webdesign/i18n
Hint: first add a Text node as a parent node for FontStyle.
Hint: Wikipedia https://en.wikipedia.org/wiki/FontSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.family [family accessType initializeOnly, type MFString CDATA ( SERIF | SANS | TYPEWRITER ) "SERIF"]
Array of quoted font family names in preference order, browsers use the first supported family.
Hint: example family array might be "Times" "SERIF"
Warning: font family support often varies.
Hint: values with guaranteed support include "SERIF" "SANS" "TYPEWRITER".
Hint: SERIF and SANS are variable-width fonts (for example, Times Roman and Arial).
Hint: TYPEWRITER is a fixed-width font (for example, Courier).
Hint: MFString arrays can have multiple values, so "separate each individual string" "by using quote marks".
Hint: see 15.2.2.2 Font family and style https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/text.html#Fontfamilyandstyle for details.
Hint: relates to Internationalization (i18n) http://www.w3.org/standards/webdesign/i18nstyle [style accessType initializeOnly, type SFString CDATA ( PLAIN | BOLD | ITALIC | MIDDLE ) PLAIN]
Pick one of four values for text style.
Warning: do not wrap "quotation" "marks" around this SFString value.
Hint: see 15.2.2.2 Font family and style https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/text.html#Fontfamilyandstyle for details.justify [justify accessType initializeOnly, type MFString CDATA ( BEGIN | END | FIRST | MIDDLE ) "BEGIN" or "BEGIN" "END"]
The justify field determines alignment of the above text layout relative to the origin of the object coordinate system.
Hint: preferred value is usually justify=' "MIDDLE" "MIDDLE" ' for centered justification horizontally and vertically.
Warning: exactly two string values are provided for major and minor axis alignment.
Warning: do not use illegal values such as LEFT RIGHT TOP BOTTOM or CENTER.
Hint: MFString arrays can have multiple values, so "separate each individual string" "by using quote marks".
Hint: see 15.2.2.3 Direction and justification https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/text.html#Directionandjustification for details.size [size accessType initializeOnly, type SFFloat CDATA "1.0"] (0,+β)
Nominal height (in local coordinate system) of text glyphs Also sets default spacing between adjacent lines of text.spacing [spacing accessType initializeOnly, type SFFloat CDATA "1.0"] [0,+β)
Adjustment factor for line spacing between adjacent lines of text.language [language accessType initializeOnly, type SFString CDATA #IMPLIED]
Language codes consist of a primary code and a (possibly empty) series of subcodes. [ language-code = primary-code ( "-" subcode )* ] Two-letter primary codes are reserved for language abbreviations.
Hint: see RFC3066 Tags for the Identification of Languages https://tools.ietf.org/html/rfc3066 Two-letter primary codes include en (English), fr (French), de (German), it (Italian), nl (Dutch), el (Greek), es (Spanish), pt (Portuguese), ar (Arabic), he (Hebrew), ru (Russian), zh (Chinese), ja (Japanese), hi (Hindi), ur (Urdu), and sa (Sanskrit). Any two-letter subcode is understood to be a country code.
Warning: do not wrap extra quotation marks around these SFString enumeration values, since "quotation" "marks" are only used for MFString values.
Hint: see ISO639.2 Codes for the Representation of Names of Languages http://www.loc.gov/standards/iso639-2/php/code_list.php
Hint: see RFC3066 Tags for the Identification of Languages https://tools.ietf.org/html/rfc3066
Hint: see ISO3166 or http://xml.coverpages.org/languageIdentifiers.html
Hint: relates to Internationalization (i18n) http://www.w3.org/standards/webdesign/i18nhorizontal [horizontal accessType initializeOnly, type SFBool (true|false) "true"]
Whether text direction is horizontal (true) or vertical (false).
Hint: see 15.2.2.3 Direction and justification https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/text.html#Directionandjustification for details.
Hint: relates to Internationalization (i18n) http://www.w3.org/standards/webdesign/i18nleftToRightll [leftToRightl accessType initializeOnly, type SFBool (true|false) "true"]
Whether text direction is left-to-right (true) or right-to-left (false).
Hint: see 15.2.2.3 Direction and justification https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/text.html#Directionandjustification for details.
Hint: relates to Internationalization (i18n) http://www.w3.org/standards/webdesign/i18ntopToBottom [topToBottom accessType initializeOnly, type SFBool (true|false) "true"]
Whether text direction is top-to-bottom (true) or bottom-to-top (false).
Hint: see 15.2.2.3 Direction and justification https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/text.html#Directionandjustification for details.
Hint: relates to Internationalization (i18n) http://www.w3.org/standards/webdesign/i18ncontainerField [containerField type NMTOKEN "fontStyle"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources GeoCoordinate GeoCoordinate builds geometry as a set of geographic 3D coordinates. These are transformed into a geocentric, curved-earth representation. GeoCoordinate is only used by IndexedFaceSet, IndexedLineSet, LineSet and PointSet. GeoCoordinate can contain a GeoOrigin node.
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).point [point accessType inputOutput, type MFVec3d CDATA #IMPLIED]
point contains a set of actual 3D geographic coordinates, provided in geoSystem format can split strings if desired: "x1 y1 z1 x2 y2 z2" or "x1 y1 z1", "x2 y2 z2"containerField [containerField type NMTOKEN "coord"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources GeoElevationGrid GeoElevationGrid is a geometry node defining a rectangular height field, with default values for a 1m by 1m square at height 0. Vertices corresponding to GeoElevationGrid height values define quadrilaterals, which are placed above or below a curved geospatial surface using geographic coordinates.
Hint: the height array defines (xDimension-1)*(zDimension-1) quadrilaterals.
Warning: generated quadrilaterals can be nonplanar. Tessellation splits quadrilaterals into triangles along seam starting at initial vertex of the quadrilateral and proceeding to opposite vertex.
Hint: positive direction for normal of each triangle is on same side of the quadrilateral. Triangles are defined either counterclockwise or clockwise depending on value of ccw field.
Hint: GeoElevationGrid can contain GeoOrigin, Color|ColorRGBA, Normal and TextureCoordinate nodes.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>
Warning: avoid having GeoLocation or GeoTransform as a parent or ancestor node of GeoElevationGrid, since multiple geospatial transformations then occur with unpredictable results.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).geoGridOrigin [geoGridOrigin accessType initializeOnly, type SFVec3d CDATA "0 0 0"]
Geographic coordinate for southwest (lower-left) corner of height dataset.xDimension [xDimension accessType initializeOnly, type SFInt32 CDATA "2"] [0,+β)
Number of elements in the height array along east-west X direction.
Hint: total horizontal x-axis distance equals (xDimension-1) * xSpacing.
Warning: xDimension < 2 means that ElevationGrid contains no quadrilaterals.zDimension [zDimension accessType initializeOnly, type SFInt32 CDATA "2"] [0,+β)
Number of elements in the height array along north-south Z direction.
Hint: total lateral z-axis distance equals (zDimension-1) * zSpacing.
Warning: zDimension < 2 means that ElevationGrid contains no quadrilaterals.xSpacing [xSpacing accessType initializeOnly, type SFDouble CDATA "1.0"] (0,+β)
Distance between grid-array vertices along east-west X direction.
Hint: when geoSystem is GDC, xSpacing is number of degrees of longitude.
Hint: when geoSystem is UTM, xSpacing is number of eastings (meters).zSpacing [zSpacing accessType initializeOnly, type SFDouble CDATA "1.0"] (0,+β)
Distance between grid-array vertices along north-south Z direction.
Hint: when geoSystem is GDC, zSpacing is number of degrees of latitude.
Hint: when geoSystem is UTM, zSpacing is number of northings (meters).yScale [yScale accessType inputOutput, type SFFloat CDATA "1.0"] [0,+β)
Vertical exaggeration of displayed data produced from the height array.height [height accessType initializeOnly, type MFDouble CDATA "0 0 0 0"]
Contains xDimension rows * zDimension columns floating-point values for elevation above ellipsoid.
Hint: height array values are in row-major order from west to east, south to north.
Hint: geoGridOrigin is in southwest (lower-left) corner of height dataset.set_height [set_height accessType initializeOnly, type MFDouble CDATA #FIXED ""]
Contains xDimension rows * zDimension columns floating-point values for elevation above ellipsoid.
Hint: height array values are in row-major order from west to east, south to north.
Hint: geoGridOrigin is in southwest (lower-left) corner of height dataset.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
ccw defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/Clockwisesolid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.creaseAngle [creaseAngle accessType initializeOnly, type SFDouble CDATA "0"] [0,+β)
creaseAngle defines angle (in radians) for determining whether adjacent polygons are drawn with sharp edges or smooth shading. If angle between normals of two adjacent polygons is less than creaseAngle, smooth shading is rendered across the shared line segment.
Hint: creaseAngle=0 means render all edges sharply, creaseAngle=3.14159 means render all edges smoothly.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadiancolorPerVertex [colorPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Color node color values are applied to each point vertex (true) or per quadrilateral (false).
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColornormalPerVertex [normalPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Normal node vector values are applied to each point vertex (true) or per quadrilateral (false).
Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources GeoLocation GeoLocation positions a regular X3D model onto earth's surface. GeoLocation can contain children and GeoOrigin nodes.
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>
Warning: avoid having GeoLocation or GeoTransform as a parent or ancestor node of each other, since multiple geospatial transformations then occur with unpredictable results.
Hint: GeoLocation adjusts orientation of children models appropriately: +Y axis is up direction for that local area (i.e. normal to tangent plane on the geospatial ellipsoid), -Z axis points towards north pole, and +X axis points east.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).geoCoords [geoCoords accessType inputOutput, type SFVec3d CDATA "0 0 0"]
Geographic location (specified in current geoSystem coordinates) for children geometry (specified in relative coordinate system, in meters).
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources GeoLOD GeoLOD provides quadtree level-of-detail loading/unloading for multi-resolution terrains. GeoLOD can contain children and GeoOrigin nodes.
Hint: children nodes expose the scene graph for the currently loaded set of nodes.
Hint: rootNode specifies the geometry of the root tile.
Warning: do not use rootUrl and rootNode simultaneously, since each specifies the root tile.
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>
Warning: nested LOD (and/or GeoLOD) nodes with overlapping range intervals can lead to unexpected or undefined behavior.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).rootUrl [rootUrl accessType initializeOnly, type MFString CDATA #IMPLIED]
url for scene providing geometry for the root tile.
Warning: either rootNode or rootUrl can specify root tile, but specifying both is an error.child1Url [child1Url accessType initializeOnly, type MFString CDATA #IMPLIED]
quadtree geometry loaded when viewer is within range.child2Url [child2Url accessType initializeOnly, type MFString CDATA #IMPLIED]
quadtree geometry loaded when viewer is within range.child3Url [child3Url accessType initializeOnly, type MFString CDATA #IMPLIED]
quadtree geometry loaded when viewer is within range.child4Url [child4Url accessType initializeOnly, type MFString CDATA #IMPLIED]
quadtree geometry loaded when viewer is within range.range [range accessType initializeOnly, type SFFloat CDATA #IMPLIED] (0,+β)
Viewer range from geographic-coordinates center triggers quadtree loading/unloading.
Hint: not setting range values indicates that level switching can be optimized automatically based on performance.center [center accessType initializeOnly, type SFVec3d CDATA "0 0 0"]
Viewer range from geographic-coordinates center triggers quadtree loading/unloading.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources GeoMetadata GeoMetadata includes a generic subset of metadata about the geographic data.
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>
Hint: apply containerField='watchList' when parent node is LoadSensor.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.url [url accessType inputOutput, type MFString CDATA #IMPLIED]
Hypertext link to an external, complete metadata description.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Hint: X3D Scene Authoring Hints, urls https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urlsdata #IMPLIED]
DEF list of all nodes that implement this data. If no specific geospatial nodes identified, then this GeoMetadata node pertains to entire scene.summary [summary accessType inputOutput, type MFString CDATA #IMPLIED]
The summary string array contains a set of keyword/value pairs, with each keyword and its subsequent value contained in separate strings.
Hint: example <GeoMetadata summary=' "title" "San Francisco, California USA" '/>.
Hint: Table 25.5, GeoMetadata keywords and values https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#t-keywordsandvalues
Hint: there should always be an even (or zero) number of strings to match key-value paired strings.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources GeoOrigin GeoOrigin specifies local geospatial coordinate system for parent node, enabling increased geographic precision during scene rendering (by mitigating potential floating-point roundoff errors). GeoOrigin can be contained by other Geospatial component nodes, typically via DEF/USE to ensure consistency.
Hint: only one geospatial coordinate system is allowed per scene, thus DEF-ing and later USE-ing only one GeoOrigin node per scene is recommended.
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>
Warning: GeoOrigin is deprecated, discouraged and not legal in X3D v3.3. GeoOrigin can be ignored in X3D v3.2 and below.
Hint: GeoOrigin is likely to be restored in X3D v4.0 for special use on devices with limited floating-point resolution.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).geoCoords [geoCoords accessType inputOutput, type SFVec3d CDATA "0 0 0"]
Defines absolute geographic location (and implicit local coordinate frame).
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>rotateYUp [rotateYUp accessType initializeOnly, type SFBool (true|false) "false"]
Whether to rotate coordinates of nodes using this GeoOrigin so that local-up direction aligns with VRML Y axis rotateYUp false means local up-direction is relative to planet surface rotateYUp true allows proper operation of NavigationInfo modes FLY, WALK.containerField [containerField type NMTOKEN "geoOrigin"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
GeoPositionInterpolatorGeoPositionInterpolator animates objects within a geographic coordinate system. GeoPositionInterpolator can contain a GeoOrigin node.
Hint: typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction
Hint: typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).key [key accessType inputOutput, type MFFloat CDATA #IMPLIED]
Definition values for linear-interpolation function input intervals, in non-decreasing order and corresponding to a value in the keyValue array.
Warning: number of keys must match number of keyValues!
Warning: values in key array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
Hint: typical interval for values in key array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.keyValue [keyValue accessType inputOutput, type MFVec3d CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to an input-fraction value in the key array.
Warning: number of keys must match number of keyValues!set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
set_fraction selects input key for corresponding keyValue output.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.geovalue_changed [geovalue_changed accessType outputOnly, type SFVec3d CDATA #FIXED ""]
interpolated coordinate in the geographic coordinate system specified by geoSystem
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources GeoTouchSensor GeoTouchSensor returns geographic coordinates for the object being selected. GeoTouchSensor can contain a GeoOrigin node.
Hint: this sensor detects user interactions affecting peer nodes and their child geometry.
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.description [description accessType inputOutput, type SFString CDATA #IMPLIED]
Author-provided prose that describes intended purpose of this node.
Hint: include space characters since a description is not a DEF identifier. Write short phrases that make descriptions clear and readable.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).isActive [isActive accessType inputOutput, type SFBool #FIXED ""]
Select geometry by activating the pointing device (e.g. clicking the mouse) to generate isActive events. Output event isActive=true is sent when geometry is selected (e.g. when primary mouse button is pressed), output event isActive=false is sent when geometry is deselected (e.g. when primary mouse button is released).
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.hitGeoCoord_changed [hitGeoCoord_changed accessType outputOnly, type SFVec3d CDATA #FIXED ""]
Output event containing 3D point on surface of underlying geometry, given in GeoTouchSensor's local coordinate system.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.hitPoint_changed [hitPoint_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
Output event containing 3D point on surface of underlying geometry, given in geometry coordinates (not geographic coordinates).
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.hitNormal_changed [hitNormal_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
Output event containing surface normal vector at the hitGeoCoordinate.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.hitTexCoord_changed [hitTexCoord_changed accessType outputOnly, type SFVec2f CDATA #FIXED ""]
Output event containing texture coordinates of surface at the hitGeoCoordinate.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isOver [isOver accessType outputOnly, type SFBool #FIXED ""]
Is pointing device over sensor's geometry?.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.touchTime [touchTime accessType outputOnly, type SFTime CDATA #FIXED ""]
Time event generated when touched.
Hint: touchTime event is generated when following three conditions are all met: (a) pointing device was pointing towards geometry when initially activated (isActive=true), (b) pointing device is currently pointing towards the geometry (isOver=true), and (c) pointing device selection is deactivated/deselected by user (isActive=false event is also generated).
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources GeoViewpoint GeoViewpoint specifies viewpoints using geographic coordinates. GeoViewpoint can contain a GeoOrigin node. Since GeoViewpoint must navigate smoothly inside a curved geographic coordinate system, it includes both Viewpoint and NavigationInfo attributes.
Hint: alternatively can use GeoLocation or GeoTransform as parent of a Viewpoint node to orient geospatial views.
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>
Hint: Regardless of viewpoint jump value at bind time, the relative viewing transformation between user's view and defined position/orientation is stored for later use when un-jumping (returning to the viewpoint when subsequent viewpoint is unbound).
Hint: customizable design pattern for dedicated Viewpoint/NavigationInfo pair: <Viewpoint DEF='SpecialView'/> <NavigationInfo DEF='SpecialNav'/> <ROUTE fromNode='SpecialView' fromField='isBound' toNode='SpecialNav' toField='set_bind'/>
Warning: avoid having GeoLocation or GeoTransform as a parent or ancestor node of GeoViewpoint, since multiple geospatial transformations then occur with unpredictable results.
Hint: X3D Scene Authoring Hints, Viewpoints https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ViewpointsSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).description [description accessType inputOutput, type SFString CDATA #IMPLIED]
Author-provided prose that describes intended purpose of this node.
Hint: include space characters since a description is not a DEF identifier. Write short phrases that make descriptions clear and readable.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).position [position accessType initializeOnly, type SFVec3d CDATA "0 0 100000"]
Position relative to local georeferenced coordinate system, in proper format.orientation [orientation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Rotation of Viewpoint, relative to default -Z axis direction in local coordinate system.
Warning: for VR/AR/MAR users wearing a head-mounted display (HMD), animating this field may induce motion sickness.
Hint: this is orientation _change_ from default direction (0 0 -1) +Y axis is the up vector for the local area (the normal to the tangent plane on the ellipsoid), -Z points towards the north pole, and +X is east 1 0 0 -1.570796 always looks down.navType [navType accessType inputOutput, type MFString CDATA "EXAMINE" "ANY"]
Enter one or more Strings: "EXAMINE" "WALK" "FLY" "LOOKAT" "EXPLORE" "ANY" "NONE".
Hint: usability often improves with type="EXAMINE" "ANY".headlight [headlight accessType inputOutput, type SFBool (true|false) "true"]
Enable/disable directional light that always points in the direction the user is lookingfieldOfView [fieldOfView accessType inputOutput, type SFFloat CDATA "0.7854"]]
jump [jump accessType inputOutput, type SFBool (true|false) "true"]
Whether to transition instantly by jumping, or else smoothly animate to this Viewpoint.speedFactor [speedFactor accessType initializeOnly, type SFFloat CDATA "1"] [0,+β)
speedFactor is a multiplier to modify the original elevation-based speed that is set automatically by the browser.
Hint: speedFactor is a relative value and not an absolute speed as defined by NavigationInfo.set_bind [set_bind accessType inputOnly, type SFBool #FIXED ""]
set_bind true makes this node active, set_bind false makes this node inactive.set_position [set_position accessType inputOnly, type SFVec3d CDATA #FIXED ""]
Position relative to local georeferenced coordinate system, in proper format.set_orientation [set_orientation accessType inputOnly, type SFRotation CDATA #FIXED ""]
Rotation of Viewpoint, relative to default -Z axis direction in local coordinate system.
Warning: for VR/AR/MAR users wearing a head-mounted display (HMD), animating this field may induce motion sickness.
Hint: this is orientation _change_ from default direction (0 0 -1) +Y axis is the up vector for the local area (the normal to the tangent plane on the ellipsoid), -Z points towards the north pole, and +X is east 1 0 0 -1.570796 always looks down.bindTime [bindTime accessType outputOnly, type SFTime CDATA #FIXED ""]
Event sent reporting timestamp when node becomes active/inactive.isBound [isBound accessType outputOnly, type SFBool #FIXED ""]
Output event true gets sent when node becomes bound and activated, otherwise output event false gets sent when node becomes unbound and deactivated.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Group Group is a Grouping node that can contain most nodes.
Hint: insert a Shape node before adding geometry or Appearance.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.children [children accessType inputOutput, type MFNode array, empty list] [X3DChildNode]
Grouping nodes contain an ordered list of children nodes.
Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
Hint: X3D Architecture 10.2.1 Grouping and children node types, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodesbboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN (children | proxy | rootNode | shape | skin) "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources HAnimDisplacer HAnimDisplacer nodes alter the shape of coordinate-based geometry within parent HAnimJoint or HAnimSegment nodes. Displacer effects are scaled by the corresponding weight field.
Hint: HAnimDisplacer can be used in three different ways: (a) identify vertices corresponding to a particular feature in a parent HAnimSegment node, (b) represent a particular muscular action for a parent HAnimJoint node by displacing corresponding HAnimHumanoid skin vertices in various directions (linearly or radially), or (c) represent a complete configuration of coordinate vertices in parent HAnimSegment or HAnimJoint nodes. For example, in the case of a face, there might be a separate HAnimDisplacer node for each facial expression.
Warning: allowed name suffixes include _feature, _action and _config.
Hint: multiple HAnimDisplacer nodes must appear consecutively inside parent HAnimSegment.
Hint: HAnim Specification https://www.web3d.org/documents/specifications/19774/V2.0
Hint: HAnim Specification part 1, Displacer https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Displacer
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/HumanoidAnimation.pdf
Warning: requires X3D profile='Full' or else include <component name='H-Anim' level='1'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.USE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.name [name accessType inputOutput, type NMTOKEN #REQUIRED]
Unique name attribute must be defined so that HAnimDisplacer node can be identified at run time for animation purposes.
Hint: HAnimSite names aretypically based on feature point names, though other author-defined names are also allowed.
Hint: https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/FeaturePoints.html
Warning: allowed name suffixes include _feature, _action and _config.
Warning: name prefix must match ancestor HAnimHumanoid name followed by underscore character, if more than one humanoid appears within a scene file. For example, 'Nancy_' prepended before location name.
Warning: name field is not included if this instance is a USE node, in order to avoid potential mismatches.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionscoordIndex [coordIndex accessType inputOutput, type MFInt32 CDATA #IMPLIED] [0,+β)
Defines index values into the parent HAnimSegment or HAnimBody/HAnimHumanoid coordinate array for the mesh of vertices affected by this HAnimDisplacer. Values start at index 0.
Warning: -1 sentinel values are not allowed.displacements [displacements accessType inputOutput, type MFVec3f CDATA #IMPLIED]
displacements are a set of SFVec3f values added to neutral/resting position of each of the corresponding HAnimSegment vertices (or HAnimJoint/HAnimHumanoid vertices) referenced by coordIndex field.
Hint: Individual displacement values are scaled by the weight factor, if present.weight [weight accessType inputOutput, type SFFloat CDATA 0.0]
The weigh factor has typical range [0,1] and defines the scale factor applied to displacement values before adding them to neutral vertex positions.
Hint: apply a non-zero weight factor to see the effect of HAnimDisplacer displacements.containerField [containerField type NMTOKEN "displacers"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources HAnimHumanoid The HAnimHumanoid node is used to: (a) store references to the joints, segments, sites, skeleton, optional skin, and fixed viewpoints, (b) serve as a container for the entire humanoid, (c) provide a convenient way of moving the humanoid through its environment, and (d) store human-readable metadata such as name, version, author, copyright, age, gender and other information. HAnimHumanoid contains a skeleton consisting of HAnimJoint, HAnimSegment and HAnimSite nodes. HAnimHumanoid can also contain an optional skin consisting of an IndexedFaceSet mesh with corresponding skinCoord Coordinate|CoordinateDouble vertices and skinNormal Normal vectors.
Hint: MFNode arrays for the joints, segments, sites, and viewpoints fields provide lists for all HAnim nodes found in the skeleton hierarchy and thus only contain USE node references.
Hint: HAnim Specification https://www.web3d.org/documents/specifications/19774/V2.0
Hint: HAnim Specification part 1, Humanoid https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Humanoid
Hint: HAnim Specification part 2, clause 6.4 Extended definition of Humanoid object https://www.web3d.org/documents/specifications/19774/V2.0/MotionDataAnimation/MotionNodes.html#HumanoidObjectExtension
Hint: the viewpoints field connects internal Site nodes that in turn hold relative Viewpoint nodes, such as HAnimSite USE='ObserveFaceSite_view' containerField='viewpoints'/> which has corresponding counterpart nodes <HAnimSite DEF='ObserveFaceSite_view' name='ObserveFaceSite_view' containerField='children'> <Viewpoint description='look at me!'/> </HAnimSite>.
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/HumanoidAnimation.pdf
Warning: requires X3D profile='Full' or else include <component name='H-Anim' level='1'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.name [name accessType inputOutput, type NMTOKEN #REQUIRED]
Unique name attribute must be defined so that each HAnimHumanoid node in a scene can be identified at run time for animation purposes.
Hint: this same name is a required name prefix for all other HAnim nodes within the HAnimHumanoid, if more than one humanoid appears within a scene file.
Warning: name field is not included if this instance is a USE node, in order to avoid potential mismatches.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsversion [version accessType inputOutput, type SFString CDATA (1.0 | 2.0) "1.0"]
HAnimHumanoid version, where value is 1.0 for standardized ISO 19774 version 2006, and value is 2.0 for final ISO 19774 version 2019.
Hint: default HAnimHumanoid version is 1.0 for X3D version 3, and HAnimHumanoid default version is 2.0 for X3D version 4.
Warning: no other values are allowed for strict validation.
Warning: prior developmental versions of HAnim nodes might not validate correctly due to small changes in the contained-node content model.info [info accessType inputOutput, type MFString CDATA #IMPLIED]
Contains metadata keyword=value pairs, where approved keyword terms are humanoidVersion authorName authorEmail copyright creationDate usageRestrictions age gender height and weight.
Hint: height and weight are in base units (typically meters), hanimVersion is for author use and separate from HAnimHumanoid version field.
Hint: alternate metadata keywords are also allowed.translation [translation accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Position of children relative to local coordinate system.rotation [rotation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Orientation of children relative to local coordinate system.scale [scale accessType inputOutput, type SFVec3f CDATA "1 1 1"]
Non-uniform x-y-z scale of child coordinate system, adjusted by center and scaleOrientation.scaleOrientation [scaleOrientation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Preliminary rotation of coordinate system before scaling (to allow scaling around arbitrary orientations).center [center accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Translation offset from origin of local coordinate system.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources HAnimJoint HAnimJoint node can represent each joint in a body.
Hint: HAnimJoint may only get inserted as one (or more) root nodes of HAnimHumanoid skeleton field, as a child of another HAnimJoint node, or as a USE node in the HAnimHumanoid joints field.
Warning: HAnimJoint can only contain certain nodes: HAnimJoint, HAnimSegment, HAnimSite (with containerField='children') and also HAnimDisplacer nodes (with containerField='displacers').
Hint: visualization shapes for HAnimJoint nodes can be placed in child HAnimSegment or HAnimSite nodes.
Warning: an HAnimJoint may not be a child of an HAnimSegment.
Hint: HAnim Specification https://www.web3d.org/documents/specifications/19774/V2.0
Hint: HAnim Specification part 1, Joint https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Joint
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/HumanoidAnimation.pdf
Warning: requires X3D profile='Full' or else include <component name='H-Anim' level='1'/>
Warning: the number of contained <HAnimJoint USE='*' containerField='joints'/> nodes at top level of HAnimHumanoid needs to match the number of corresponding HAnimJoint node instances found within the preceding skeleton hierarchy.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.name [name accessType inputOutput, type NMTOKEN #REQUIRED]
Unique name attribute must be defined so that HAnimJoint node can be identified at run time for animation purposes.
Warning: name prefix must match ancestor HAnimHumanoid name followed by underscore character, if more than one humanoid appears within a scene file. For example, 'Nancy_' prepended before location name.
Warning: name field is not included if this instance is a USE node, in order to avoid potential mismatches.
Examples: humanoid_root sacroiliac l_hip l_knee l_ankle etc. as listed in HAnim Specification.
Hint: HAnim2 Names HAnim1 Alias Tables https://www.web3d.org/x3d/content/examples/HumanoidAnimation/HAnim2NameHAnim1AliasTables.txt
Hint: HAnim Specification part 1, Humanoid Joint-Segment Hierarchy https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#Hierarchy
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionscenter [center accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Translation offset from origin of local coordinate system.
Hint: usually HAnimJoint position is controlled by the center field, not the translation field.translation [translation accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Position of children relative to local coordinate system.
Warning: usually HAnimJoint position is controlled by the center field, not the translation field.ulimit [ulimit accessType inputOutput, type MFFloat CDATA #IMPLIED]
Upper limit for maximum joint rotation.
Hint: always contains 3 values, one for each local axis.llimit [llimit accessType inputOutput, type MFFloat CDATA #IMPLIED]
Lower limit for minimum joint rotation.
Hint: always contains 3 values, one for each local axis.limitOrientation [limitOrientation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Orientation of upper/lower rotation limits, relative to HAnimJoint center.skinCoordIndex [skinCoordIndex accessType inputOutput, type MFInt32 CDATA #IMPLIED] [0,+β)
Coordinate index values referencing which vertices are influenced by the HAnimJoint.
Warning: -1 sentinel values are not allowed.
Hint: corresponding skinCoord Coordinate and skinNormal Normal nodes are directly contained within the ancestor HAnimHumanoid node for this HAnimJoint.skinCoordWeight [skinCoordWeight accessType inputOutput, type MFFloat CDATA #IMPLIED]
Weight deformation values for the corresponding values in the skinCoordIndex field.stiffness [stiffness accessType inputOutput, type MFFloat CDATA "0 0 0"] [0,1] Axial values (0,1)
indicating willingness of joint to move (about local X, Y, Z axes), larger stiffness values means greater resistance.
Hint: used by inverse kinematics (IK) systems.rotation [rotation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Orientation of children relative to local coordinate system.scale [scale accessType inputOutput, type SFVec3f CDATA "1 1 1"]
Non-uniform x-y-z scale of child coordinate system, adjusted by center and scaleOrientation.scaleOrientation [scaleOrientation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Preliminary rotation of coordinate system before scaling (to allow scaling around arbitrary orientations).bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN (children | skeleton | joints) "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources HAnimSegment HAnimSegment node contains Shape geometry for each body segment. HAnimSegment contains Coordinate|CoordinateDouble with containerField='coord', HAnimDisplacer with containerField='displacers' and Shape or grouping nodes with containerField='children'.
Hint: HAnimSegment displays geometry between parent HAnimJoint and sibling HAnimJoint nodes.
Hint: HAnim Specification https://www.web3d.org/documents/specifications/19774/V2.0
Hint: HAnim Specification part 1, Segment https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Segment
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/HumanoidAnimation.pdf
Warning: requires X3D profile='Full' or else include <component name='H-Anim' level='1'/>
Warning: the number of contained <HAnimSegment USE='*' containerField='segments'/> nodes at top level of HAnimHumanoid needs to match the number of corresponding HAnimJoint node instances found within the preceding skeleton hierarchy.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.name [name accessType inputOutput, type NMTOKEN #REQUIRED]
Unique name attribute must be defined so that HAnimSegment node can be identified at run time for animation purposes.
Warning: name prefix must match ancestor HAnimHumanoid name followed by underscore character, if more than one humanoid appears within a scene file. For example, 'Nancy_' prepended before location name.
Warning: name field is not included if this instance is a USE node, in order to avoid potential mismatches.
Examples: sacrum pelvis l_thigh l_calf etc. as listed in HAnim Specification.
Hint: for abitrary humanoids, HAnimSegment name can describe geometry between parent HAnimJoint and sibling HAnimJoint nodes (for example LeftHip_to_LeftKnee).
Hint: HAnim Specification part 1, Humanoid Joint-Segment Hierarchy https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#Hierarchy
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsmass [mass accessType inputOutput, type SFFloat CDATA "0"]
Total mass of the segment, 0 if not available, defined in mass base units (default is kilograms).
Hint: https://en.wikipedia.org/wiki/Kilogram
Hint: X3D Architecture 4.3.6 Standard units and coordinate system https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#StandardunitscoordinatescenterOfMass [centerOfMass accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Location within segment of center of mass.momentsOfInertia [momentsOfInertia accessType inputOutput, type MFFloat CDATA "0 0 0 0 0 0 0 0 0"]
3x3 moments of inertia matrix. default: 0 0 0 0 0 0 0 0 0.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN (children | segments) "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources HAnimSite An HAnimSite node serves three purposes: (a) define an "end effector" location which can be used by an inverse kinematics system, (b) define an attachment point for accessories such as jewelry and clothing, and (c) define a location for a Viewpoint virtual camera in the reference frame of an HAnimSegment (such as a view "through the eyes" of the humanoid for use in multi-user worlds).
Hint: HAnimSite nodes are stored as children of an HAnimSegment node.
Hint: HAnim Specification https://www.web3d.org/documents/specifications/19774/V2.0
Hint: HAnim Specification part 1, Site https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Site
Hint: HAnim Specification part 1, Annex B, Feature points for the human body https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/FeaturePoints.html
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/HumanoidAnimation.pdf
Warning: requires X3D profile='Full' or else include <component name='H-Anim' level='1'/>
Warning: the number of contained <HAnimSite USE='*' containerField='sites, skeleton or viewpoints'/> nodes at top level of HAnimHumanoid needs to match the number of corresponding HAnimSite node instances found within the preceding skeleton hierarchy.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.name [name accessType inputOutput, type NMTOKEN #REQUIRED]
Unique name attribute must be defined so that HAnimSite nodecan be identified at run time for animation purposes.
Warning: name field is not included if this instance is a USE node, in order to avoid potential mismatches.
Examples: skull_tip sellion etc. as listed in HAnim Specification.
Hint: HAnim Specification part 1, LOA-3 default Site object translations https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/BodyDimensionsAndLOAs.html#LOA3DefaultSiteTranslations
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionstranslation [translation accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Position of children relative to local coordinate system.rotation [rotation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Orientation of children relative to local coordinate system.scale [scale accessType inputOutput, type SFVec3f CDATA "1 1 1"]
Non-uniform x-y-z scale of child coordinate system, adjusted by center and scaleOrientation.scaleOrientation [scaleOrientation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Preliminary rotation of coordinate system before scaling (to allow scaling around arbitrary orientations).center [center accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Translation offset from origin of local coordinate system.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN (children | sites | skeleton | viewpoints) "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources head head can contain component, unit, and author-defined meta (metadata) elements.
Hint: design for this element matches the <head> tag in HTML.
Warning: head is optional first child of X3D statement, and must precede the Scene statement.
Warning: in order to pass XML validation, these contained optional statements must appear in order: first component statements, then unit statements, then meta statements.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadataclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ImageTexture ImageTexture maps a 2D-image file onto a geometric shape. Texture maps have a 2D coordinate system (s, t) horizontal and vertical, with (s, t) values in range [0.0, 1.0] for opposite corners of the image.
Hint: insert Shape and Appearance nodes before adding texture.
Warning: bright Material emissiveColor values can wash out some textures.
Hint: authors can provide multiple image formats for the same image, with each source address listed separately in the url field.
Hint: player support is required for .png and .jpg formats, support is suggested for .gif format. Other image formats are optionally supported.
Hint: X3D Scene Authoring Hints, Images https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Images
Warning: see ComposedCubeMapTexture and TextureBackground for special containerField values.
Hint: if a texture is opaque, omitting values in the alpha channel can help avoid rendering artifacts related to transparency and reduce file size by 25%.
Hint: Texture mapping https://en.wikipedia.org/wiki/Texture_mapping
Hint: X3D Architecture 17.2.2 Lighting model https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/lighting.html#Lightingmodel
Hint: apply containerField='watchList' when parent node is LoadSensor.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.url [url accessType inputOutput, type MFString CDATA #IMPLIED]
Location and filename of image. Multiple locations are more reliable, and including a Web address lets e-mail attachments work.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Hint: X3D Scene Authoring Hints, urls https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urlsrepeatS [repeatS accessType initializeOnly, type SFBool (true|false) "true"]
Whether to horizontally repeat texture along S axis.repeatT [repeatT accessType initializeOnly, type SFBool (true|false) "true"]
Whether to vertically repeat texture along T axis.containerField [containerField type NMTOKEN (texture | back | bottom | front | left | right | top) "texture"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources IMPORT IMPORT provides ROUTE access to a node that has a corresponding EXPORT statement within an Inline scene. These connections allow event values to be passed via ROUTE statements between a parent model and a child Inline model.
Hint: it is good practice to place IMPORT statements next to corresponding Inline scenes for readability.
Hint: see EXPORT statement for corresponding functionality within the related Inline model.
Warning: corresponding parent-scene IMPORT and child Inline-scene EXPORT statements are necessary in order to ROUTE values between a parent model and a child Inline model.
Hint: X3D Architecture 4.4.6 Import/Export semantics https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#ImportExportsemanticsSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadatainlineDEF [inlineDEF type IDREF #REQUIRED]
inlineDEF is the DEF name of Inline node in the same scene as this IMPORT statement.
Warning: the inlineDEF Inline scene must similarly include a corresponding EXPORT statement.importedDEF #REQUIRED]
importedDEF is DEF name of the node of interest that is contained in the remote inlineDEF scene.
Hint: required.AS #IMPLIED]
map importedDEF name AS a new name in current scene.
Hint: optional, default export is importedDEF node name.class [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources IndexedFaceSet IndexedFaceSet defines polygons using index lists corresponding to vertex coordinates. IndexedFaceSet is a geometry node containing a Coordinate|CoordinateDouble node, and can also contain Color|ColorRGBA, Normal and TextureCoordinate nodes.
Hint: Polygon https://en.wikipedia.org/wiki/Polygon
Hint: insert a Shape node before adding geometry or Appearance.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.
Warning: rendering characteristics are undefined if polygons are not planar.
Warning: avoid self-intersecting polygon line segments, otherwise defined geometry is irregular and rendering results are undefined.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.coordIndex [coordIndex accessType initializeOnly, type MFInt32 CDATA #IMPLIED] [-1,+β)
coordIndex indices provide the order in which coordinates are applied to construct each polygon face. Order starts at index 0, commas are optional between sets.
Hint: sentinel value -1 is used to separate indices for each successive polygon.
Warning: coordIndex is required in order to connect contained coordinate point values.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
ccw defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/Clockwiseconvex [convex accessType initializeOnly, type SFBool (true|false) "true"]
The convex field is a hint to renderers whether all polygons in a shape are convex (true), or possibly concave (false). A convex polygon is planar, does not intersect itself, and has all interior angles < 180 degrees.
Hint: concave is the opposite of convex.
Interchange profile hint: only convex=true IndexedFaceSets have guaranteed support.
Warning: concave or inverted geometry may be invisible when using default value convex=true, since some renderers use more-efficient algorithms to perform tessellation that may inadvertently fail on concave geometry.
Hint: select convex=false (i.e. concave) and solid=false (i.e. two-sided display) for greatest visibility of geometry.
Hint: convex polygon https://en.wikipedia.org/wiki/Convex_polygon
Hint: tessellation https://en.wikipedia.org/wiki/Tessellationsolid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.creaseAngle [creaseAngle accessType initializeOnly, type SFFloat CDATA "0"] [0,+β)
creaseAngle defines angle (in radians) for determining whether adjacent polygons are drawn with sharp edges or smooth shading. If angle between normals of two adjacent polygons is less than creaseAngle, smooth shading is rendered across the shared line segment.
Interchange profile hint: only 0 and Ο radians supported.
Hint: creaseAngle=0 means render all edges sharply, creaseAngle=3.14159 means render all edges smoothly.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadiancolorPerVertex [colorPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Color|ColorRGBA values are applied to each point vertex (true) or to each polygon face (false).
Warning: if child Color|ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColorcolorIndex [colorIndex accessType initializeOnly, type MFInt32 CDATA #IMPLIED] [-1,+β)
colorIndex values define the order in which Color|ColorRGBA values are applied to polygons (or vertices).
Hint: if colorIndex array is not provided, then Color|ColorRGBA values are indexed according to the coordIndex field.
Hint: If colorPerVertex='false' then one index is provided for each polygon defined by the coordIndex array. No sentinel -1 values are included.
Hint: If colorPerVertex='true' then a matching set of indices is provided, each separated by sentinel -1, that exactly corresponds to individual values in the coordIndex array polygon definitions.
Warning: if child Color|ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.normalPerVertex [normalPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Normal node vector values are applied to each point vertex (true) or to each polygon face (false).
Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.normalIndex [normalIndex accessType initializeOnly, type MFInt32 CDATA #IMPLIED] [-1,+β)
normalIndex values define the order in which normal vectors are applied to polygons (or vertices).
Warning: if normalIndex array is not provided, then Normal values are indexed according to the coordIndex field.
Hint: If normalPerVertex='false' then one index is provided for each polygon defined by the coordIndex array. No sentinel -1 values are included.
Hint: If normalPerVertex='true' then a matching set of indices is provided, each separated by sentinel -1, that exactly corresponds to individual values in the coordIndex array polygon definitions.
Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.
Interchange profile hint: this field may be ignored, applying the default value regardless.texCoordIndex [texCoordIndex accessType initializeOnly, type MFInt32 CDATA #IMPLIED] [-1,+β)
List of texture-coordinate indices mapping attached texture to corresponding coordinates.
Hint: if texCoordIndex array is not provided, then TextureCoordinate values are indexed according to the coordIndex field.
Hint: use a tool!set_coordIndex [set_coordIndex accessType inputOnly, type MFInt32 CDATA #FIXED ""]
coordIndex indices provide the order in which coordinates are applied to construct each polygon face. Order starts at index 0, commas are optional between sets.
Hint: sentinel value -1 is used to separate indices for each successive polygon.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_colorIndex [set_colorIndex accessType initializeOnly, type MFInt32 CDATA #FIXED ""]
colorIndex values define the order in which Color|ColorRGBA values are applied to polygons (or vertices).
Hint: if colorIndex array is not provided, then Color|ColorRGBA values are indexed according to the coordIndex field.
Hint: If colorPerVertex='false' then one index is provided for each polygon defined by the coordIndex array. No sentinel -1 values are included.
Hint: If colorPerVertex='true' then a matching set of indices is provided, each separated by sentinel -1, that exactly corresponds to individual values in the coordIndex array polygon definitions.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_normalIndex [set_normalIndex accessType inputOnly, type MFInt32 CDATA #FIXED ""] [-1,+β)
normalIndex values define the order in which normal vectors are applied to polygons (or vertices).
Interchange profile hint: this field may be ignored, applying the default value regardless.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_texCoordIndex [set_texCoordIndex accessType inputOnly, type MFInt32 CDATA #FIXED ""] [-1,+β)
List of texture-coordinate indices mapping attached texture to corresponding coordinates.
Hint: use a tool!
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources IndexedLineSet IndexedLineSet defines polyline segments using index lists corresponding to vertex coordinates. IndexedLineSet is a geometry node that can contain a Coordinate|CoordinateDouble node and optionally a Color|ColorRGBA node.
Hint: Polygonal chain https://en.wikipedia.org/wiki/Polygonal_chain
Hint: either values in a contained Color node, or else Material emissiveColor in corresponding Appearance node, are used for rendering lines and points.
Warning: lines are not lit, are not texture-mapped, and do not participate in collision detection.
Warning: use a different color (or Material emissiveColor) than the Background color, otherwise geometry is invisible.
Hint: adding LineProperties to the corresponding Appearance node can modify the rendering style of these lines.
Hint: if rendering Coordinate points originally defined for an IndexedFaceSet, index values may need to repeat each initial vertex to close each polygon outline.
Hint: step-wise variation or linear interpolation of color values can be used as a good scientific visualization technique to map arbitrary function values to a color map.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.
Hint: consider including Fog (with Fog color matching Background color) to provide further depth cueing for IndexedLineSet (ILS).Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.coordIndex [coordIndex accessType initializeOnly, type MFInt32 CDATA #IMPLIED] [-1,+β)
coordIndex indices provide the order in which coordinates are applied to construct each polygon face. Order starts at index 0, commas are optional between sets, use -1 to separate indices for each polyline.
Hint: if rendering Coordinate points originally defined for an IndexedFaceSet, index values may need to repeat initial each initial vertex to close the polygons.
Hint: sentinel value -1 is used to separate indices for each successive polyline.
Warning: coordIndex is required in order to connect contained coordinate point values.colorPerVertex [colorPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Color node color values are applied to each point vertex (true) or per polyline (false).
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColorcolorIndex [colorIndex accessType initializeOnly, type MFInt32 CDATA #IMPLIED] [-1,+β)
colorIndex values define the order in which Color|ColorRGBA values are applied to polygons (or vertices).
Hint: if colorIndex array is not provided, then Color|ColorRGBA values are indexed according to the coordIndex field.
Hint: If colorPerVertex='false' then one index is provided for each polygon defined by the coordIndex array. No sentinel -1 values are included.
Hint: If colorPerVertex='true' then a matching set of indices is provided, each separated by sentinel -1, that exactly corresponds to individual values in the coordIndex array polygon definitions.
Hint: if rendering Coordinate points originally defined for an IndexedFaceSet, index values may need to repeat initial each initial vertex to close the polygons.
Warning: if child Color|ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.set_coordIndex [set_coordIndex accessType inputOnly, type MFInt32 CDATA #FIXED ""]
coordIndex indices provide the order in which coordinates are applied to construct each polygon face. Order starts at index 0, commas are optional between sets.
Hint: sentinel value -1 is used to separate indices for each successive polygon.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.set_colorIndex [set_colorIndex accessType initializeOnly, type MFInt32 CDATA #FIXED ""]
colorIndex values define the order in which Color|ColorRGBA values are applied to polygons (or vertices).
Hint: if colorIndex array is not provided, then Color|ColorRGBA values are indexed according to the coordIndex field.
Hint: If colorPerVertex='false' then one index is provided for each polygon defined by the coordIndex array. No sentinel -1 values are included.
Hint: If colorPerVertex='true' then a matching set of indices is provided, each separated by sentinel -1, that exactly corresponds to individual values in the coordIndex array polygon definitions.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
IndexedTriangleFanSetIndexedTriangleFanSet is a geometry node containing a Coordinate|CoordinateDouble node, and can also contain Color|ColorRGBA, Normal and TextureCoordinate nodes.
Hint: color, normal and texCoord values are applied in the same order as coord values.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.index [index accessType initializeOnly, type MFInt32 CDATA #IMPLIED] [-1,+β)
index list specifies triangles by connecting Coordinate vertices, each individual fan separated by -1 sentinel value.
Hint: first indexed coordinate in each sequence is fan center.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
ccw defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/ClockwisecolorPerVertex [colorPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Color|ColorRGBA values are applied to each point vertex (true) or to each polygon face (false).
Warning: if child Color|ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColornormalPerVertex [normalPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Normal node vector values are applied to each point vertex (true) or to each polygon face (false).
Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources IndexedTriangleSet IndexedTriangleSet is a geometry node containing a Coordinate|CoordinateDouble node, and can also contain Color|ColorRGBA, Normal and TextureCoordinate nodes.
Hint: color, normal and texCoord values are applied in the same order as coord values.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.index [index accessType initializeOnly, type MFInt32 CDATA #IMPLIED] [0,+β)
index list specifies triangles by connecting Coordinate vertices.
Warning: -1 sentinel values are not allowed.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
ccw defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/ClockwisecolorPerVertex [colorPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Color|ColorRGBA values are applied to each point vertex (true) or to each polygon face (false).
Warning: if child Color|ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColornormalPerVertex [normalPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Normal node vector values are applied to each point vertex (true) or to each polygon face (false).
Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
IndexedTriangleStripSetIndexedTriangleStripSet is a geometry node containing a Coordinate|CoordinateDouble node, and can also contain Color|ColorRGBA, Normal and TextureCoordinate nodes.
Hint: color, normal and texCoord values are applied in the same order as coord values.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.index [index accessType initializeOnly, type MFInt32 CDATA #IMPLIED] [-1,+β)
index list specifies triangles by connecting Coordinate vertices for each individual strip, separated by -1 sentinel values.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
ccw defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/ClockwisecolorPerVertex [colorPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Color|ColorRGBA values are applied to each point vertex (true) or to each polygon face (false).
Warning: if child Color|ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColornormalPerVertex [normalPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Normal node vector values are applied to each point vertex (true) or to each polygon face (false).
Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Inline Inline can load another X3D or VRML model into the current scene via url. Inline is an X3DBoundedObject node that has bounding-box dimensions.
Hint: you cannot ROUTE values into an Inline scene, use IMPORT/EXPORT (or ExternProtoDeclare and ProtoInstance) instead.
Hint: X3D Scene Authoring Hints, Inlines and Prototypes https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#InlinesPrototypes
Hint: apply containerField='watchList' when parent node is LoadSensor.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.load [load accessType inputOutput, type SFBool (true|false) "true"]
load=true means load immediately, load=false means defer loading or else unload a previously loaded scene.
Hint: allows author to design when Inline loading occurs via user interaction, event chains or scripting.
Hint: use a separate LoadSensor node to detect when loading is complete.url [url accessType inputOutput, type MFString CDATA #IMPLIED]
Address of X3D world to load into current scene.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Hint: X3D Scene Authoring Hints, urls https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urlsbboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN (children | watchList) "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources IntegerSequencer IntegerSequencer generates periodic discrete integer values. Authors can ROUTE value_changed output events to other SFInt32 attributes (for example, useful when animating whichChoice in a Switch node).
Hint: typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction
Hint: typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting
Hint: X3D Event-Utility Node Diagrams https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting/X3dEventUtilityNodeEventDiagrams.pdfSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.key [key accessType inputOutput, type MFFloat CDATA #IMPLIED]
Definition values for linear-interpolation function input intervals, in non-decreasing order and corresponding to a value in the keyValue array.
Warning: number of keys must match number of keyValues!
Warning: values in key array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
Hint: typical interval for values in key array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.keyValue [keyValue accessType inputOutput, type MFInt32 CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to an input-fraction value in the key array.
Warning: number of keys must match number of keyValues!set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
set_fraction selects input key for corresponding keyValue output.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type SFInt32 CDATA #FIXED ""]
Single intermittent output value determined by current key time and corresponding keyValue entry.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.previous [previous accessType inputOnly, type SFBool (true|false) ""]
Send previous output value in keyValue array, and reset internal fraction field to match corresponding value in key array.
Hint: this input event will "wrap around" boundary of keyValue array, i.e. continue from first to last if necessary.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.next [next accessType inputOnly, type SFBool (true|false) ""]
Send next output value in keyValue array, and reset internal fraction field to match corresponding value in key array.
Hint: this input event will "wrap around" boundary of keyValue array, i.e. continue from last to first if necessary.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources IntegerTrigger IntegerTrigger converts set_boolean true input events to an integer value (for example, useful when animating whichChoice in a Switch node).
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting
Hint: X3D Event-Utility Node Diagrams https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting/X3dEventUtilityNodeEventDiagrams.pdfSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.set_boolean [set_boolean accessType inputOnly, type SFBool #FIXED ""]
If input event set_boolean is true, trigger output of integer value.
Hint: for logical consistency, input event set_boolean false has no effect (under review as part of Mantis issue 519).
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.integerKey [integerKey accessType inputOutput, type SFInt32 CDATA #FIXED "-1"]
integerKey is value for output when triggered.
Hint: directly setting a new value for the integerKey field generates a corresponding integerKey output event.triggerValue [triggerValue accessType outputOnly, type SFInt32 CDATA #FIXED ""]
triggerValue provides integer event output matching integerKey when true set_boolean received.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources IS The IS statement connects node fields defined inside a ProtoBody declaration back to corresponding ProtoInterface fields. To define each Prototype connection between a ProtoInterface field and a ProtoBody node field, add one or more connect statements within each IS statement.
Warning: IS statements are only allowed within a ProtoBody definition scope, which follows ProtoInterface field declarations, and thus are only found within a ProtoDeclare statement.
Hint: if present, an IS statement is the first child within any other node.
Hint: an IS statement precedes any sibling Metadata* node, which in turn precedes any other sibling nodes.
Hint: see the connect and ProtoBody statements.
Hint: X3D Architecture 4.4.4 Prototype semantics, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#PROTOdefinitionsemantics
Examples: X3D Example Archives, X3D for Web Authors, Chapter 14 Prototypes https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter14PrototypesSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadataclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources KeySensor KeySensor generates events as the user presses keys on the keyboard. Browser support includes the notion of "keyboard focus".
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter08UserInteractivitySearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.keyPress [keyPress accessType outputOnly, type SFString CDATA #IMPLIED]
Events generated when user presses character-producing keys on keyboard produces integer UTF-8 character values.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.keyRelease [keyRelease accessType outputOnly, type SFString CDATA #IMPLIED]
Events generated when user releases character-producing keys on keyboard produces integer UTF-8 character values.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.actionKeyPress [actionKeyPress accessType outputOnly, type SFInt32 CDATA #IMPLIED]
action key press gives following values: HOME=000 END=1001 PGUP=1002 PGDN=1003 UP=1004 DOWN=1005 LEFT=1006 RIGHT=1007 F1..F12 = 1008..1019.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.actionKeyRelease [actionKeyRelease accessType outputOnly, type SFInt32 CDATA #IMPLIED]
action key release gives following values: HOME=000 END=1001 PGUP=1002 PGDN=1003 UP=1004 DOWN=1005 LEFT=1006 RIGHT=1007 F1..F12 = 1008..1019.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.shiftKey [shiftKey accessType outputOnly, type SFBool #IMPLIED]
shiftKey generates true event when pressed, false event when released.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.controlKey [controlKey accessType outputOnly, type SFBool #IMPLIED]
controlKey generates true event when pressed, false event when released.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.altKey [altKey accessType outputOnly, type SFBool #IMPLIED]
altKey generates true event when pressed, false event when released.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
Select geometry by activating the pointing device (e.g. clicking the mouse) to generate isActive events. Output event isActive=true is sent when geometry is selected (e.g. when primary mouse button is pressed), output event isActive=false is sent when geometry is deselected (e.g. when primary mouse button is released).
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources LineProperties LineProperties allows precise fine-grained control over the rendering style of lines and edges for associated geometry nodes inside the same Shape.
Hint: DEF/USE copies of a single node can provide a similar "look + feel" style for related shapes in a scene.
Warning: requires X3D profile='Full' or else include <component name='Shape' level='2'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.applied [applied accessType inputOutput, type SFBool (true|false) "true"]
Whether or not LineProperties are applied to associated geometry.linetype [linetype accessType inputOutput, type SFInt32 CDATA "0"]
linetype selects a line pattern, with solid default if defined value isn't supported. Values with guaranteed support are 1 Solid, 2 Dashed, 3 Dotted, 4 Dashed-dotted, 5 Dash-dot-dot. Optionally supported values are 6 single-headed arrow (arrow tip occurs at last point of each individual list of points), 7 single dot, 8 double-headed arrow, 10 chain line, 11 center line, 12 hidden line, 13 phantom line, 14 break line 1, 15 break line 2, 16 User-specified dash pattern.linewidthScaleFactor (X3D version 3.1 or later) [linewidthScaleFactor accessType inputOutput, type SFFloat CDATA "0"]
linewidthScaleFactor is a scale factor multiplied by browser-dependent nominal linewidth, mapped to nearest available line width. Values zero or less provide minimum available line width.containerField [containerField type NMTOKEN "lineProperties"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources LineSet LineSet is a geometry node that can contain a Coordinate|CoordinateDouble node and optionally a Color|ColorRGBA node.
Hint: Polygonal chain https://en.wikipedia.org/wiki/Polygonal_chain
Hint: either values in a contained Color node, or else Material emissiveColor in corresponding Appearance node, are used for rendering lines and points.
Warning: lines are not lit, are not texture-mapped, and do not participate in collision detection.
Warning: use a different color (or Material emissiveColor) than the Background color, otherwise geometry is invisible.
Hint: adding LineProperties to the corresponding Appearance node can modify the rendering style of these lines.
Hint: step-wise variation or linear interpolation of color values can be used as a good scientific visualization technique to map arbitrary function values to a color map.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.
Hint: consider including Fog (with Fog color matching Background color) to provide further depth cueing for LineSet (LS).Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.vertexCount [vertexCount accessType initializeOnly, type MFInt32 CDATA #IMPLIED] [2,+β)
vertexCount describes how many vertices are used in each individual polyline segment from the Coordinate point values. Coordinate point values are assigned as a block of points to each line by taking vertexCount[n] vertices at a time.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources LoadSensor LoadSensor generates events as watchList child nodes are either loaded or fail to load. Changing watchlist child nodes restarts the LoadSensor.
Hint: use multiple LoadSensor nodes to track multiple loading nodes individually.
Hint: Background is not sensed due to multiple-image ambiguity.
Warning: watchList child nodes are not rendered, so normally USE copies of other nodes to sense load status.
Hint: use Inline 'load' field to prompt or defer loading.
Warning: new X3D node, not supported in VRML97.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter12EnvironmentSensorSoundSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.timeOut [timeOut accessType inputOutput, type SFTime CDATA "0" #IMPLIED]
Time in seconds of maximum load duration prior to declaring failure. Default value zero means use browser defaults.isActive [isActive: outputOnlytype SFBool #FIXED ""]
isActive true/false events are sent when load sensing starts/stops.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isLoaded [isLoaded accessType outputOnly, type SFBool #FIXED ""]
Notify when all watchList child nodes are loaded, or at least one has failed. Sends true on successfully loading all watchList child nodes. Sends false on timeOut of any watchList child nodes, failure of any watchList child nodes to load, or no local copies available and no network present.
Hint: use multiple LoadSensor nodes to track multiple loading nodes individually.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.loadTime [loadTime accessType outputOnly, type SFTime CDATA #FIXED ""]
Time of successful load complete, not sent on failure.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.progress [progress accessType outputOnly, type SFFloat CDATA [0,1.0]
#FIXED ""] Sends 0.0 on start and 1.0 on completion. Intermediate values are browser dependent and always increasing (may indicate fraction of bytes, fraction of expected time or another metric).
Hint: only 0 and 1 events are guaranteed.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources LOD LOD (Level Of Detail) uses camera-to-object distance to switch among contained child levels. (Contained nodes are now called 'children' rather than 'level', for consistent naming among all GroupingNodeType nodes.) LOD range values go from near to far (as child geometry gets simpler for better performance). For n range values, you must have n+1 children levels! Only currently selected children level is rendered, but all levels continue to send/receive events.
Hint: can add <WorldInfo info='null node'/> as a nonrendering, invisible final (or initial or intermediate) child node that also documents the LOD switch-over rationale.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: GeoViewpoint OrthoViewpoint and Viewpoint share the same binding stack, so no more than one of these nodes can be bound and active at a given time.
Warning: do not include GeoViewpoint OrthoViewpoint or Viewpoint as a child of LOD or Switch, instead use ViewpointGroup as parent to constrain location proximity where the viewpoint is available to user.
Warning: results are undefined if a bindable node (Background, Fog, NavigationInfo, OrthoViewpoint, TextureBackground, Viewpoint) is a contained descendant node of either LOD or Switch. Avoid this authoring pattern.
Hint: security mechanisms such as encryption and authentication can be applied to high levels of detail, allowing authors to protect intellectual property at high resolution for authorized users while still rendering simple unrestricted models for other users.
Warning: nested LOD (and/or GeoLOD) nodes with overlapping range intervals can lead to unexpected or undefined behavior.
Hint: contained nodes must have type X3DChildNode, such as Group or Transform or Shape.
Warning: LOD is not allowed as a direct parent of Appearance, Material, Color, Coordinate, Normal or Texture nodes, instead ensure that a Shape is present.
Hint: apply containerField='shape' if parent node is CADFace.
Hint: ConformanceNist X3D Examples Archive https://www.web3d.org/x3d/content/examples/ConformanceNist/SpecialGroups/LODSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.children [children accessType inputOutput, type MFNode array, empty list] [X3DChildNode]
Grouping nodes contain an ordered list of children nodes.
Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
Hint: X3D Architecture 10.2.1 Grouping and children node types, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodescenter [center accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Viewpoint distance-measurement offset from origin of local coordinate system, used for LOD node distance calculations.range [range accessType initializeOnly, type MFFloat CDATA #IMPLIED] (0,+β)
Specifies ideal distances at which to switch between levels. The range field is a floating-point array of camera-to-object distance transitions for each child level, where range values go from near to far. For n range values, you must have n+1 child levels!
Hint: can add <WorldInfo info='null node'/> as a nonrendering, invisible final (or initial or intermediate) child node that also documents the LOD switch-over rationale.
Hint: not setting range values indicates that level switching can be optimized automatically based on performance.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN (children | proxy |shape) "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Material Material specifies surface rendering properties for associated geometry nodes. Material attributes are used by the VRML lighting equations during rendering.
Hint: insert Shape and Appearance nodes before adding material.
Hint: DEF/USE copies of a single node can provide a similar "look + feel" style for related shapes in a scene.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Color
Hint: X3D Example Archives, Basic, Universal Media Materials https://www.web3d.org/x3d/content/examples/Basic/UniversalMediaMaterials
Hint: X3D Architecture 17.2.2 Lighting model https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/lighting.html#LightingmodelSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.diffuseColor [diffuseColor accessType inputOutput, type SFColor CDATA "0.8 0.8 0.8"] [0,1]
how much direct, angle-dependent light is reflected from all light sources.
Hint: only emissiveColor affects IndexedLineSet, LineSet and PointSet.emissiveColor [emissiveColor accessType inputOutput, type SFColor CDATA "0 0 0"] [0,1]
how much glowing light is emitted from this object.
Hint: emissiveColors glow even when all lights are off.
Hint: reset diffuseColor from default (.8 .8 .8) to (0 0 0) to avoid washout.
Hint: only emissiveColor affects IndexedLineSet, LineSet and PointSet.
Warning: bright emissiveColor values can wash out other colors and some textures.specularColor [specularColor accessType inputOutput, type SFColor CDATA "0 0 0"] [0,1]
specular highlights are brightness reflections (example: shiny spots on an apple).
Interchange profile hint: this field may be ignored, applying the default value regardless.shininess [shininess accessType inputOutput, type SFFloat CDATA "0.2"] [0,1]
Lower shininess values provide soft specular glows, while higher values result in sharper, smaller highlights.
Interchange profile hint: this field may be ignored, applying the default value regardless.ambientIntensity [ambientIntensity accessType inputOutput, type SFFloat CDATA "0.2"] [0,1]
how much ambient omnidirectional light is reflected from all light sources.
Interchange profile hint: this field may be ignored, applying the default value regardless.transparency [transparency accessType inputOutput, type SFFloat CDATA "0"] [0,1]
how "clear" an object is: 1.0 is completely transparent, 0.0 is completely opaque.
Interchange profile hint: transparency < .5 opaque, transparency > .5 transparent.containerField [containerField type NMTOKEN "material"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources meta The meta statement provides metadata information about this X3D model, using the same definitions as HTML's meta tag. The name and content attributes together define key=value metadata pairs.
Hint: X3D XML Encoding https://www.web3d.org/documents/specifications/19776-1/V3.3/Part01/concepts.html#Header
Hint: X3D Scene Authoring Hints, meta Statements https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#metaStatements
Hint: W3C HTML5 Recommendation, 4.2.5 The meta element https://www.w3.org/TR/html5/document-metadata.html#the-meta-element
Warning: the META statement is capitalized in the ClassicVRML Encoding.
Hint: X3D Architecture 7.2.5.6 META statement https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#METAStatement
Hint: HTML5 section 4.2.5.1. Standard metadata names https://www.w3.org/TR/html5/document-metadata.html#standard-metadata-names
Hint: HTML5 section 4.2.5.2. Other metadata names https://www.w3.org/TR/html5/document-metadata.html#other-metadata-names
Hint: WHATWG Wiki MetaExtensions https://wiki.whatwg.org/wiki/MetaExtensionsSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadataname [name type NMTOKEN #IMPLIED]
Keyword name of the meta attribute, following the same naming conventions as HTML's meta tag.
Hint: for broadest searchability, use Dublin Core Metadata Initiative (DCMI) terms for name values. https://www.dublincore.org/documents/dcmi-terms
Warning: Dublin Core Metadata Initiative (DCMI) requires name to be a token appendable to a URI, so normal expectation for a typical name is type NMTOKEN with no whitespace.
Warning: if the name attribute is set, the http-equiv attribute should not be set.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionscontent [content type CDATA #REQUIRED]
The content attribute provides metadata information relevant to the name attribute provided. The name and content attributes together define key=value metadata pairs.
Hint: for broadest searchability, use Dublin Core Metadata Initiative (DCMI) terms for name values. https://www.dublincore.org/documents/dcmi-terms
Warning: Dublin Core Metadata Initiative (DCMI) requires name to be a token appendable to a URI, so normal expectation for a typical name is type NMTOKEN with no whitespace.
Hint: alternatively the content attribute can support the http-equiv attribute.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).lang [lang type CDATA #IMPLIED]
Language code, as per [IETF BCP47/RFC5646] https://www.rfc-editor.org/rfc/bcp/bcp47.txt and described in https://www.w3.org/International/questions/qa-http-and-lang
Hint: Language Subtag Lookup at http://people.w3.org/rishida/utils/subelementsdir [dir type ENUMERATION #IMPLIED]
Direction for weak/neutral text (ltr=left-to-right, rtl=right-to-left). See http://www.w3.org/TR/html4/struct/dirlang.html#adef-dirhttp-equiv [http-equiv type CDATA #IMPLIED]
The http-equiv attribute provides an HTTP header for the value of the content attribute.
Example: <meta http-equiv='Expires' content='Tue, 20 Aug 1996 14:25:27 GMT'>.
Hint: the http-equiv attribute can be used to simulate an HTTP response header.
Warning: if the name attribute is set, the http-equiv attribute should not be set.
Hint: see http://www.w3.org/TR/html4/struct/global.html#adef-http-equivscheme [scheme type CDATA #IMPLIED]
The scheme attribute allows authors to provide user agents more context for the correct interpretation of meta information. For example, <<meta scheme="ISBN" name="identifier" content="0-8230-2355-9"> See http://www.w3.org/TR/html4/struct/global.html#idx-schemeclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources MetadataDouble MetadataDouble contains a typed list of values providing metadata information about its parent node. Further information about this specific Metadata* node may be provided by a single child Metadata* node with containerField="metadata".
Hint: use containerField="value" if the parent node is MetadataSet.
Hint: if a metadata node is needed as a top-level root node for the scene, first insert a parent WorldInfo (or WorldInfo/MetadataSet) to contain it.
Hint: if present, an IS statement is the first child within any other node.
Hint: an IS statement precedes any sibling Metadata* node, which in turn precedes any other sibling nodes.
Hint: The choice of MetadataDouble versus MetadataFloat usually depends on the relevant tool utilizing the value, or else the relevant metadata reference defining the value.
Hint: comments are not readable when a model file is loaded for viewing, but WorldInfo and Metadata* nodes are persistent and inspectable at run time.
Hint: X3D for Web Authors, Chapter 15, Metadata Information https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter15-Metadata/Chapter15-MetadataInformation.htmlSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.name [name accessType inputOutput, type SFString CDATA #IMPLIED]
Depending on the metadata vocabulary, the attribute name is usually required for metadata nodes.
Warning: name field is not included if this instance is a USE node, in order to avoid potential mismatches.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsvalue [value accessType inputOutput, type MFDouble CDATA #IMPLIED]
The value attribute is a strictly typed data array providing relevant metadata information.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).reference [reference accessType inputOutput, type SFString CDATA #IMPLIED]
Reference to the metadata standard or definition defining this particular metadata value.containerField [containerField type NMTOKEN "metadata"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: set containerField="value" if part of a MetadataSet, otherwise use default value "metadata" if providing metadata about a parent metadata node itself.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources MetadataFloat MetadataFloat contains a typed list of values providing metadata information about its parent node. Further information about this specific Metadata* node may be provided by a single child Metadata* node with containerField="metadata".
Hint: use containerField="value" if the parent node is MetadataSet.
Hint: if a metadata node is needed as a top-level root node for the scene, first insert a parent WorldInfo (or WorldInfo/MetadataSet) to contain it.
Hint: if present, an IS statement is the first child within any other node.
Hint: an IS statement precedes any sibling Metadata* node, which in turn precedes any other sibling nodes.
Hint: The choice of MetadataDouble versus MetadataFloat usually depends on the relevant tool utilizing the value, or else the relevant metadata reference defining the value.
Hint: comments are not readable when a model file is loaded for viewing, but WorldInfo and Metadata* nodes are persistent and inspectable at run time.
Hint: X3D for Web Authors, Chapter 15, Metadata Information https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter15-Metadata/Chapter15-MetadataInformation.htmlSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.name [name accessType inputOutput, type SFString CDATA #IMPLIED]
Depending on the metadata vocabulary, the attribute name is usually required for metadata nodes.
Warning: name field is not included if this instance is a USE node, in order to avoid potential mismatches.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsvalue [value accessType inputOutput, type MFFloat CDATA #IMPLIED]
The value attribute is a strictly typed data array providing relevant metadata information.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).reference [reference accessType inputOutput, type SFString CDATA #IMPLIED]
Reference to the metadata standard or definition defining this particular metadata value.containerField [containerField type NMTOKEN "metadata"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: set containerField="value" if part of a MetadataSet, otherwise use default value "metadata" if providing metadata about a parent metadata node itself.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources MetadataInteger MetadataInteger contains a typed list of values providing metadata information about its parent node. Further information about this specific Metadata* node may be provided by a single child Metadata* node with containerField="metadata".
Hint: use containerField="value" if the parent node is MetadataSet.
Hint: if a metadata node is needed as a top-level root node for the scene, first insert a parent WorldInfo (or WorldInfo/MetadataSet) to contain it.
Hint: if present, an IS statement is the first child within any other node.
Hint: an IS statement precedes any sibling Metadata* node, which in turn precedes any other sibling nodes.
Hint: comments are not readable when a model file is loaded for viewing, but WorldInfo and Metadata* nodes are persistent and inspectable at run time.
Hint: X3D for Web Authors, Chapter 15, Metadata Information https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter15-Metadata/Chapter15-MetadataInformation.htmlSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.name [name accessType inputOutput, type SFString CDATA #IMPLIED]
Depending on the metadata vocabulary, the attribute name is usually required for metadata nodes.
Warning: name field is not included if this instance is a USE node, in order to avoid potential mismatches.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsvalue [value accessType inputOutput, type MFInt32 CDATA #IMPLIED]
The value attribute is a strictly typed data array providing relevant metadata information.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).reference [reference accessType inputOutput, type SFString CDATA #IMPLIED]
Reference to the metadata standard or definition defining this particular metadata value.containerField [containerField type NMTOKEN "metadata"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: set containerField="value" if part of a MetadataSet, otherwise use default value "metadata" if providing metadata about a parent metadata node itself.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources MetadataSet MetadataSet contains a list of Metadata* nodes that each have containerField="value" and together provide information about the parent node of the MetadataSet. Further information about this specific MetadataSet node may be provided by a single child Metadata* node with containerField="metadata".
Hint: use containerField="value" if the parent node is MetadataSet.
Hint: if a metadata node is needed as a top-level root node for the scene, first insert a parent WorldInfo (or WorldInfo/MetadataSet) to contain it.
Hint: if present, an IS statement is the first child within any other node.
Hint: an IS statement precedes any sibling Metadata* node, which in turn precedes any other sibling nodes.
Hint: MetadataSet can contain other MetadataSet nodes.
Hint: comments are not readable when a model file is loaded for viewing, but WorldInfo and Metadata* nodes are persistent and inspectable at run time.
Hint: X3D for Web Authors, Chapter 15, Metadata Information https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter15-Metadata/Chapter15-MetadataInformation.htmlSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.name [name accessType inputOutput, type SFString CDATA #IMPLIED]
Depending on the metadata vocabulary, the attribute name is usually required for metadata nodes.
Warning: name field is not included if this instance is a USE node, in order to avoid potential mismatches.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsreference [reference accessType inputOutput, type SFString CDATA #IMPLIED]
Reference to the metadata standard or definition defining this particular metadata value.containerField [containerField type NMTOKEN "metadata"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: set containerField="value" if part of a MetadataSet, otherwise use default value "metadata" if providing metadata about a parent metadata node itself.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources MetadataString MetadataString contains a typed list of values providing metadata information about its parent node. Further information about this specific Metadata* node may be provided by a single child Metadata* node with containerField="metadata".
Hint: use containerField="value" if the parent node is MetadataSet.
Hint: if a metadata node is needed as a top-level root node for the scene, first insert a parent WorldInfo (or WorldInfo/MetadataSet) to contain it.
Hint: if present, an IS statement is the first child within any other node.
Hint: an IS statement precedes any sibling Metadata* node, which in turn precedes any other sibling nodes.
Hint: comments are not readable when a model file is loaded for viewing, but WorldInfo and Metadata* nodes are persistent and inspectable at run time.
Hint: X3D for Web Authors, Chapter 15, Metadata Information https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter15-Metadata/Chapter15-MetadataInformation.htmlSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.name [name accessType inputOutput, type SFString CDATA #IMPLIED]
Depending on the metadata vocabulary, the attribute name is usually required for metadata nodes.
Warning: name field is not included if this instance is a USE node, in order to avoid potential mismatches.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsvalue [value accessType inputOutput, type MFString CDATA #IMPLIED]
The value attribute is a strictly typed data array providing relevant metadata information.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).reference [reference accessType inputOutput, type SFString CDATA #IMPLIED]
Reference to the metadata standard or definition defining this particular metadata value.containerField [containerField type NMTOKEN "metadata"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: set containerField="value" if part of a MetadataSet, otherwise use default value "metadata" if providing metadata about a parent metadata node itself.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources MovieTexture MovieTexture applies a 2D movie image to surface geometry, or provides audio for a Sound node. First define as texture, then USE as Sound source to see it/hear it/save memory. Texture maps have a 2D coordinate system (s, t) horizontal and vertical, with (s, t) values in range [0.0, 1.0] for opposite corners of the image.
Hint: insert Shape and Appearance nodes before adding texture.
Hint: provide a Viewpoint that allows a clear view of the MovieTexture so that users can easily see all details.
Hint: utilize DEF/USE references for multiple copies of a single MovieTexture video file in order to avoid multiple-download delays, reduce memory requirements, and maintain synchronization.
Hint: authors can provide multiple video formats for the same video track, with each source address listed separately in the url field.
Hint: player support for MPEG-1 video format is required, other formats are optional.
Warning: MovieTexture has containerField='texture' when parent is an Appearance node, otherwise containerField='source' when parent is a Sound node.
Hint: X3D Scene Authoring Hints, Images https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Images
Hint: Texture mapping https://en.wikipedia.org/wiki/Texture_mapping
Hint: X3D Architecture 17.2.2 Lighting model https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/lighting.html#Lightingmodel
Hint: apply containerField='watchList' when parent node is LoadSensor.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.description [description accessType inputOutput, type SFString CDATA #IMPLIED]
Author-provided prose that describes intended purpose of this node.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).url [url accessType inputOutput, type MFString CDATA #IMPLIED]
Location and filename of movie file or stream. Multiple locations are more reliable, and including a Web address lets e-mail attachments work.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Hint: X3D Scene Authoring Hints, urls https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urlsloop [loop accessType inputOutput, type SFBool (true|false) "false"]
Repeat indefinitely when loop=true, repeat only once when loop=false.speed [speed accessType inputOutput, type SFFloat CDATA "1.0"]
Factor for how fast the movie (or soundtrack) is played.
Hint: a MovieTexture node shall display frame 0 if speed = 0.
Hint: a negative speed value sets the movie to play in reverse.startTime [startTime accessType inputOutput, type SFTime CDATA "0"]
Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.stopTime [stopTime accessType inputOutput, type SFTime CDATA "0"]
Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
Warning: An active TimeSensor node ignores set_cycleInterval and set_startTime events.
Warning: An active TimeSensor node ignores set_stopTime event values less than or equal to startTime.repeatS [repeatS accessType initializeOnly, type SFBool (true|false) "true"]
Whether to horizontally repeat texture along S axis.repeatT [repeatT accessType initializeOnly, type SFBool (true|false) "true"]
Whether to vertically repeat texture along T axis.duration_changed [duration_changed accessType outputOnly, type SFTime CDATA #FIXED ""] [0,+β)
or -1. Length of time in seconds Length of time in seconds for one cycle of media stream.
Warning: duration value of -1 implies that media data has not yet loaded or is unavailable for some reason.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
Hint: duration_changed is an SFTime duration interval, normally nonnegative, and not an absolute clock time.
Hint: changing the pitch field does not trigger a duration_changed event. Playback interval may vary but duration of the original media data remains unmodified.isActive #FIXED ""]
isActive true/false events are sent when playback starts/stops.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isPaused [isPaused accessType outputOnly, type SFBool #FIXED ""]
isPaused true/false events are sent when MovieTexture is paused/resumed.
Warning: not supported in VRML97.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.pauseTime [pauseTime accessType inputOutput, type SFTime CDATA "0"]
When time now >= pauseTime, isPaused becomes true and MovieTexture becomes paused. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
Warning: not supported in VRML97.resumeTime [resumeTime accessType inputOutput, type SFTime CDATA "0"]
When resumeTime becomes <= time now, isPaused becomes false and MovieTexture becomes active. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
Warning: not supported in VRML97.elapsedTime [elapsedTime accessType outputOnly, type SFTime CDATA #FIXED ""] [0,+β)
Current elapsed time since MovieTexture activated/running, cumulative in seconds, and not counting any paused time.
Warning: not supported in VRML97.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
Hint: elapsedTime is a nonnegative SFTime duration interval, not an absolute clock time.containerField [containerField type NMTOKEN (texture | back | bottom | front | left | right | top) "texture"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Warning: MovieTexture has containerField='texture' when parent is an Appearance node, otherwise containerField='source' when parent is a Sound node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources MultiTexture MultiTexture applies several individual textures to a single geometry node, enabling a variety of visual effects that include light mapping and environment mapping. MultiTexture can contain zero or more ImageTexture, MovieTexture and PixelTexture nodes. Texture maps have a 2D coordinate system (s, t) horizontal and vertical, with (s, t) values in range [0.0, 1.0] for opposite corners of the image.
Hint: insert Shape and Appearance nodes before adding texture.
Hint: Texture mapping https://en.wikipedia.org/wiki/Texture_mapping
Warning: the number of textures to be blended may have a significant impact on performance, depending on available graphics hardware capabilities.
Hint: multitexturing is accomplished using MultiTexture, MultiTextureCoordinate and MultiTextureTransform nodes.
Hint: X3D Texturing component Figure 18.2 Lightmap example, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#f-Lightmapexample
Hint: X3D Texturing component Table 18.2: Comparison of single texture and multitexture attributes, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#t-SingleAndMultitextureAttrs
Hint: X3D Architecture 17.2.2 Lighting model https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/lighting.html#Lightingmodel
Hint: MultiTexture does not need to be included in LoadSensor watchList since any child ImageTexture and MovieTexture nodes of interest can be handled separately.
Warning: MultiTexture may not contain another MultiTexture node.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.alpha [alpha accessType inputOutput, type SFFloat CDATA "1.0"] [0,1]
The alpha field defines the alpha (1-transparency) base value for mode operations.color [color accessType inputOutput, type SFColor CDATA "1 1 1"] [0,1]
The color field defines the RGB base values for mode operations.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Colorfunction [function accessType inputOutput, type MFString CDATA (COMPLEMENT | ALPHAREPLICATE) #IMPLIED]
function operators COMPLEMENT or ALPHAREPLICATE can be applied after the mode blending operation. Empty string value "" indicates that no function operation is applied for that stage.
Hint: include the same number of function values as textures, otherwise the default of no function operation is applied for each remaining stage.
Hint: X3D Architecture Table 18.5 Values for the function field https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#t-ValuesForFunctionField for further details.mode [mode accessType inputOutput, type SFString CDATA (MODULATE | REPLACE | MODULATE2X | MODULATE4X | ADD | ADDSIGNED | ADDSIGNED2X | SUBTRACT | ADDSMOOTH | BLENDDIFFUSEALPHA | BLENDTEXTUREALPHA | BLENDFACTORALPHA | BLENDCURRENTALPHA | MODULATEALPHA_ADDCOLOR | MODULATEINVALPHA_ADDCOLOR | MODULATEINVCOLOR_ADDALPHA | OFF | SELECTARG1 | SELECTARG2 | DOTPRODUCT3) #IMPLIED]
mode field indicates the type of blending operation, both for color and for alpha channel.
Hint: include the same number of mode values as textures, otherwise the default value MODULATE is added for each remaining stage.
Warning: do not wrap extra quotation marks around these SFString enumeration values, since "quotation" "marks" are only used for MFString values.
Hint: X3D Architecture Table 18.3 Multitexture modes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#t-MultitextureModes for further details.source [source accessType inputOutput, type MFString CDATA (DIFFUSE | SPECULAR | FACTOR) #IMPLIED]
source field determines whether each image source is treated as DIFFUSE, SPECULAR or a multiplicative FACTOR. Empty string value "" indicates that no source modifier is applied for that stage.
Hint: include the same number of source values as textures, otherwise the default of no source interpretation is applied for each remaining stage.
Hint: X3D Architecture Table 18.4 Values for the source field https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#t-ValuesForSourceField for further details.containerField [containerField type NMTOKEN (texture | back | bottom | front | left | right | top) "texture"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
MultiTextureCoordinateMultiTextureCoordinate contains multiple TextureCoordinate or TextureCoordinateGenerator nodes, for use by a parent polygonal geometry node such as IndexedFaceSet or a Triangle* node. Each of the contained texture coordinate nodes correspond to the multiple texture nodes contained in a sibling Appearance/MultiTexture node.
Hint: add Shape and then polgyonal/planar geometry before adding MultiTextureCoordinate.
Hint: Texture mapping https://en.wikipedia.org/wiki/Texture_mapping
Warning: the number of textures to be blended may have a significant impact on performance, depending on available graphics hardware capabilities.
Hint: multitexturing is accomplished using MultiTexture, MultiTextureCoordinate and MultiTextureTransform nodes.
Hint: X3D Texturing component Figure 18.2 Lightmap example, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#f-Lightmapexample
Hint: X3D Texturing component Table 18.2: Comparison of single texture and multitexture attributes, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#t-SingleAndMultitextureAttrsSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.containerField [containerField type NMTOKEN "texCoord"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
MultiTextureTransformMultiTextureTransform contains multiple TextureTransform nodes, each provided for use by corresponding ImageTexture MovieTexture or PixelTexture nodes within a sibling MultiTexture node.
Hint: insert Shape and Appearance nodes before adding MultiTextureTransform.
Hint: Texture mapping https://en.wikipedia.org/wiki/Texture_mapping
Warning: the number of textures to be blended may have a significant impact on performance, depending on available graphics hardware capabilities.
Hint: multitexturing is accomplished using MultiTexture, MultiTextureCoordinate and MultiTextureTransform nodes.
Hint: X3D Texturing component Figure 18.2 Lightmap example, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#f-Lightmapexample
Hint: X3D Texturing component Table 18.2: Comparison of single texture and multitexture attributes, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#t-SingleAndMultitextureAttrsSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.containerField [containerField type NMTOKEN "textureTransform"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources NavigationInfo NavigationInfo describes the user's viewing model, user navigation-interaction modalities, and also dimensional characteristics of the user's (typically invisible) avatar.
Hint: for inspection of simple objects, usability often improves with type="EXAMINE" "ANY"
Hint: NavigationInfo types '"WALK" "FLY"' support camera-to-object collision detection.
Hint: Background, Fog, NavigationInfo, TextureBackground and Viewpoint are bindable nodes, meaning that no more than one of each node type can be active at a given time.
Warning: results are undefined if a bindable node (Background, Fog, NavigationInfo, OrthoViewpoint, TextureBackground, Viewpoint) is a contained descendant node of either LOD or Switch. Avoid this authoring pattern.
Hint: Regardless of viewpoint jump value at bind time, the relative viewing transformation between user's view and defined position/orientation is stored for later use when un-jumping (returning to the viewpoint when subsequent viewpoint is unbound).
Hint: customizable design pattern for dedicated Viewpoint/NavigationInfo pair: <Viewpoint DEF='SpecialView'/> <NavigationInfo DEF='SpecialNav'/> <ROUTE fromNode='SpecialView' fromField='isBound' toNode='SpecialNav' toField='set_bind'/>
Hint: X3D Scene Authoring Hints, Viewpoints https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ViewpointsSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.type [type accessType inputOutput, type MFString CDATA "EXAMINE" "ANY"]
Enter one or more quoted SFString values: "EXAMINE" "WALK" "FLY" "LOOKAT" "EXPLORE" "ANY" "NONE".
Hint: for inspection of simple objects, usability often improves with type="EXAMINE" "ANY".
Hint: types WALK and FLY force strict camera-to-object collision detection.
Hint: see Collision node for further details on camera-to-object collision detection.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc." ]
Interchange profile hint: this field may be ignored, applying the default value regardless.transitionType [transitionType accessType inputOutput, type MFString CDATA "LINEAR"]
Camera transition between viewpoints. Enter one or more quoted SFString values: "ANIMATE" "TELEPORT" "LINEAR".
Hint: "ANIMATE" behavior is browser-specific, "TELEPORT" is immediate, and "LINEAR" may proceed directly through intervening objects.speed [speed accessType inputOutput, type SFFloat CDATA "1.0"] [0,+β)
Default rate at which viewer travels through scene, meters/second.
Warning: default 1 m/s usually seems slow for ordinary navigation.
Interchange profile hint: this field may be ignored, applying the default value regardless.headlight [headlight accessType inputOutput, type SFBool (true|false) "true"]
Enable/disable directional light that always points in the direction the user is looking.avatarSize [avatarSize accessType inputOutput, type MFFloat CDATA "0.25 1.6 0.75"]
avatarSize triplet values define three separate parameters: (a) collisionDistance between user and geometry, i.e. near clipping plane of view frustrum, default 0.25m, (b) viewer height above terrain, default 1.6m, and (c) tallest height viewer can WALK over, default 0.75m.
Hint: X3D specification recommends that browsers set near clipping plane to one-half of avatarSize.CollisionDistance value.
Warning: important design thumbrule is to keep (visibilityLimit / avatarSize.CollisionDistance) < 10,000 to avoid aliasing artifacts (i.e. polygon "tearing").
Hint: Aliasing https://en.wikipedia.org/wiki/Aliasing and Clipping https://en.wikipedia.org/wiki/Clipping_(computer_graphics)
Interchange profile hint: this field may be ignored, applying the default value regardless.
Hint: transformation hierarchy of currently bound Viewpoint node scales avatarSize, but translations and rotations have no effect.visibilityLimit [visibilityLimit accessType inputOutput, type SFFloat CDATA "0.0"]
Geometry beyond the visibilityLimit may not be rendered (far clipping plane of the view frustrum).
Hint: visibilityLimit=0.0 indicates an infinite visibility limit (no far clipping plane).
Hint: set visibilityLimit to appropriate positive value in meters to define far culling plane of view frustum.
Hint: X3D specification recommends that browsers set near clipping plane to one-half of avatarSize.CollisionDistance value.
Warning: important design thumbrule is to keep (visibilityLimit / avatarSize.CollisionDistance) < 10,000 to avoid aliasing artifacts (i.e. polygon "tearing").
Hint: Aliasing https://en.wikipedia.org/wiki/Aliasing and Clipping https://en.wikipedia.org/wiki/Clipping_(computer_graphics)
Interchange profile hint: this field may be ignored, applying the default value regardless.set_bind [set_bind accessType inputOnly, type SFBool #FIXED ""]
Receiving event set_bind=true activates and binds this node at the top of the binding stack. Receiving event set_bind=false deactivates and unbinds this node from the top of the binding stack. Thus setting set_bind to true/false will enable/disable the effect of this node.
Hint: paired node operations can be established by connecting set_bind and isBound fields of corresponding bindable nodes.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.bindTime [bindTime accessType outputOnly, type SFTime CDATA #FIXED ""]
Event sent reporting timestamp when node becomes active/inactive.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isBound [isBound accessType outputOnly, type SFBool #FIXED ""]
Output event true gets sent when node becomes bound and activated, otherwise output event false gets sent when node becomes unbound and deactivated.
Hint: paired node operations can be established by connecting set_bind and isBound fields of corresponding bindable nodes.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Normal Normal defines a set of 3D surface-normal vectors that apply either to a sibling Coordinate|CoordinateDouble node, or else to a parent ElevationGrid node. Normal values are perpendicular directions that are used per-polygon or per-vertex when computing lighting and shading.
Hint: Normal values are typically only calculated or applied once, during initial loading of model geometry.
Hint: custom Normal values can produce special effects.
Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.
Hint: computation of normal values is performed quite quickly on modern 3D graphics hardware, often with no perceptible delay.
Warning: adding normal values to a model might significantly increase file size. Testing can help determine proper tradeoffs between file size, network transmission delays and initial rendering speed.
Hint: normal vectors perpendicular to 3D surface https://en.wikipedia.org/wiki/Normal_(geometry)Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.vector [vector accessType inputOutput, type MFVec3f CDATA #IMPLIED]
set of unit-length normal vectors, corresponding to indexed polygons or vertices.
Warning: unit length means a magnitude of 1.0, so normal values of (0,0,0) are invalid.containerField [containerField type NMTOKEN "normal"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources NormalInterpolator NormalInterpolator generates a series of normal (perpendicular) 3-tuple SFVec3f values. Each vector value has unit length, i.e. the set of allowed vectors describes the surface of a unit sphere. ROUTE values to vector attribute of a <Normal> node or another MFVec3f attribute
Hint: typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction
Hint: typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolationSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.key [key accessType inputOutput, type MFFloat CDATA #IMPLIED]
Definition values for linear-interpolation function input intervals, in non-decreasing order and corresponding to a value in the keyValue array.
Warning: number of keys must match number of keyValues!
Warning: values in key array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
Hint: typical interval for values in key array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.keyValue [keyValue accessType inputOutput, type MFVec3f CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to an input-fraction value in the key array.
Warning: number of keys must match number of keyValues!set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
set_fraction selects input key for corresponding keyValue output.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type MFVec3f CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources NurbsCurve NurbsCurve is a 3D curve analogous to NurbsPatchSurface.
Hint: the contained controlPoint field can hold a Coordinate or CoordinateDouble node.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.knot [knot accessType initializeOnly, type MFDouble CDATA #IMPLIED]
knot vector, where size = number of control points + order of curve.order [order accessType initializeOnly, type SFInt32 CDATA "3"]
define order of surface by polynomials of degree = order-1.weight [weight accessType inputOutput, type MFDouble CDATA #IMPLIED]
Vector assigning relative weight value to each control point.tessellation [tessellation accessType inputOutput, type SFInt32 CDATA #IMPLIED]
hint for surface tessellation.closed [closed accessType initializeOnly, type SFBool (true|false) "false"]
Whether or not the curve is closed (i.e. matching end values).containerField [containerField type NMTOKEN "geometry"]
geometry is the field-label prefix indicating relationship to parent node. Example values: containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources NurbsCurve2D NurbsCurve2D defines a trimming segment that is part of a trimming contour in the u-v domain of a surface. NurbsCurve2D and ContourPolyline2D nodes that together form a closed contour, defined in the u-v parametric space of a NURBS surface, may be used as children in a Contour2D node.
Warning: NurbsCurve2D is not a renderable geometry node.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.controlPoint [controlPoint accessType inputOutput, type MFVec2f CDATA #IMPLIED]
controlPoint defines a set of control points of dimension uDimension by vDimension, and defines a mesh where the points do not have uniform spacing.knot [knot accessType initializeOnly, type MFDouble CDATA #IMPLIED]
knot vector, where size = number of control points + order of curve.order [order accessType initializeOnly, type SFInt32 CDATA "2"]
define order of surface by polynomials of degree = order-1.weight [weight accessType inputOutput, type MFDouble CDATA #IMPLIED]
Vector assigning relative weight value to each control point.tessellation [tessellation accessType inputOutput, type SFInt32 CDATA "0"]
hint for surface tessellation.closed [closed accessType initializeOnly, type SFBool (true|false) "false"]
Whether or not the curve is closed (i.e. matching end values).containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
NurbsOrientationInterpolatorNurbsOrientationInterpolator describes a 3D NURBS curve and outputs interpolated orientation values.
Hint: the SFNode controlPoint field can contain a single Coordinate or CoordinateDouble node.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.knot [knot accessType inputOutput, type MFDouble CDATA #IMPLIED]
knot vector, where size = number of control points + order of curve.order [order accessType inputOutput, type SFInt32 CDATA "3"]
define order of surface by polynomials of degree = order-1.weight [weight accessType inputOutput, type MFDouble CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to knots.
Hint: number of weights must match number of knots!set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
setting fraction in range [0,1] selects input key for corresponding keyValue output, computing a 3D position on the curve.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type SFRotation CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources NurbsPatchSurface NurbsPatchSurface defines a contiguous 3D Non-Uniform Rational B-Spline (NURBS) surface. Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.uClosed [uClosed accessType initializeOnly, type SFBool (true|false) "false"]
Whether opposite surface sides are closed (seamless) across u dimension.vClosed [vClosed accessType initializeOnly, type SFBool (true|false) "false"]
Whether opposite surface sides are closed (seamless) across u dimension.uDimension [uDimension accessType initializeOnly, type SFInt32 CDATA "0"]
Number of control points in u dimension.vDimension [vDimension accessType initializeOnly, type SFInt32 CDATA "0"]
Number of control points in v dimension.uKnot [uKnot accessType initializeOnly, type MFDouble CDATA #IMPLIED]
knot vector, where size = number of control points + order of curve.vKnot [vKnot accessType initializeOnly, type MFDouble CDATA #IMPLIED]
knot vector, where size = number of control points + order of curve.uOrder [uOrder accessType initializeOnly, type SFInt32 CDATA "3"]
define order of surface by polynomials of degree = order-1.vOrder [vOrder accessType initializeOnly, type SFInt32 CDATA "3"]
define order of surface by polynomials of degree = order-1.uTessellation [uTessellation accessType inputOutput, type SFInt32 CDATA "0"]
hint for surface tessellation.vTessellation [vTessellation accessType inputOutput, type SFInt32 CDATA "0"]
hint for surface tessellation.weight [weight accessType inputOutput, type MFDouble CDATA #IMPLIED]
Vector assigning relative weight value to each control point.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.containerField [containerField type NMTOKEN "surface"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
NurbsPositionInterpolatorNurbsPositionInterpolator describes a 3D NURBS curve and outputs interpolated position values.
Hint: the SFNode controlPoint field can contain a single Coordinate or CoordinateDouble node.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.knot [knot accessType inputOutput, type MFDouble CDATA #IMPLIED]
knot vector, where size = number of control points + order of curve.order [order accessType inputOutput, type SFInt32 CDATA "3"]
define order of surface by polynomials of degree = order-1.weight [weight accessType inputOutput, type MFDouble CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to knots.
Hint: number of weights must match number of knots!set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
setting fraction in range [0,1] selects input key for corresponding keyValue output, computing a 3D position on the curve.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources NurbsSet NurbsSet collects a set of NurbsSurface nodes into a common group and treats NurbsSurface set as a unit during tessellation, thereby enforcing tessellation continuity along borders. Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.tessellationScale [tessellationScale accessType inputOutput, type SFFloat CDATA "1"]
scale for surface tessellation in children NurbsSurface nodes.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
NurbsSurfaceInterpolatorNurbsSurfaceInterpolator describes a 3D NURBS curve and outputs interpolated position and normal values.
Hint: the SFNode controlPoint field can contain a single Coordinate or CoordinateDouble node.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.uDimension [uDimension accessType initializeOnly, type SFInt32 CDATA "0"]
Number of control points in u dimension.vDimension [vDimension accessType initializeOnly, type SFInt32 CDATA "0"]
Number of control points in v dimension.uKnot [uKnot accessType initializeOnly, type MFDouble CDATA #IMPLIED]
Knot vector, where size = number of control points + order of curve.vKnot [vKnot accessType initializeOnly, type MFDouble CDATA #IMPLIED]
Knot vector, where size = number of control points + order of curve.uOrder [uOrder accessType initializeOnly, type SFInt32 CDATA "3"]
Define order of surface by polynomials of degree = order-1.vOrder [vOrder accessType initializeOnly, type SFInt32 CDATA "3"]
Define order of surface by polynomials of degree = order-1.weight [weight accessType inputOutput, type MFDouble CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to knots.
Hint: number of weights must match number of knots!set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
setting fraction in range [0,1] selects input key for corresponding keyValue output, computing a 3D position on the curve.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.normal_changed [normal_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.position_changed [position_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources NurbsSweptSurface NurbsSweptSurface contains a crossSectionCurve [X3DNurbsControlCurveNode] and a trajectoryCurve [NurbsCurve]. Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
ccw defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/Clockwisesolid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources NurbsSwungSurface NurbsSwungSurface contains a profileCurve [X3DNurbsControlCurveNode] and a trajectoryCurve [X3DNurbsControlCurveNode]. Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
ccw defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/Clockwisesolid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
NurbsTextureCoordinateNurbsTextureCoordinate describes a 3D NURBS surface in the parametric domain of its surface host, specifying mapping of texture onto the surface.
Hint: the SFNode controlPoint field can contain a single Coordinate or CoordinateDouble node.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.uDimension [uDimension accessType initializeOnly, type SFInt32 CDATA "0"]
Number of control points in u dimension.vDimension [vDimension accessType initializeOnly, type SFInt32 CDATA "0"]
Number of control points in v dimension.uKnot [uKnot accessType initializeOnly, type MFDouble CDATA #IMPLIED]
Knot vector, where size = number of control points + order of curve.vKnot [vKnot accessType initializeOnly, type MFDouble CDATA #IMPLIED]
Knot vector, where size = number of control points + order of curve.uOrder [uOrder accessType initializeOnly, type SFInt32 CDATA "3"]
Define order of surface by polynomials of degree = order-1.vOrder [vOrder accessType initializeOnly, type SFInt32 CDATA "3"]
Define order of surface by polynomials of degree = order-1.controlPoint [controlPoint accessType inputOutput, type MFVec2f CDATA #IMPLIED]
controlPoint defines a set of control points of dimension uDimension by vDimension, and defines a mesh where the points do not have uniform spacing.weight [weight accessType inputOutput, type MFFloat CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to knots.
Hint: number of weights must match number of knots!containerField [containerField type NMTOKEN "texCoord"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
NurbsTrimmedSurfaceNurbsTrimmedSurface generates texture coordinates from a Non-Uniform Rational B-Spline (NURBS) surface. Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.uClosed [uClosed accessType initializeOnly, type SFBool (true|false) "false"]
Whether opposite surface sides are closed (seamless) across u dimension.vClosed [vClosed accessType initializeOnly, type SFBool (true|false) "false"]
Whether opposite surface sides are closed (seamless) across u dimension.uDimension [uDimension accessType initializeOnly, type SFInt32 CDATA "0"]
Number of control points in u dimension.vDimension [vDimension accessType initializeOnly, type SFInt32 CDATA "0"]
Number of control points in v dimension.uKnot [uKnot accessType initializeOnly, type MFDouble CDATA #IMPLIED]
Knot vector, where size = number of control points + order of curve.vKnot [vKnot accessType initializeOnly, type MFDouble CDATA #IMPLIED]
Knot vector, where size = number of control points + order of curve.uOrder [uOrder accessType initializeOnly, type SFInt32 CDATA "3"]
Define order of surface by polynomials of degree = order-1.vOrder [vOrder accessType initializeOnly, type SFInt32 CDATA "3"]
Define order of surface by polynomials of degree = order-1.uTessellation [uTessellation accessType inputOutput, type SFInt32 CDATA "0"]
hint for surface tessellation.vTessellation [vTessellation accessType inputOutput, type SFInt32 CDATA "0"]
hint for surface tessellation.weight [weight accessType inputOutput, type MFDouble CDATA #IMPLIED]
Vector assigning relative weight value to each control point.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.containerField [containerField type NMTOKEN "texCoord"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
OrientationInterpolatorOrientationInterpolator generates a series of 4-tuple axis-angle SFRotation values. Authors can ROUTE value_changed output events to a Transform node's rotation field or to another 4-tuple SFRotation field.
Hint: typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction
Hint: typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolationSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.key [key accessType inputOutput, type MFFloat CDATA #IMPLIED]
Definition values for linear-interpolation function input intervals, in non-decreasing order and corresponding to a value in the keyValue array.
Warning: number of keys must match number of keyValues!
Warning: values in key array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
Hint: typical interval for values in key array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.keyValue [keyValue accessType inputOutput, type MFRotation CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to an input-fraction value in the key array.
Warning: number of keys must match number of keyValues!set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
set_fraction selects input key for corresponding keyValue output.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type SFRotation CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources PixelTexture PixelTexture creates a 2D-image texture map using a numeric array of pixel values. Texture maps have a 2D coordinate system (s, t) horizontal and vertical, with (s, t) values in range [0.0, 1.0] for opposite corners of the image.
Hint: this is a good way to bundle image(s) into a single scene file, avoiding multiple downloads.
Hint: X3D-Edit includes PixelTexture image-conversion import capabilities. https://savage.nps.edu/X3D-Edit/images/PixelTextureImportImage.png
Warning: aggregate file size can grow dramatically.
Hint: insert Shape and Appearance nodes before adding texture.
Hint: X3D Scene Authoring Hints, Images and Videos https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Images
Warning: see ComposedCubeMapTexture and TextureBackground for special containerField values.
Hint: if a texture is opaque, omitting values in the alpha channel can help avoid rendering artifacts related to transparency.
Hint: Texture mapping https://en.wikipedia.org/wiki/Texture_mapping
Hint: X3D Architecture 17.2.2 Lighting model https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/lighting.html#LightingmodelSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.image [image accessType inputOutput, type SFImage CDATA "0 0 0"]
Defines image: width, height, number_of_components per each pixel value, and list of pixel_values. Note that width and height are pixel count, and allowed values for RGBA number_of_components in each pixel value are 1 (intensity), 2 (intensity alpha), 3 (red green blue), 4 (red green blue alpha-opacity).
Warning: the order of initial values in PixelTexture and PixelTexture3D image arrays are different.
Example: intensity [1 2 1 0xFF 0x00]
Example: intensity-alpha [2 2 1 0 255 255 0]
Example: red-green-blue [2 4 3 0xFF0000 0xFF00 0 0 0 0 0xFFFFFF 0xFFFF00]
Example: red-green-blue-alpha [2 2 4 0xFFFFFFAA 0xFFFF00AA 0x11111111AA 0x787800AA]
Hint: it is easier to understand hexadecimal values for each pixel, but integer values are also allowed.
Hint: the array of pixel values has length = (width*height).
Hint: the full list of integers in this field has length = (width*height + 3).repeatS [repeatS accessType initializeOnly, type SFBool (true|false) "true"]
Whether to horizontally repeat texture along S axis.repeatT [repeatT accessType initializeOnly, type SFBool (true|false) "true"]
Whether to vertically repeat texture along T axis.containerField [containerField type NMTOKEN (texture | back | bottom | front | left | right | top) "texture"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources PlaneSensor PlaneSensor converts pointing device motion into 2D translation parallel to the local Z=0 plane.
Hint: create a LineSensor by constraining one axis: (minPosition.x=maxPosition.x) or (minPosition.y=maxPosition.y).
Hint: this sensor detects user interactions affecting peer nodes and their child geometry.
Hint: add semi-transparent surrounding geometry to see the effect of the sensor.
Hint: X3D Architecture 20.2.1 Overview of pointing device sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#OverviewOfPointingDeviceSensors
Hint: X3D Architecture 20.2.2 Drag sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#DragSensors
Hint: X3D Architecture 20.2.3 Activating and manipulating pointing device sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#Activatingandmanipulating
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter08UserInteractivitySearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.description [description accessType inputOutput, type SFString CDATA #IMPLIED]
Author-provided prose that describes intended purpose of this node.
Hint: include space characters since a description is not a DEF identifier. Write short phrases that make descriptions clear and readable.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.minPosition [minPosition accessType inputOutput, type SFVec2f CDATA "0 0"]
minPosition and maxPosition clamp translations to a range of values measured from origin of Z=0 plane default maxPosition < minPosition means no clamping.
Hint: create a LineSensor by constraining one axis (minPosition.x=maxPosition.x) or (minPosition.y=maxPosition.y).maxPosition [maxPosition accessType inputOutput, type SFVec2f CDATA "-1 -1"]
minPosition and maxPosition clamp translations to a range of values measured from origin of Z=0 plane default maxPosition < minPosition means no clamping.
Hint: create a LineSensor by constraining one axis (minPosition.x=maxPosition.x) or (minPosition.y=maxPosition.y).autoOffset [autoOffset accessType inputOutput, type SFBool (true|false) "true"]
Determines whether previous offset values are remembered/accumulated.offset [offset accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Sends event and remembers last value sensed.trackPoint_changed [trackPoint_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
trackPoint_changed events give intersection point of bearing with sensor's virtual geometry.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
Warning: trackPoint_changed events represent unclamped intersection points on plane surface. Browsers can interpret drags off of the surface in various ways. Note that translation_changed events are clamped by minPosition/maxPosition and thus may be preferable.translation_changed [translation_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
translation_changed events equal sum of relative translation change plus offset value.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
Select geometry by activating the pointing device (e.g. clicking the mouse) to generate isActive events. Output event isActive=true is sent when geometry is selected (e.g. when primary mouse button is pressed), output event isActive=false is sent when geometry is deselected (e.g. when primary mouse button is released).
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isOver [isOver accessType outputOnly, type SFBool #FIXED ""]
Hover over geometry by aiming the mouse (or pointing device) to generate isOver events. Sensor sends output event isOver=true event when pointing device moves over sensor's geometry, and later sends output event isOver=false event when pointing device moves off.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources PointLight PointLight is a single light source that illuminates outwards in all directions. Lighting illuminates all geometry except lines and points. By default, light scope only illuminates peer geometry and children nodes within the scene graph hierarchy. unless global="true". Lights have no visible shape themselves and lighting effects continue through any intermediate geometry.
Hint: the bound NavigationInfo controls whether headlight is enabled on/off.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.on [on accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables this light source.color [color accessType inputOutput, type SFColor CDATA "1 1 1"] [0,1]
color of light, applied to colors of objects.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Colorlocation [location accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Position of light relative to local coordinate system.intensity [intensity accessType inputOutput, type SFFloat CDATA "1"] [0,1]
Brightness of direct emission from the light.ambientIntensity [ambientIntensity accessType inputOutput, type SFFloat CDATA "0"] [0,1]
Brightness of ambient (nondirectional background) emission from the light.radius [radius accessType inputOutput, type SFFloat CDATA "100"]
Maximum effective distance of light relative to local light position, affected by ancestor scaling.attenuation [attenuation accessType inputOutput, type SFVec3f CDATA "1 0 0"]
Constant, linear-distance and squared-distance dropoff factors as radial distance increases from the source.
Hint: attenuation = 1/max(attenuation[0] + attenuation[1] β¨― r + attenuation[2] β¨― r2 , 1)containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources PointSet PointSet is a node that contains a set of colored 3D points, represented by contained Color|ColorRGBA and Coordinate|CoordinateDouble nodes.
Hint: Point (geometry) https://en.wikipedia.org/wiki/Point_(geometry)
Hint: either values in a contained Color node, or else Material emissiveColor in corresponding Appearance node, are used for rendering lines and points.
Warning: use a different color (or Material emissiveColor) than the Background color, otherwise geometry is invisible.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: each point is displayed independently, no other PointSet attributes for rendering are provided.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Polyline2D Polyline2D is a geometry node that defines a connected set of vertices in a contiguous set of line segments in X-Y plane.
Hint: Material emissiveColor in corresponding Appearance is used for rendering lines.
Warning: lines are not lit, are not texture-mapped, and do not participate in collision detection.
Warning: use a different Material emissiveColor than the Background color, otherwise geometry is invisible.
Hint: adding LineProperties to the corresponding Appearance node can modify the rendering style of these lines.
Hint: insert a Shape node before adding geometry or Appearance.
Examples: X3D Example Archives, X3D for Web Authors, Chapter 10 Geometry 2D https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter10Geometry2DSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.lineSegments [lineSegments accessType initializeOnly, type MFVec2f CDATA #FIXED ""]
Coordinates of vertices connected into contiguous Polyline2D.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Polypoint2D Polypoint2D is a geometry node that defines a set of 2D points in X-Y plane.
Hint: insert a Shape node before adding geometry or Appearance.
Examples: X3D Example Archives, X3D for Web Authors, Chapter 10 Geometry 2D https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter10Geometry2DSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.point [point accessType initializeOnly, type MFVec2f CDATA #FIXED ""]
2D coordinates of vertices.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
PositionInterpolatorPositionInterpolator generates a series of 3-tuple SFVec3f values. Authors can ROUTE value_changed output events to a Transform node's translation field or another SFVec3f field.
Hint: typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction
Hint: typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolationSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.key [key accessType inputOutput, type MFFloat CDATA #IMPLIED]
Definition values for linear-interpolation function input intervals, in non-decreasing order and corresponding to a value in the keyValue array.
Warning: number of keys must match number of keyValues!
Warning: values in key array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
Hint: typical interval for values in key array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.keyValue [keyValue accessType inputOutput, type MFVec3f CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to an input-fraction value in the key array.
Warning: number of keys must match number of keyValues!set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
set_fraction selects input key for corresponding keyValue output.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
PositionInterpolator2DPositionInterpolator2D generates a series of SFVec2f values. Authors can ROUTE value_changed output events to a SFVec2f attribute.
Hint: typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction.
Hint: typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
Warning: requires X3D profile='Full' or else include <component name='Interpolation' level='3'/>
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolationSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.key [key accessType inputOutput, type MFFloat CDATA #IMPLIED]
Definition values for linear-interpolation function input intervals, in non-decreasing order and corresponding to a value in the keyValue array.
Hint: number of keyValues must be an integer multiple of the number of keys!
Hint: keyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
Warning: values in key array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
Hint: typical interval for values in key array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.keyValue [keyValue accessType inputOutput, type MFVec2f CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to an input-fraction value in the key array.
Hint: number of keyValues must be an integer multiple of the number of keys!
Hint: keyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
set_fraction selects input key for corresponding keyValue output.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type SFVec2f CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Hint: keyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ProtoBody ProtoBody statement follows the ProtoInterface statement in a ProtoDeclare statement, providing the scene-subgraph node definitions.
Hint: initial scene node in a ProtoDeclare/ProtoBody statement determines this prototype's node type.
Warning: only the first top-level node and its children are rendered, subsequent nodes (such as Scripts and ROUTEs) are active but are not drawn.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ProtoDeclare ProtoDeclare is a Prototype Declaration, defining a new node made up of other node(s). ProtoDeclare contains ProtoInterface and ProtoBody statements.
Hint: ProtoInterface contains field interfaces using the <field> tag, then ProtoBody contains the X3D nodes making up this prototype.
Hint: initial scene node in a ProtoDeclare/ProtoBody statement determines this prototype's node type.
Hint: ProtoDeclare is a definition only, add corresponding ProtoInstance nodes later in a scene to create new node instances.
Hint: Nested ProtoInstance and ProtoDeclare statements are allowed within a ProtoDeclare/ProtoBody.
Warning: a ProtoInstance node may not be instantiated inside its own ProtoDeclare or ExternProtoDeclare declaration (i.e. recursive prototypes are illegal).
Hint: X3D Scene Authoring Hints, Inlines and Prototypes https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#InlinesPrototypes
Hint: X3D Architecture 7.2.5.8 PROTO statement https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#PROTOStatement
Hint: X3D Architecture 4.4.4 Prototype semantics, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#PROTOdefinitionsemantics
Examples: X3D Example Archives, X3D for Web Authors, Chapter 14 Prototypes https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter14PrototypesSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILname [name type NMTOKEN #REQUIRED]
name of this prototype being declared.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsappinfo [appinfo type SFString CDATA #IMPLIED]
Application information to provide simple description usable as a tooltip, similar to XML Schema appinfo tag.documentation [documentation type SFString CDATA #IMPLIED]
Documentation url for further information, similar to XML Schema documentation tag.class [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ProtoInstance ProtoInstance creates an instance node of a locally or externally declared prototype definition. ProtoDeclare/ExternProtoDeclare definitions are abstract, corresponding ProtoInstance nodes are concrete. ProtoInstance nodes typically contain fieldValue statements to override default field values defined in the original ProtoDeclare statement.
Hint: the node type of a ProtoInstance exactly matches the first node in the corresponding ProtoDeclare/ProtoBody declaration.
Warning: be sure to correctly set the containerField value to match the intended field in the parent node.
Warning: do not mismatch node types when placing a ProtoInstance in a scene graph. Most validation tools will not catch this error.
Hint: scene authors can override default initializations of prototype fields by including contained <fieldValue> elements.
Hint: Nested ProtoInstance and ProtoDeclare statements are allowed within a ProtoDeclare/ProtoBody.
Hint: if contained within a ProtoDeclare, then a ProtoInstance node can also contain IS/connect statements for other defined fields.
Warning: a ProtoInstance node may not be instantiated inside its own ProtoDeclare or ExternProtoDeclare declaration (i.e. recursive prototypes are illegal).
Warning: the local context of each ProtoInstance node must match the node type of the first node in the original ProtoDeclare declaration.
Warning: ProtoInstance substitution for a Metadata* node might not validate. Workaround: put metadata-typed ProtoInstance nodes as contained values within a parent MetadataSet node.
Hint: X3D Scene Authoring Hints, Inlines and Prototypes https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#InlinesPrototypes
Hint: X3D Architecture 4.4.4 Prototype semantics, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#PROTOdefinitionsemantics
Examples: X3D Example Archives, X3D for Web Authors, Chapter 14 Prototypes https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter14PrototypesSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadataname [name type NMTOKEN #IMPLIED]
name of the prototype node being instanced.
Hint: must match name of corresponding ProtoDeclare or ExternProtoDeclare in this scene.
Warning: name must be specified unless this ProtoInstance is a USE node.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ProtoInterface ProtoInterface is the first statement inside a ProtoDeclare statement and holds field declarations. ProtoInterface is followed by a corresponding ProtoBody statement.
Hint: X3D Architecture 4.4.4 Prototype semantics, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#PROTOdefinitionsemantics
Examples: X3D Example Archives, X3D for Web Authors, Chapter 14 Prototypes https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter14PrototypesSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ProximitySensor ProximitySensor generates events when the viewer enters, exits and moves within a region of space (defined by a box).
Hint: multiple USEd instances are cumulative, but avoid overlaps.
Hint: can first use Transform to relocate/reorient box.
Hint: surround entire world to start behaviors once scene is loaded.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.center [center accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Position offset from origin of local coordinate system.size [size accessType inputOutput, type SFVec3f CDATA "0 0 0"] [0,+β)
size of Proximity box.
Hint: size 0 0 0 is same as enabled false.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
isActive true/false events are sent as viewer enters/exits Proximity box. isActive=true when viewer enters Proximity box, isActive=false when viewer exits Proximity box.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.position_changed [position_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
Sends translation event relative to center.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.orientation_changed [orientation_changed accessType outputOnly, type SFRotation CDATA #FIXED ""]
Sends rotation event relative to center.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.centerOfRotation_changed [centerOfRotation_changed accessType outputOnly, type SFRotation CDATA #FIXED ""]
Sends changed centerOfRotation values, likely caused by user interaction.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.enterTime [enterTime accessType outputOnly, type SFTime CDATA #FIXED ""]
Time event generated when user's camera enters the box.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.exitTime [exitTime accessType outputOnly, type SFTime CDATA #FIXED ""]
Time event generated when user's camera exits the box.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ReceiverPdu ReceiverPdu is a networked Protocol Data Unit (PDU) information node that transmits the state of radio frequency (RF) receivers modeled in a simulation.
Hint: ReceiverPdu packets use the IEEE Distributed Interactive Simulation (DIS) protocol.
Hint: Savage Developers Guide on DIS https://savage.nps.edu/Savage/developers.html#DIS
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/DistributedInteractiveSimulation.pdf
Warning: requires X3D profile='Full' or else include <component name='DIS' level='1'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.whichGeometry [whichGeometry accessType inputOutput, type SFInt32 CDATA "1"]
Select geometry to render: -1 for no geometry, 0 for text trace, 1 for default geometry, (optional) higher values to render different states.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectsiteID [siteID accessType inputOutput, type SFInt32 CDATA "0"]
Simulation/exercise siteID of the participating LAN or organization.applicationID [applicationID accessType inputOutput, type SFInt32 CDATA "1"]
Each simulation application that can respond to simulation management PDUs needs to have a unique applicationID.entityID [entityID accessType inputOutput, type SFInt32 CDATA "0"]
EntityID unique ID for entity within that application.readInterval [readInterval accessType inputOutput, type SFTime CDATA "0.1"] [0,+β)
Seconds between read updates, 0 means no reading.
Hint: readInterval is a nonnegative SFTime duration interval, not an absolute clock time.writeInterval [writeInterval accessType inputOutput, type SFTime CDATA "1.0"] [0,+β)
Seconds between write updates, 0 means no writing (sending).
Hint: writeInterval is a nonnegative SFTime duration interval, not an absolute clock time.networkMode [networkMode accessType inputOutput, type SFString CDATA ( standAlone | networkReader | networkWriter ) standAlone]
Whether this entity is ignoring the network, sending DIS packets to the network, or receiving DIS packets from the network. (1) standAlone: ignore network but still respond to events in local scene. (2) networkReader: listen to network and read PDU packets at readInterval, act as remote copy of entity. (3) networkWriter: send PDU packets to network at writeInterval, act as master entity. Default value "standAlone" ensures that DIS network activation within a scene as networkReader or networkWriter is intentional.
Warning: do not wrap extra quotation marks around these SFString enumeration values, since "quotation" "marks" are only used for MFString values.isStandAlone [isStandAlone accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="local" (ignore network but still respond to local events)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isNetworkReader [isNetworkReader accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="remote" (listen to network as copy of remote entity)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isNetworkWriter [isNetworkWriter accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="master" (output to network as master entity at writeInterval)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.address [address accessType inputOutput, type SFString CDATA localhost]
Multicast network address, or else "localhost"
Example: 224.2.181.145.port [port accessType inputOutput, type SFInt32 CDATA "0"]
Multicast network port, for example: 3000.multicastRelayHost [multicastRelayHost accessType inputOutput, type SFString CDATA #IMPLIED]
Fallback server address if multicast not available locally. For example: track.nps.edu.multicastRelayPort [multicastRelayPort accessType inputOutput, type SFInt32 CDATA "0"]
Fallback server port if multicast not available locally. For example: 8010.rtpHeaderExpected [rtpHeaderExpected accessType initializeOnly, type SFBool (true|false) "false"]
Whether RTP headers are prepended to DIS PDUs.isRtpHeaderHeard [isRtpHeaderHeard accessType outputOnly, type SFBool #FIXED ""]
Whether incoming DIS packets have an RTP header prepended.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
Have we had a network update recently?.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.timestamp [timestamp accessType outputOnly, type SFTime CDATA #FIXED ""]
DIS timestamp in X3D units (value 0.0 matches 1 January 1970) in seconds.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.radioID [radioID accessType inputOutput, type SFInt32 CDATA "0"]
Identifies a particular radio within a given entity.receivedPower [receivedPower accessType inputOutput, type SFFloat CDATA "0"]
receivedPower indicates radio frequency (RF) power received, in units of decibel-milliwatts (dBm), after applying any propagation loss and antenna gainreceiverState [receiverState accessType inputOutput, type SFInt32 CDATA "0"]
receiverState indicates if receiver is currently idle or busy via one of these enumerated values: 0 = off, 1 = on but not receiving, or 2 = on and receiving.transmitterSiteID [transmitterSiteID accessType inputOutput, type SFInt32 CDATA "0"]
Simulation/exercise transmitterSiteID of the participating LAN or organization.transmitterApplicationID [transmitterApplicationID accessType inputOutput, type SFInt32 CDATA "0"]
Simulation/exercise transmitterApplicationID is unique for transmitter application at that site. Each simulation application that can respond to simulation management PDUs needs to have a unique applicationID.transmitterEntityID [transmitterEntityID accessType inputOutput, type SFInt32 CDATA "0"]
Simulation/exercise transmitterEntityID is a unique ID for a single entity within that application.transmitterRadioID [transmitterRadioID accessType inputOutput, type SFInt32 CDATA "0"]
Identifies a particular radio within a given entity.geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).geoCoords [geoCoords accessType inputOutput, type SFVec3d CDATA "0 0 0"]
Geographic location (specified in current geoSystem coordinates) for children geometry (specified in relative coordinate system, in meters).
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Rectangle2D Rectangle2D is a geometry node that defines a 2D rectangle in X-Y plane.
Hint: insert a Shape node before adding geometry or Appearance.
Examples: X3D Example Archives, X3D for Web Authors, Chapter 10 Geometry 2D https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter10Geometry2DSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.size [size accessType initializeOnly, type SFVec2f CDATA "2 2"]
2D dimensions of Rectangle2D.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.solid [solid accessType initializeOnly, type SFBool (true|false) "false"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.
Warning: solid false not supported in VRML97.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ROUTE ROUTE connects output fields of event-producing nodes to input fields of event-consuming nodes.
Warning: each ROUTE must follow the DEF definition of both event-source and event-target nodes.
Warning: strongly typed event checking means that data type (SFInt32, MFVec3f, etc.) must match identically for both event-source and event-target fields.
Warning: event-source fields can have accessType outputOnly or inputOutput, while event-target nodes can have accessType inputOnly or inputOutput.
Hint: event tracing supports animation debugging https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07-EventAnimationInterpolation/Chapter07-EventAnimationInterpolation-EventTracing.pdf
Hint: X3D Architecture 7.2.5.7 ROUTE statement https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#ROUTEStatement
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolationSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadatafromNode [fromNode type IDREF #REQUIRED]
fromNode is the DEF name of the node originating an event.fromField [fromField type NMTOKEN #REQUIRED]
fromField is the field name in the source node which is originating an event.
Hint: if (and only if) corresponding field has accessType inputOutput, author has option to append "_changed" suffix to field name - both forms are functionally equivalent.
Warning: do not define an event connection using DEF, USE, class or containerField as literal values, since they are not fields in a node that can be modified by events at run time.
Warning: if corresponding field has accessType outputOnly or inputOnly, do not modify the set_ prefix or the _changed suffix on the field name.
Hint: X3D Architecture 4.4.2.2 Field Semantics https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#FieldSemantics
Hint: X3D Compressed Binary Encoding, 4.2.3 X3D Canonical Form https://www.web3d.org/documents/specifications/19776-3/V3.3/Part03/concepts.html#X3DCanonicalFormtoNode [toNode type IDREF #REQUIRED]
toNode is the DEF name of the destination node receiving an event.toField [toField type NMTOKEN #REQUIRED]
toField is the field name in the destination node which is receiving an event.
Hint: if (and only if) corresponding field has accessType inputOutput, author has option to prepend "set_" prefix to field name - both forms are functionally equivalent.
Warning: do not define an event connection using DEF, USE, class or containerField as literal values, since they are not fields in a node that can be modified by events at run time.
Warning: if corresponding field has accessType outputOnly or inputOnly, do not modify the set_ prefix or the _changed suffix on the field name.
Hint: X3D Architecture 4.4.2.2 Field Semantics https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#FieldSemantics
Hint: X3D Compressed Binary Encoding, 4.2.3 X3D Canonical Form https://www.web3d.org/documents/specifications/19776-3/V3.3/Part03/concepts.html#X3DCanonicalFormclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources ScalarInterpolator ScalarInterpolator generates piecewise-linear SFFloat values. Authors can ROUTE value_changed output events to other SFFloat fields.
Hint: typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction
Hint: typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolationSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.key [key accessType inputOutput, type MFFloat CDATA #IMPLIED]
Definition values for linear-interpolation function input intervals, in non-decreasing order and corresponding to a value in the keyValue array.
Warning: number of keys must match number of keyValues!
Warning: values in key array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
Hint: typical interval for values in key array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.keyValue [keyValue accessType inputOutput, type MFFloat CDATA #IMPLIED]
Output values for linear interopolation, each corresponding to an input-fraction value in the key array.
Warning: number of keys must match number of keyValues!set_fraction [set_fraction accessType inputOnly, type SFFloat CDATA #FIXED ""]
set_fraction selects input key for corresponding keyValue output.
Hint: set_fraction values are typically in same range interval as values in the key array. Response to an input set_fraction value less than minimum is equivalent to minimum key, and response to an input set_fraction value greater than maximum is equivalent to maximum key.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.value_changed [value_changed accessType outputOnly, type SFFloat CDATA #FIXED ""]
Linearly interpolated output value determined by current key time and corresponding keyValue pair.
Hint: X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Scene Scene is the root element that contains an X3D scene graph. Add nodes and children to build an X3D model. Only one Scene root element is allowed per X3D file.
Hint: Scene can contain regular children nodes, Metadata* nodes and LayerSet as top-level root nodes.
Hint: Scene is implicit, and not explicitly defined, in VRML97 and ClassicVRML encodings.
Hint: the Scene statement cannot have a DEF since it is not a node, cannot be re-USEd, and cannot receive or send events.
Hint: Scene nodes for Inline models report identical values as top-most root of the contained model.
Warning: player support for attribute fields in this node is not defined.
Warning: Scene is a child of X3D statement, and must follow the (optional) head statement.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadataclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Script Script contains author-programmed event behaviors for a scene. Define the script input-output event interface by including <field/> elements. Scripting code is embedded in a child CDATA node or (deprecated) in the url field. Optionally supported programming languages are ECMAScript (JavaScript) and Java (via url to a myNode.class file).
Hint: insert a CDATA block to contain source code embedded within an X3D scene.
Hint: a contained CDATA block for source code protects whitespace, line breaks, and literal characters (such as & < and >) from unintended escape-character modifications by XML parsers.
Warning: strict order is required for contained constructs: first field declarations (if any), then IS/connect statements (if any when defining inside a ProtoBody), and finally CDATA source-code block.
Hint: apply containerField='watchList' when parent node is LoadSensor.
Hint: ECMAScript-262 specification http://www.ecma-international.org/publications/standards/Ecma-262.htmSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILfield [X3D statement field]
Include a field statement for each field declaration in this Script node.metadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: DEF name is needed or else ROUTEs cannot connect Script node interfaces.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.url [url accessType inputOutput, type MFString CDATA #IMPLIED]
List of address links for runnable script files.
Hint: browsers are not required to support any particular scripting language, but ECMAScript (JavaScript) is widely supported.
Hint: equivalent script code written in multiple programming languages can be provided for portability, the first runnable version is chosen at run time.
Hint: X3D Scene Authoring Hints, Scripts https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Scripts
Warning: source code can be placed in url attribute but may be unparsable due to escaping of special characters and elimination of line breaks (causing comments to nullify follow-on code). Use contained CDATA section instead for embedding source code.
Hint: if both url field and CDATA section are provided simultaneously, the url field is processed first. This approach allows utilization of update modifications or live queries in external scripts, while still providing reliable script source as a fallback alternative within the model itself.
Hint: X3D XML Encoding, 4.3.13 Encapsulating Script node code https://www.web3d.org/documents/specifications/19776-1/V3.3/Part01/concepts.html#EncapsulatingScriptNodeCode
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
Hint: X3D Scene Authoring Hints, urls https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urlsdirectOutput [directOutput accessType initializeOnly, type SFBool (true|false) "false"]
Set directOutput true if Script has field reference(s) of type SFNode/MFNode, and also uses direct access to modify attributes of a referenced node in the Scene.
Hint: set directOutput true if Script dynamically establishes or breaks ROUTEs.
Hint: directOutput is a browser hint to avoid overoptimizing referenced nodes, since a Script might directly change attribute values in referenced SFNode/MFNode fields, without a ROUTE connecting output events.
Hint: directOutput false means Script cannot modify referenced nodes or change ROUTEs.mustEvaluate [mustEvaluate accessType initializeOnly, type SFBool (true|false) "false"]
If mustEvaluate false, then the X3D player may delay sending input events to Script until output events are needed. If mustEvaluate true, then Script must receive input events immediately without any event-aggregation delays.
Hint: set mustEvaluate true when sending/receiving values via the network.containerField [containerField type NMTOKEN (children | watchList) "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Shape Shape can appear under any grouping node. Shape can contain an Appearance node and a geometry node (for example one of the primitives Box Cone Cylinder Sphere Text, one of ElevationGrid Extrusion IndexedFaceSet IndexedLineSet LineSet PointSet, or one of the other geometry nodes).
Hint: Shape https://en.wikipedia.org/wiki/Shape
Hint: the Shape design pattern to collect appearance and geometry together is fundamentally the same for many types of 3D graphics software and hardware.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.
Hint: X3D Architecture 12.2.1 Shape nodes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Shapenodes
Hint: X3D Architecture 17.2.2 Lighting model https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/lighting.html#Lightingmodel
Hint: apply containerField='shape' if parent node is CADFace.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.appearance [appearance accessType inputOutput, type SFNode singleton, NULL node] [X3DAppearanceNode]
Single contained Appearance node that specifies visual attributes (such as material, texture, fillProperties and lineProperties) applied to corresponding geometry.geometry [geometry accessType inputOutput, type SFNode singleton, NULL node] [X3DGeometryNode]
Single contained geometry node that is rendered according to corresponding appearance.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN (children | proxy |shape) "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources SignalPdu SignalPdu is a networked Protocol Data Unit (PDU) information node that communicates the transmission of voice, audio or other data modeled in a simulation.
Hint: SignalPdu packets use the IEEE Distributed Interactive Simulation (DIS) protocol.
Hint: Savage Developers Guide on DIS https://savage.nps.edu/Savage/developers.html#DIS
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/DistributedInteractiveSimulation.pdf
Warning: requires X3D profile='Full' or else include <component name='DIS' level='1'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.whichGeometry [whichGeometry accessType inputOutput, type SFInt32 CDATA "1"]
Select geometry to render: -1 for no geometry, 0 for text trace, 1 for default geometry, (optional) higher values to render different states.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectsiteID [siteID accessType inputOutput, type SFInt32 CDATA "0"]
Simulation/exercise siteID of the participating LAN or organization.applicationID [applicationID accessType inputOutput, type SFInt32 CDATA "1"]
Each simulation application that can respond to simulation management PDUs needs to have a unique applicationID.entityID [entityID accessType inputOutput, type SFInt32 CDATA "0"]
EntityID unique ID for entity within that application.readInterval [readInterval accessType inputOutput, type SFTime CDATA "0.1"] [0,+β)
Seconds between read updates, 0 means no reading.
Hint: readInterval is a nonnegative SFTime duration interval, not an absolute clock time.writeInterval [writeInterval accessType inputOutput, type SFTime CDATA "1.0"] [0,+β)
Seconds between write updates, 0 means no writing (sending).
Hint: writeInterval is a nonnegative SFTime duration interval, not an absolute clock time.networkMode [networkMode accessType inputOutput, type SFString CDATA ( standAlone | networkReader | networkWriter ) standAlone]
Whether this entity is ignoring the network, sending DIS packets to the network, or receiving DIS packets from the network. (1) standAlone: ignore network but still respond to events in local scene. (2) networkReader: listen to network and read PDU packets at readInterval, act as remote copy of entity. (3) networkWriter: send PDU packets to network at writeInterval, act as master entity. Default value "standAlone" ensures that DIS network activation within a scene as networkReader or networkWriter is intentional.
Warning: do not wrap extra quotation marks around these SFString enumeration values, since "quotation" "marks" are only used for MFString values.isStandAlone [isStandAlone accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="local" (ignore network but still respond to local events)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isNetworkReader [isNetworkReader accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="remote" (listen to network as copy of remote entity)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isNetworkWriter [isNetworkWriter accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="master" (output to network as master entity at writeInterval)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.address [address accessType inputOutput, type SFString CDATA localhost]
Multicast network address, or else "localhost" example: 224.2.181.145.port [port accessType inputOutput, type SFInt32 CDATA "0"]
Multicast network port, for example: 3000.multicastRelayHost [multicastRelayHost accessType inputOutput, type SFString CDATA #IMPLIED]
Fallback server address if multicast not available locally. For example: track.nps.edu.multicastRelayPort [multicastRelayPort accessType inputOutput, type SFInt32 CDATA "0"]
Fallback server port if multicast not available locally. For example: 8010.rtpHeaderExpected [rtpHeaderExpected accessType initializeOnly, type SFBool (true|false) "false"]
Whether RTP headers are prepended to DIS PDUs.isRtpHeaderHeard [isRtpHeaderHeard accessType outputOnly, type SFBool #FIXED ""]
Whether incoming DIS packets have an RTP header prepended.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
Have we had a network update recently?.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.timestamp [timestamp accessType outputOnly, type SFTime CDATA #FIXED ""]
DIS timestamp in X3D units (value 0.0 matches 1 January 1970) in seconds.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.radioID [radioID accessType inputOutput, type SFInt32 CDATA "0"]
Identifies a particular radio within a given entity.encodingScheme [encodingScheme accessType inputOutput, type SFInt32 CDATA "0"]
designates both Encoding Class and Encoding Type. Encoding Class enumerated value (2 most significant bits): 0 = Encoded Voice; 1 = Raw Binary Data; 2 = Application-Specific Data; 3 = Database Index. Encoding Type enumerated value (14 least significant bits): 1 = 8-bit mu-law; 2 = CVSD per MIL-STD-188-113; 3 = ADPCM per CCITT G.721; 4 = 16-bit linear PCM; 5 = 8-bit linear PCM; 6 = Vector Quantization.tdlType [tdlType accessType inputOutput, type SFInt32 CDATA "0"]
Tactical Data Link (TDL) type as an enumerated value when the Encoding Class is voice, raw binary, application-specific, or database index representation of a TDL message.sampleRate [sampleRate accessType inputOutput, type SFInt32 CDATA "0"]
sampleRate gives either (1) sample rate in samples per second if Encoding Class is encoded audio, or (2) data rate in bits per second for data transmissions. If Encoding Class is database index, sampleRate is set to zero.samples [samples accessType inputOutput, type SFInt32 CDATA "0"]
Number of samples in the PDU if the Encoding Class is encoded voice, otherwise the field is set to zero.dataLength [dataLength accessType inputOutput, type SFInt32 CDATA "0"]
number of bits of digital voice audio or digital data being sent in the Signal PDU. If the Encoding Class is database index, then dataLength field is set to 96.data [data accessType inputOutput, type MFInt32 CDATA #IMPLIED]
Holds audio or digital data conveyed by the radio transmission. Interpretation of the field depends on values of encodingScheme and tdlType fields.geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).geoCoords [geoCoords accessType inputOutput, type SFVec3d CDATA "0 0 0"]
Geographic location (specified in current geoSystem coordinates) for children geometry (specified in relative coordinate system, in meters).
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Sound The Sound node controls the 3D spatialization of sound playback by a child AudioClip or MovieTexture node. Sound intensity includes stereo support, varying according to user location and view direction in the scene.
Hint: if the audio source is stereo or multi-channel, channel separation is retained during playback.
Warning: while providing sounds on the ground plane, ensure that the audible auralization ellipse is sufficiently elevated to match avatar height.
Hint: X3D Sound component Figure 16.2 Sound Node Geometry, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/sound.html#f-Soundnodegeometry
Hint: X3D Scene Authoring Hints:Audio https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#AudioSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.location [location accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Position of sound ellipsoid center, relative to local coordinate system.
Hint: improve audibility by setting location='0 1.6 0' so that center height of sound ellipsoid matches typical NavigationInfo avatarSize height.direction [direction accessType inputOutput, type SFVec3f CDATA "0 0 1"]
direction of sound axis, relative to local coordinate system.intensity [intensity accessType inputOutput, type SFFloat CDATA "1"]
Factor [0,1] adjusting loudness (decibels) of emitted sound.minFront [minFront accessType inputOutput, type SFFloat CDATA "1"]
Inner (full loudness) ellipsoid distance along front direction.
Warning: ensure minFront <= maxFront.minBack [minBack accessType inputOutput, type SFFloat CDATA "1"]
Inner (full loudness) ellipsoid distance along back direction.
Warning: ensure minBack <= maxBack.maxFront [maxFront accessType inputOutput, type SFFloat CDATA "10"]
Outer (zero loudness)ellipsoid distance along front direction.
Warning: ensure minFront <= maxFront.maxBack [maxBack accessType inputOutput, type SFFloat CDATA "10"]
Outer (zero loudness)ellipsoid distance along back direction.
Warning: ensure minBack <= maxBack.priority [priority accessType inputOutput, type SFFloat CDATA "0"]
Player hint [0,1] if needed to choose which sounds to play.spatialize [spatialize accessType initializeOnly, type SFBool (true|false) "true"]
Whether to spatialize sound playback relative to viewer.
Hint: only effective between minimum and maximum ellipsoids.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Sphere Sphere is a geometry node, representing a perfectly round geometrical object that is the surface of a completely round ball.
Hint: Sphere https://en.wikipedia.org/wiki/Sphere
Hint: insert a Shape node before adding geometry or Appearance.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.radius [radius accessType initializeOnly, type SFFloat CDATA "1"] (0,+β)
Size in meters.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.
Warning: solid false not supported in VRML97.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources SphereSensor SphereSensor converts pointing device motion into a spherical rotation about the origin of the local coordinate system.
Hint: this sensor detects user interactions affecting peer nodes and their child geometry.
Hint: add semi-transparent surrounding geometry to see the effect of the sensor.
Hint: X3D Architecture 20.2.1 Overview of pointing device sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#OverviewOfPointingDeviceSensors
Hint: X3D Architecture 20.2.2 Drag sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#DragSensors
Hint: X3D Architecture 20.2.3 Activating and manipulating pointing device sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#ActivatingandmanipulatingSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.description [description accessType inputOutput, type SFString CDATA #IMPLIED]
Author-provided prose that describes intended purpose of this node.
Hint: include space characters since a description is not a DEF identifier. Write short phrases that make descriptions clear and readable.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.autoOffset [autoOffset accessType inputOutput, type SFBool (true|false) "true"]
Determines whether previous offset values are remembered/accumulated.offset [offset accessType inputOutput, type SFRotation CDATA "0 1 0 0"]
Sends event and remembers last value sensed.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
Select geometry by activating the pointing device (e.g. clicking the mouse) to generate isActive events. Output event isActive=true is sent when geometry is selected (e.g. when primary mouse button is pressed), output event isActive=false is sent when geometry is deselected (e.g. when primary mouse button is released).
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isOver [isOver accessType outputOnly, type SFBool #FIXED ""]
Hover over geometry by aiming the mouse (or pointing device) to generate isOver events. Sensor sends output event isOver=true event when pointing device moves over sensor's geometry, and later sends output event isOver=false event when pointing device moves off.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.rotation_changed [rotation_changed accessType outputOnly, type SFRotation CDATA #FIXED ""]
rotation_changed events equal sum of relative bearing changes plus offset value.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.trackPoint_changed [trackPoint_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
trackPoint_changed events give intersection point of bearing with sensor's virtual geometry.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
Warning: trackPoint_changed events represent unclamped intersection points on plane surface. Browsers can interpret drags off of the surface in various ways. Note that translation_changed events are clamped by minPosition/maxPosition and thus may be preferable.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources SpotLight SpotLight is a light source that illuminates geometry within a conical beam. Lighting illuminates all geometry except lines and points. By default, light scope only illuminates peer geometry and children nodes within the scene graph hierarchy. unless global="true". Lights have no visible shape themselves and lighting effects continue through any intermediate geometry.
Hint: the bound NavigationInfo controls whether headlight is enabled on/off.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.on [on accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables this light source.color [color accessType inputOutput, type SFColor CDATA "1 1 1"] [0,1]
color of light, applied to colors of objects.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Colorlocation [location accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Position of light relative to local coordinate system.direction [direction accessType inputOutput, type SFVec3f CDATA "0 0 -1"]
Orientation vector of light relative to local coordinate system.intensity [intensity accessType inputOutput, type SFFloat CDATA "1"] [0,1]
Brightness of direct emission from the light.ambientIntensity [ambientIntensity accessType inputOutput, type SFFloat CDATA "0"] [0,1]
Brightness of ambient (nondirectional background) emission from the light.attenuation [attenuation accessType inputOutput, type SFVec3f CDATA "1 0 0"]
Constant, linear-distance and squared-distance dropoff factors as radial distance increases from the source.
Hint: attenuation = 1/max(attenuation[0] + attenuation[1] β¨― r + attenuation[2] β¨― r2 , 1)radius [radius accessType inputOutput, type SFFloat CDATA "100"]
Maximum effective distance of light relative to local light position, affected by ancestor scaling.beamWidth [beamWidth accessType inputOutput, type SFFloat CDATA "0.7854"] [0,1.570796]
Inner conical solid angle (in radians) where light source has uniform full intensity.
Hint: beamWidth is inner angle of full intensity, cutOffAngle is outer angle of zero intensity. Therefore set beamWidth <= cutOffAngle.
Warning: if beamWidth > cutOffAngle, then beamWidth reset to equal cutOffAngle.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadiancutOffAngle [cutOffAngle accessType inputOutput, type SFFloat CDATA "1.570796"] [0,1.570796]
Outer conical solid angle (in radians) where light source intensity becomes zero.
Hint: beamWidth is inner angle of full intensity, cutOffAngle is outer angle of zero intensity. Therefore set beamWidth <= cutOffAngle.
Warning: if beamWidth > cutOffAngle, then beamWidth reset to equal cutOffAngle.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadiancontainerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources StaticGroup StaticGroup is a Grouping node that can contain most nodes. StaticGroup children are guaranteed to not change, send events, receive events, or include re-USE-able content. This allows browser optimizations of contained-node content.
Hint: insert a Shape node before adding geometry or Appearance.
Warning: requires X3D profile='Full' or else include <component name='Grouping' level='3'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.children [children accessType inputOutput, type MFNode array, empty list] [X3DChildNode]
Grouping nodes contain an ordered list of children nodes.
Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
Hint: X3D Architecture 10.2.1 Grouping and children node types, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodesbboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources StringSensor StringSensor generates events as the user presses keys on the keyboard. Browser support includes the notion of "keyboard focus".
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter08UserInteractivitySearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.deletionAllowed [deletionAllowed accessType inputOutput, type SFBool (true|false) "true"]
If deletionAllowed is true, then previously entered character in enteredText can be removed. If deletionAllowed is false, then characters may only be added to the string.
Hint: deletion key is typically defined by local system.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
Select geometry by activating the pointing device (e.g. clicking the mouse) to generate isActive events. Output event isActive=true is sent when geometry is selected (e.g. when primary mouse button is pressed), output event isActive=false is sent when geometry is deselected (e.g. when primary mouse button is released).
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.enteredText [enteredText accessType outputOnly, type SFString CDATA #FIXED ""]
Events generated as character-producing keys are pressed on keyboard.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.finalText [finalText accessType outputOnly, type SFString CDATA #FIXED ""]
Events generated when sequence of keystrokes matches keys in terminationText string when this condition occurs, enteredText is moved to finalText and enteredText is set to empty string.
Hint: termination key is typically defined by local system.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Switch Switch is a Grouping node that only renders one (or zero) child at a time. Switch can contain most nodes. (Contained nodes are now called 'children' rather than 'choice', for consistent naming among all GroupingNodeType nodes.) All child choices continue to receive and send events regardless of whichChoice is active.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: authors can temporarily hide test geometry under an unselected child of a Switch. This is a good alternative to "commenting out" nodes.
Hint: GeoViewpoint OrthoViewpoint and Viewpoint share the same binding stack, so no more than one of these nodes can be bound and active at a given time.
Warning: do not include GeoViewpoint OrthoViewpoint or Viewpoint as a child of LOD or Switch, instead use ViewpointGroup as parent to constrain location proximity where the viewpoint is available to user.
Warning: results are undefined if a bindable node (Background, Fog, NavigationInfo, OrthoViewpoint, TextureBackground, Viewpoint) is a contained descendant node of either LOD or Switch. Avoid this authoring pattern.
Hint: contained nodes must have type X3DChildNode, such as Group or Transform or Shape.
Warning: Switch is not allowed as parent of Appearance, Material, Color, Coordinate, Normal or Texture nodes.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.children [children accessType inputOutput, type MFNode array, empty list] [X3DChildNode]
Grouping nodes contain an ordered list of children nodes.
Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
Hint: X3D Architecture 10.2.1 Grouping and children node types, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodeswhichChoice [whichChoice accessType inputOutput, type SFInt32 CDATA "-1"] [-1,+β)
Index of active child choice, counting from 0.
Warning: default whichChoice= -1 means no selection (and no rendering), whichChoice=0 means initial child.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Text Text is a 2D (flat) geometry node that can contain multiple lines of string values. Layout and styling is controlled by a contained FontStyle node.
Hint: String (computer science) https://en.wikipedia.org/wiki/String_(computer_science)
Hint: full internationalization (i18n) and localization (l10n) features are available for any written language.
Hint: relates to Internationalization (i18n) http://www.w3.org/standards/webdesign/i18n
Hint: insert a Shape node before adding geometry or Appearance.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.
Warning: Text node requires X3D profile='Immersive' or <component name='Text' level='1'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILfontStyle [fontStyle accessType inputOutput, type SFNode singleton, NULL node] [X3DFontStyleNode]
The fontStyle field can contain a FontStyle or ScreenFontStyle node defining size, family, and style for presented text.
Hint: Wikipedia https://en.wikipedia.org/wiki/Fontmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.string [string accessType inputOutput, type MFString CDATA #IMPLIED]
Single or multiple string values to present as Text. Each value in the string array (including empty strings) gets displayed on a separate line.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks.
Hint: Strings can contain quote marks by first escaping them with a backslash example: "say \"hello\" please"
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).
Hint: relates to Internationalization (i18n) http://www.w3.org/standards/webdesign/i18n
Example: https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter02-GeometryPrimitives/TextIndex.html
Example: https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter02-GeometryPrimitives/TextSpecialCharactersIndex.htmllength [length accessType inputOutput, type MFFloat CDATA #IMPLIED]
Array of length values for each text string in the local coordinate system. Each string is stretched or compressed to fit.maxExtent [maxExtent accessType inputOutput, type SFFloat CDATA "0.0"]
Limits/compresses all text strings if max string length is longer than maxExtent, as measured in local coordinate system.solid [solid accessType initializeOnly, type SFBool (true|false) "false"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.
Warning: solid false not supported in VRML97.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources TextureBackground TextureBackground simulates ground and sky, using vertical arrays of wraparound color values, TextureBackground can also provide backdrop texture images on all six sides. Field names of child texture nodes are in alphabetic order: backTexture, bottomTexture, frontTexture, leftTexture, rightTexture, topTexture.
Hint: Background, Fog, NavigationInfo, TextureBackground and Viewpoint are bindable nodes, meaning that no more than one of each node type can be active at a given time.
Warning: results are undefined if a bindable node (Background, Fog, NavigationInfo, OrthoViewpoint, TextureBackground, Viewpoint) is a contained descendant node of either LOD or Switch. Avoid this authoring pattern.
Warning: each of the child ImageTexture or PixelTexture nodes must have unique containerField values for backTexture, bottomTexture, frontTexture, leftTexture, rightTexture, or topTexture.
Hint: authors can have LoadSensor nodes receive notifications and send reporting events when background texture node(s) are loaded.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.skyColor [skyColor accessType inputOutput, type MFColor CDATA "0 0 0"]
Color of the sky at various angles on the sky sphere. First value is color of sky at 0.0 radians representing the zenith (straight up).
Hint: setting the same color at two consecutive angles produces a solid color band.
Warning: you must have one more skyColor value than skyAngle values.
Interchange profile hint: only one color might be rendered, others can be ignored.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColorskyAngle [skyAngle accessType inputOutput, type MFFloat CDATA #IMPLIED] [0,Ο]
The angle array values increase from 0.0 zenith (straight up) to Ο/2=1.570796 (horizon) to Ο=3.14159 (nadir).
Warning: you must have one more skyColor value than skyAngle values.
Warning: colors at skyAngle=0 are ignored.
Interchange profile hint: this field may be ignored, applying the default value regardless.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/RadiangroundColor [groundColor accessType inputOutput, type MFColor CDATA #IMPLIED]
Color of the ground at the various angles on the ground partial sphere. First value is color of ground at 0.0 radians representing the nadir (straight down).
Hint: setting the same color at two consecutive angles produces a solid color band.
Warning: you must have one more groundColor value than groundAngle values.
Interchange profile hint: this field may be ignored, applying the default value regardless.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColorgroundAngle [groundAngle accessType inputOutput, type MFFloat CDATA #IMPLIED] [0,Ο/2]
The angle array values increase from 0.0 nadir (straight down) to Ο/2=1.570796 (horizon).
Warning: you must have one more groundColor value than groundAngle values.
Warning: colors at groundAngle=0 are ignored.
Interchange profile hint: this field may be ignored, applying the default value regardless.
Hint: radian units for angular measure https://en.wikipedia.org/wiki/Radiantransparency [transparency accessType inputOutput, type MFFloat CDATA "0"]
transparency applied to texture images, enabling an X3D scene to overlay an HTML page or desktop.set_bind [set_bind accessType inputOnly, type SFBool #FIXED ""]
Input event set_bind=true makes this node active, input event set_bind=false makes this node inactive. Thus setting set_bind true/false will pop/push (enable/disable) this node.
Hint: paired node operations can be established by connecting set_bind and isBound fields of corresponding bindable nodes.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.bindTime [bindTime accessType outputOnly, type SFTime CDATA #FIXED ""]
event sent when node becomes active/inactive.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isBound [isBound accessType outputOnly, type SFBool #FIXED ""]
event true sent when node becomes active, event false sent when unbound by another node.
Hint: paired node operations can be established by connecting set_bind and isBound fields of corresponding bindable nodes.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources TextureCoordinate TextureCoordinate specifies 2D (s,t) texture-coordinate points, used by vertex-based geometry nodes (such as IndexedFaceSet or ElevationGrid) to map textures to vertices (and patches to NURBS surfaces).
Hint: add Shape and then polgyonal/planar geometry before adding TextureCoordinate.
Hint: Texture mapping https://en.wikipedia.org/wiki/Texture_mapping
Hint: X3D Texturing component Figure 18.1, Texture map coordinate system https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#f-TextureMapCoordSystemSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.point [point accessType inputOutput, type MFVec2f CDATA #IMPLIED]
pairs of 2D (s,t) texture coordinates, either in range [0,1] or higher if repeating.containerField [containerField type NMTOKEN "texCoord"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
TextureCoordinateGeneratorTextureCoordinateGenerator computes 2D (s,t) texture-coordinate points, used by vertex-based geometry nodes (such as IndexedFaceSet or ElevationGrid) to map textures to vertices (and patches to NURBS surfaces).
Hint: add Shape and then polgyonal/planar geometry before adding TextureCoordinateGenerator.
Hint: Texture mapping https://en.wikipedia.org/wiki/Texture_mapping
Hint: X3D Texturing component Figure 18.1, Texture map coordinate system https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#f-TextureMapCoordSystemSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.mode [mode accessType inputOutput, type SFString CDATA (SPHERE | CAMERASPACENORMAL | CAMERASPACEPOSITION | CAMERASPACEREFLECTIONVECTOR | SPHERE-LOCAL | COORD | COORD-EYE | NOISE | NOISE-EYE | SPHERE-REFLECT | SPHERE-REFLECT-LOCAL) SPHERE]
parameter field defines the algorithm used to compute texture coordinates.
Warning: do not wrap extra quotation marks around these SFString enumeration values, since "quotation" "marks" are only used for MFString values.
Hint: X3D Architecture Table 18.6 Texture coordinate generation modes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/texturing.html#t-Texturecoordgeneration for further details.parameter [parameter accessType inputOutput, type MFVec2f CDATA #IMPLIED]
float values for modes NOISE (for scale and translation x y z values), SPHERE-REFLECT (for optional index of refraction value) and SPHERE-REFLECT-LOCAL (for index of refraction value and x y z eye-point values in local coordinate system)containerField [containerField type NMTOKEN "texCoord"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources TextureTransform TextureTransform shifts 2D texture coordinates for positioning, orienting and scaling image textures on geometry.
Warning: resulting visible effects appear reversed because image changes occur before mapping to geometry.
Hint: order of operations is translation, rotation about center, non-uniform scale about center.
Hint: insert Shape and Appearance nodes before adding TextureTransform.
Hint: Texture mapping https://en.wikipedia.org/wiki/Texture_mappingSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.translation [translation accessType inputOutput, type SFVec2f CDATA "0 0"]
Lateral/vertical shift in 2D (s,t) texture coordinates (opposite effect appears on geometry).center [center accessType inputOutput, type SFVec2f CDATA "0 0"]
center point in 2D (s,t) texture coordinates for rotation and scaling.rotation [rotation accessType inputOutput, type SFFloat CDATA "0"]
single rotation angle of texture about center (opposite effect appears on geometry).
Warning: use a single radian angle value, not a 4-tuple Rotation.scale [scale accessType inputOutput, type SFVec2f CDATA "1 1"]
Non-uniform planar scaling of texture about center (opposite effect appears on geometry).containerField [containerField type NMTOKEN "textureTransform"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources TimeSensor TimeSensor continuously generates events as time passes. Typical use: ROUTE thisTimeSensorDEF.fraction_changed TO someInterpolatorDEF.set_fraction.
Interchange profile hint: TimeSensor may be ignored if cycleInterval < 0.01 second.
Hint: event timing details are explained in X3D Specification 4.4.8.3 Execution model https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#ExecutionModel
Hint: X3D Architecture 8 Time component https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/time.html
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolationSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.cycleInterval [cycleInterval accessType inputOutput, type SFTime CDATA "1.0"] [0,+β)
cycleInterval is loop duration in seconds.
Interchange profile hint: TimeSensor may be ignored if cycleInterval < 0.01 second.
Warning: An active TimeSensor node ignores set_cycleInterval and set_startTime events.
Hint: cycleInterval is a nonnegative SFTime duration interval, not an absolute clock time.loop [loop accessType inputOutput, type SFBool (true|false) "false"]
Repeat indefinitely when loop=true, repeat only once when loop=false.startTime [startTime accessType inputOutput, type SFTime CDATA "0"]
When time now >= startTime, isActive becomes true and TimeSensor becomes active. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.stopTime [stopTime accessType inputOutput, type SFTime CDATA "0"]
When stopTime becomes <= time now, isActive becomes false and TimeSensor becomes inactive. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
Warning: An active TimeSensor node ignores set_cycleInterval and set_startTime events.
Warning: An active TimeSensor node ignores set_stopTime event values less than or equal to startTime.cycleTime [cycleTime accessType outputOnly, type SFTime CDATA #FIXED ""]
cycleTime sends a time outputOnly at startTime, and also at the beginning of each new cycle (useful for synchronization with other time-based objects).
Hint: the first cycleTime event for a TimeSensor node can be used as an alarm (single pulse at a specified time).
Hint: cycleTime is a nonnegative SFTime duration interval, not an absolute clock time.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
isActive true/false events are sent when TimeSensor starts/stops running.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isPaused [isPaused accessType outputOnly, type SFBool #FIXED ""]
isPaused true/false events are sent when TimeSensor is paused/resumed.
Warning: not supported in VRML97.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.pauseTime [pauseTime accessType inputOutput, type SFTime CDATA "0"]
When time now >= pauseTime, isPaused becomes true and TimeSensor becomes paused. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
Warning: not supported in VRML97.resumeTime [resumeTime accessType inputOutput, type SFTime CDATA "0"]
When resumeTime becomes <= time now, isPaused becomes false and TimeSensor becomes inactive. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
Warning: not supported in VRML97.elapsedTime [elapsedTime accessType outputOnly, type SFTime CDATA #FIXED ""] [0,+β)
Current elapsed time since TimeSensor activated/running, cumulative in seconds, and not counting any paused time.
Warning: not supported in VRML97.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
Hint: elapsedTime is a nonnegative SFTime duration interval, not an absolute clock time.fraction_changed [fraction_changed accessType outputOnly, type SFFloat CDATA #FIXED ""]
fraction_changed continuously sends value in range [0,1] showing time progress in the current cycle.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.time [time accessType outputOnly, type SFTime CDATA #FIXED ""] [0,+β)
Time continuously sends the absolute time (value 0.0 matches 1 January 1970) in seconds for a given simulation tick.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources TimeTrigger TimeTrigger converts boolean true events to time events.
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting
Hint: X3D Event-Utility Node Diagrams https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter09-EventUtilitiesScripting/X3dEventUtilityNodeEventDiagrams.pdfSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.set_boolean [set_boolean accessType inputOnly, type SFBool #FIXED ""]
If input event set_boolean is true, send output triggerTime event.
Hint: for logical consistency, input event set_boolean false has no effect (under review as part of Mantis issue 519).
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.triggerTime [triggerTime accessType outputOnly, type SFTime CDATA #FIXED ""]
triggerTime is output time event, sent when input event set_boolean is true.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources TouchSensor TouchSensor tracks location and state of the pointing device, detecting when a user points at or selects (activates) geometry.
Hint: this sensor detects user interactions affecting peer nodes and their child geometry.
Hint: X3D Architecture 20.2.1 Overview of pointing device sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#OverviewOfPointingDeviceSensors
Hint: X3D Architecture 20.2.3 Activating and manipulating pointing device sensors https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#Activatingandmanipulating
Hint: example scenes and authoring assets at https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter08UserInteractivitySearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.description [description accessType inputOutput, type SFString CDATA #IMPLIED]
Author-provided prose that describes intended purpose of this node.
Hint: include space characters since a description is not a DEF identifier. Write short phrases that make descriptions clear and readable.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
Select geometry by activating the pointing device (e.g. clicking the mouse) to generate isActive events. Output event isActive=true is sent when pointing device selection is activated, output event isActive=false is sent when pointing device is deselected.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isOver [isOver accessType outputOnly, type SFBool #FIXED ""]
Hover over geometry by aiming the mouse (or pointing device) to generate isOver events. Sensor sends output event isOver=true event when pointing device moves over sensor's geometry, and later sends output event isOver=false event when pointing device moves off.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.hitPoint_changed [hitPoint_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
Output event containing 3D point on surface of underlying geometry, as measured in reference frame for TouchSensor's local coordinate system.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.hitNormal_changed [hitNormal_changed accessType outputOnly, type SFVec3f CDATA #FIXED ""]
Output event containing surface normal vector at the hitPoint.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.hitTexCoord_changed [hitTexCoord_changed accessType outputOnly, type SFVec2f CDATA #FIXED ""]
Output event containing texture coordinates of surface at the hitPoint.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.touchTime [touchTime accessType outputOnly, type SFTime CDATA "0"]
Time event generated when sensor is touched by pointing device, and then deselected by the user.
Hint: touchTime event is generated when following three conditions are all met: (a) pointing device was pointing towards geometry when initially activated (isActive=true), (b) pointing device is currently pointing towards the geometry (isOver=true), and (c) pointing device selection is deactivated/deselected by user (isActive=false event is also generated).
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Transform Transform is a Grouping node that can contain most nodes. Transform translates, orients and scales child geometry within the local world coordinate system.
Hint: each transformation creates a new coordinate system relative to the parent coordinate system.
Hint: +Y axis is up. (Sometimes +X is North and +Z is East.) Best approach is to keep +Y axis in up direction for scene composability and effective browser assistance (which is based on gravity direction).
Hint: insert a Shape node before adding geometry or Appearance.
Hint: translation/rotation/scaling field attributes can be defined in any order in the scene. The applied order of translation/rotation/scaling transformation-matrix operations remains consistent.
Hint: authors can modify order of translation/rotation/scaling operations by splitting them into separate nested parent/child Transform nodes.
Warning: Transform contained by CADFace can only hold a single LOD or Shape node.
Hint: X3D Scene Authoring Hints, Coordinate Systems https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#CoordinateSystems
Hint: apply containerField='shape' if parent node is CADFace.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.children [children accessType inputOutput, type MFNode array, empty list] [X3DChildNode]
Grouping nodes contain an ordered list of children nodes.
Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
Hint: X3D Architecture 10.2.1 Grouping and children node types, https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodestranslation [translation accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Position (x, y, z in meters) of children relative to local coordinate system.
Hint: The order of operation is first apply the center offset, then scaleOrientation and scale, then rotation, then restore the center offset, then translation.rotation [rotation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Orientation (axis, angle in radians) of children relative to local coordinate system.
Hint: The order of operation is first apply the center offset, then scaleOrientation and scale, then rotation, then restore the center offset, then translation.center [center accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Translation offset from origin of local coordinate system, applied prior to rotation or scaling.
Hint: The order of operation is first apply the center offset, then scaleOrientation and scale, then rotation, then restore the center offset, then translation.scale [scale accessType inputOutput, type SFVec3f CDATA "1 1 1"]
Non-uniform x-y-z scale of child coordinate system, adjusted by center and scaleOrientation.
Hint: The order of operation is first apply the center offset, then scaleOrientation and scale, then rotation, then restore the center offset, then translation.scaleOrientation [scaleOrientation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Preliminary rotation of coordinate system before scaling (to allow scaling around arbitrary orientations).
Hint: The order of operation is first apply the center offset, then scaleOrientation and scale, then rotation, then restore the center offset, then translation.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectcontainerField [containerField type NMTOKEN (children | proxy |shape) "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources TransmitterPdu TransmitterPdu is a networked Protocol Data Unit (PDU) information node that provides detailed information about a radio transmitter modeled in a simulation.
Hint: TransmitterPdu packets use the IEEE Distributed Interactive Simulation (DIS) protocol.
Hint: Savage Developers Guide on DIS https://savage.nps.edu/Savage/developers.html#DIS
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/DistributedInteractiveSimulation.pdf
Warning: requires X3D profile='Full' or else include <component name='DIS' level='1'/>Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.whichGeometry [whichGeometry accessType inputOutput, type SFInt32 CDATA "1"]
Select geometry to render: -1 for no geometry, 0 for text trace, 1 for default geometry, (optional) higher values to render different states.bboxCenter [bboxCenter accessType initializeOnly, type SFVec3f CDATA "0 0 0"]
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectbboxSize [bboxSize accessType initializeOnly, type SFVec3f CDATA "-1 -1 -1"] or [0,+β)
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hint: can be useful for collision computations or inverse-kinematics (IK) engines.
Hint: precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
Hint: X3D Architecture, 10.2.2 Bounding boxes https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#BoundingBoxes
Hint: X3D Architecture, 10.3.1 X3DBoundedObject https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#X3DBoundedObjectsiteID [siteID accessType inputOutput, type SFInt32 CDATA "0"]
Simulation/exercise siteID of the participating LAN or organization.applicationID [applicationID accessType inputOutput, type SFInt32 CDATA "1"]
Each simulation application that can respond to simulation management PDUs needs to have a unique applicationID.entityID [entityID accessType inputOutput, type SFInt32 CDATA "0"]
EntityID unique ID for entity within that application.readInterval [readInterval accessType inputOutput, type SFTime CDATA "0.1"] [0,+β)
Seconds between read updates, 0 means no reading.
Hint: readInterval is a nonnegative SFTime duration interval, not an absolute clock time.writeInterval [writeInterval accessType inputOutput, type SFTime CDATA "1.0"] [0,+β)
Seconds between write updates, 0 means no writing (sending).
Hint: writeInterval is a nonnegative SFTime duration interval, not an absolute clock time.networkMode [networkMode accessType inputOutput, type SFString CDATA ( standAlone | networkReader | networkWriter ) standAlone]
Whether this entity is ignoring the network, sending DIS packets to the network, or receiving DIS packets from the network. (1) standAlone: ignore network but still respond to events in local scene. (2) networkReader: listen to network and read PDU packets at readInterval, act as remote copy of entity. (3) networkWriter: send PDU packets to network at writeInterval, act as master entity. Default value "standAlone" ensures that DIS network activation within a scene as networkReader or networkWriter is intentional.
Warning: do not wrap extra quotation marks around these SFString enumeration values, since "quotation" "marks" are only used for MFString values.isStandAlone [isStandAlone accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="local" (ignore network but still respond to local events)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isNetworkReader [isNetworkReader accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="remote" (listen to network as copy of remote entity)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isNetworkWriter [isNetworkWriter accessType outputOnly, type SFBool #FIXED ""]
Whether networkMode="master" (output to network as master entity at writeInterval)
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.address [address accessType inputOutput, type SFString CDATA localhost]
Multicast network address, or else "localhost" example: 224.2.181.145.port [port accessType inputOutput, type SFInt32 CDATA "0"]
Multicast network port, for example: 3000.multicastRelayHost [multicastRelayHost accessType inputOutput, type SFString CDATA #IMPLIED]
Fallback server address if multicast not available locally. For example: track.nps.edu.multicastRelayPort [multicastRelayPort accessType inputOutput, type SFInt32 CDATA "0"]
Fallback server port if multicast not available locally. For example: 8010.rtpHeaderExpected [rtpHeaderExpected accessType initializeOnly, type SFBool (true|false) "false"]
Whether RTP headers are prepended to DIS PDUs.isRtpHeaderHeard [isRtpHeaderHeard accessType outputOnly, type SFBool #FIXED ""]
Whether incoming DIS packets have an RTP header prepended.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
Have we had a network update recently?.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.timestamp [timestamp accessType outputOnly, type SFTime CDATA #FIXED ""]
DIS timestamp in X3D units (value 0.0 matches 1 January 1970) in seconds.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.radioID [radioID accessType inputOutput, type SFInt32 CDATA "0"]
Identifies a particular radio within a given entity.antennaLocation [antennaLocation accessType inputOutput, type SFVec3f CDATA "0 0 0"]
World coordinates for antenna location.relativeAntennaLocation [relativeAntennaLocation accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Relative coordinates for antenna location.antennaPatternLength [antennaPatternLength accessType inputOutput, type SFInt32 CDATA "0"]
antennaPatternType [antennaPatternType accessType inputOutput, type SFInt32 CDATA "0"]
Antenna shape pattern: 0 for omnidirectional, 1 for beam, 2 for spherical harmonic (deprecated), or optional higher valuecryptoKeyID [cryptoKeyID accessType inputOutput, type SFInt32 CDATA "0"]
Nonzero value corresponding to the simulated cryptographic key. Enumerations value 0 indicates plain (unencrypted) communications.cryptoSystem [cryptoSystem accessType inputOutput, type SFInt32 CDATA "0"]
Indicates type of crypto system being used, even if the encryption equipment is not keyed. Value 0 for No Encryption Device, higher enumerations values correspond to other specific equipment.frequency [frequency accessType inputOutput, type SFInt32 CDATA "0"]
Transmission frequency in Hz. If the radio is in frequency hopping mode, this field may be set to the center of the frequency hopping band currently in use, or to some other appropriate value.inputSource [inputSource accessType inputOutput, type SFInt32 CDATA "0"]
Source of transmission input. Enumerations value 0 for Other, 1 for Pilot, 2 for Copilot, 3 for First Officer, 4 for Driver, 5 for Loader, 6 for Gunner, 7 for Commander, 8 for Digital Data Device, 9 for Intercom, 10 for Audio Jammer, 11 for Data Jammer, 12 for GPS Jammer, 13 for GPS Meaconer (masking beacon).lengthOfModulationParameters [lengthOfModulationParameters accessType inputOutput, type SFInt32 CDATA "0"]
modulationTypeDetail [modulationTypeDetail accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumeration containing detailed information depending on the major modulation type.modulationTypeMajor [modulationTypeMajor accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumeration containing major classification of the modulation type. Enumerations value 0 for No Statement, 1 for Amplitude, 2 for Amplitude and Angle, 3 for Angle, 4 for Combination, 5 for Pulse, 6 for Unmodulated, 7 for Carrier Phase Shift Modulation (CPSM).modulationTypeSpreadSpectrum [modulationTypeSpreadSpectrum accessType inputOutput, type SFInt32 CDATA "0"]
Indicates the spread spectrum technique or combination of spread spectrum techniques in use.modulationTypeSystem [modulationTypeSystem accessType inputOutput, type SFInt32 CDATA "0"]
Specifies radio system associated with this Transmitter PDU and used to interpret other fields whose values depend on a specific radio system.power [power accessType inputOutput, type SFFloat CDATA "0"]
Power that radio would be capable of outputting if on and transmitting, independent of actual transmit state of the radio.radioEntityTypeCategory [radioEntityTypeCategory accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumeration containing EntityType of transmitter radio. Enumerations value: 0 for Other, 1 for Generic Radio or Simple Intercom, 2 for HAVE QUICK, 3 for HAVE QUICK II, 4 for HAVE QUICK IIA, 5 for SINCGARS, 6 for CCTT SINCGARS, 7 for EPLRS (Enhanced Position Location Reporting System), 8 for JTIDS/MIDS, 9 for Link 11, 10 for Link 11B, 11 for L-Band SATCOM, 12 for Enhanced SINCGARS 7.3, 13 for Navigation Aid.radioEntityTypeCountry [radioEntityTypeCountry accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumerations value for country to which the design of the entity or its design specification is attributed.radioEntityTypeDomain [radioEntityTypeDomain accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumerations value for domain in which the entity operates: LAND, AIR, SURFACE, SUBSURFACE, SPACE or OTHER.radioEntityTypeKind [radioEntityTypeKind accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumerations value for whether entity is a PLATFORM, MUNITION, LIFE_FORM, ENVIRONMENTAL, CULTURAL_FEATURE, SUPPLY, RADIO, EXPENDABLE, SENSOR_EMITTER or OTHER.radioEntityTypeNomenclature [radioEntityTypeNomenclature accessType inputOutput, type SFInt32 CDATA "0"]
Integer enumerations value indicating nomenclature (name) for a particular emitter. See DIS enumerations reference for value/name pairs.radioEntityTypeNomenclatureVersion [radioEntityTypeNomenclatureVersion accessType inputOutput, type SFInt32 CDATA "0"]
Named equipment version number.transmitFrequencyBandwidth [transmitFrequencyBandwidth accessType inputOutput, type SFFloat CDATA "0.0"]
Bandwidth of the particular transmitter measured between the half-power (3 dB) points (this value represents total bandwidth, not the deviation from the center frequency).transmitState [transmitState accessType inputOutput, type SFInt32 CDATA "0"]
Specify radio transmission state where enumerations value 0 is for off, value 1 for powered but not transmitting, or value 1 is for powered and transmitting,geoSystem [geoSystem accessType initializeOnly, type MFString CDATA "GD" "WE"]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: "GD" "UTM" or "GC" followed by additional quoted string parameters as appropriate for the type.
Hint: X3D Architecture 25.2.2 Spatial reference frames https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Spatialreferenceframes
Hint: X3D Architecture 25.2.4 Specifying geospatial coordinates https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geodata.html#Specifyinggeospatialcoords
Hint: UTM is Universal Transverse Mercator coordinate system https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
Warning: deprecated values are GDC (replaced by GD) and GCC (replaced by GC).geoCoords [geoCoords accessType inputOutput, type SFVec3d CDATA "0 0 0"]
Geographic location (specified in current geoSystem coordinates) for children geometry (specified in relative coordinate system, in meters).
Hint: X3D for Advanced Modeling (X3D4AM) slideset https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/GeospatialComponentX3dEarth.pdf
Warning: requires X3D profile='Full' or else include <component name='Geospatial' level='1'/>containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources TriangleFanSet TriangleFanSet is a geometry node containing a Coordinate|CoordinateDouble node, and can also contain Color|ColorRGBA, Normal and TextureCoordinate nodes.
Hint: color, normal and texCoord values are applied in the same order as coord values.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.fanCount [fanCount accessType initializeOnly, type MFInt32 CDATA #IMPLIED] (3,+β)
fanCount array provides number of vertices in each fan.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
ccw defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/ClockwisecolorPerVertex [colorPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Color|ColorRGBA values are applied to each point vertex (true) or to each polygon face (false).
Warning: if child Color|ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColornormalPerVertex [normalPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Normal node vector values are applied to each point vertex (true) or to each polygon face (false).
Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources TriangleSet TriangleSet is a geometry node containing a Coordinate|CoordinateDouble node, and can also contain Color|ColorRGBA, Normal and TextureCoordinate nodes.
Hint: color, normal and texCoord values are applied in the same order as coord values.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
ccw defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/ClockwisecolorPerVertex [colorPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Color|ColorRGBA values are applied to each point vertex (true) or to each polygon face (false).
Warning: if child Color|ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColornormalPerVertex [normalPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Normal node vector values are applied to each point vertex (true) or to each polygon face (false).
Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources TriangleSet2D TriangleSet2D is a geometry node that defines a set of filled 2D triangles in X-Y plane.
Hint: insert a Shape node before adding geometry or Appearance.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.vertices [vertices accessType initializeOnly, type MFVec2f CDATA #FIXED ""]
2D coordinates of TriangleSet2D vertices.
Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.solid [solid accessType initializeOnly, type SFBool (true|false) "false"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.
Warning: solid false not supported in VRML97.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources TriangleStripSet TriangleStripSet is a geometry node containing a Coordinate|CoordinateDouble node, and can also contain Color|ColorRGBA, Normal and TextureCoordinate nodes.
Hint: color, normal and texCoord values are applied in the same order as coord values.
Hint: insert a Shape node before adding geometry or Appearance.
Hint: for advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.stripCount [stripCount accessType initializeOnly, type MFInt32 CDATA #IMPLIED] (3,+β)
stripCount array provides number of vertices in each strip.
Warning: do not exceed number of points in contained Coordinate|CoordinateDouble node.ccw [ccw accessType initializeOnly, type SFBool (true|false) "true"]
ccw defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
Hint: a good debugging technique for problematic polygons is to try changing the value of ccw, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
Warning: consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
Hint: clockwise https://en.wikipedia.org/wiki/ClockwisecolorPerVertex [colorPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Color|ColorRGBA values are applied to each point vertex (true) or to each polygon face (false).
Warning: if child Color|ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.
Hint: X3D Scene Authoring Hints, Color https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ColornormalPerVertex [normalPerVertex accessType initializeOnly, type SFBool (true|false) "true"]
Whether Normal node vector values are applied to each point vertex (true) or to each polygon face (false).
Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.solid [solid accessType initializeOnly, type SFBool (true|false) "true"]
Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
Hint: mnemonic "this geometry is solid like a brick" (you don't render the inside of a brick).
Warning: default value true can completely hide geometry if viewed from wrong side!
Hint: if in doubt, use solid='false' for maximum visibility.containerField [containerField type NMTOKEN "geometry"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources Viewpoint Viewpoint provides a specific location and direction where the user may view the scene. Viewpoints are the primary way for a user to navigate within a scene, and for an author to show critical aspects of a model.
Hint: a sequence of good Viewpoints with understandable descriptions can provide a guided tour of a model.
Hint: the currently bound NavigationInfo node has a major effect on how a user might change viewing position and orientation after reaching this Viewpoint.
Hint: consider paired Viewpoint/NavigationInfo node combinations by defining ROUTE connections between corresponding isBound/set_bind fields.
Hint: consider how users might interact with the current X3D model, either standalone or as an Inline within a larger parent scene.
Hint: Background, Fog, NavigationInfo, TextureBackground and Viewpoint are bindable nodes, meaning that no more than one of each node type can be active at a given time.
Hint: GeoViewpoint OrthoViewpoint and Viewpoint share the same binding stack, so no more than one of these nodes can be bound and active at a given time.
Warning: results are undefined if a bindable node (Background, Fog, NavigationInfo, OrthoViewpoint, TextureBackground, Viewpoint) is a contained descendant node of either LOD or Switch. Avoid this authoring pattern.
Warning: do not include GeoViewpoint OrthoViewpoint or Viewpoint as a child of LOD or Switch, instead use ViewpointGroup as parent to constrain location proximity where the viewpoint is available to user.
Hint: Regardless of viewpoint jump value at bind time, the relative viewing transformation between user's view and defined position/orientation is stored for later use when un-jumping (returning to the viewpoint when subsequent viewpoint is unbound).
Hint: customizable design pattern for dedicated Viewpoint/NavigationInfo pair: <Viewpoint DEF='SpecialView'/> <NavigationInfo DEF='SpecialNav'/> <ROUTE fromNode='SpecialView' fromField='isBound' toNode='SpecialNav' toField='set_bind'/>
Hint: X3D Scene Authoring Hints, Viewpoints https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#ViewpointsSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.description [description accessType initializeOnly, type SFString CDATA #IMPLIED]
Text description or navigation hint to describe the significance of this model Viewpoint.
Hint: a sequence of good Viewpoints with understandable descriptions can provide a guided tour of a model.
Hint: the currently bound NavigationInfo node has a major effect on how a user might change viewing position and orientation after reaching this Viewpoint.
Hint: consider paired Viewpoint/NavigationInfo node combinations by defining ROUTE connections between corresponding isBound/set_bind fields.
Hint: include space characters since a description is not a DEF identifier. Write short phrases that make descriptions clear and readable.
Warning: without description, Viewpoint is unlikely to appear on browser Viewpoint menus.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).position [position accessType inputOutput, type SFVec3f CDATA "0 0 10"]
Position (x, y, z in meters) relative to local coordinate system.orientation [orientation accessType inputOutput, type SFRotation CDATA "0 0 1 0"]
Rotation (axis, angle in radians) of Viewpoint, relative to default -Z axis direction in local coordinate system.
Warning: for VR/AR/MAR users wearing a head-mounted display (HMD), animating this field may induce motion sickness.
Hint: this is orientation _change_ from default direction (0 0 -1).
Hint: complex rotations can be accomplished axis-by-axis using parent Transforms.fieldOfView [fieldOfView accessType inputOutput, type SFFloat CDATA "0.7854"]]
jump [jump accessType inputOutput, type SFBool (true|false) "true"]
Transition instantly by jumping, otherwise smoothly adjust offsets in place when changing to this Viewpoint.
Hint: see NavigationInfo.transitionType for the manner in which animated Viewpoint transistions occur.
Hint: set jump=true for instantaneous camera motion when going to this viewpoint.
Warning: for VR/AR/MAR users wearing head-mounted displays, animating transitions between viewpoints may induce motion sickness.centerOfRotation [centerOfRotation accessType inputOutput, type SFVec3f CDATA "0 0 0"]
centerOfRotation specifies center point about which to rotate user's eyepoint when in EXAMINE or LOOKAT mode.set_bind [set_bind accessType inputOnly, type SFBool #FIXED ""]
Sending event set_bind=true makes this node active. Sending event set_bind=false makes this node inactive. Thus setting set_bind to true/false will pop/push (enable/disable) this Viewpoint.
Hint: paired node operations can be established by connecting set_bind and isBound fields of corresponding bindable nodes.
Warning: it is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.bindTime [bindTime accessType outputOnly, type SFTime CDATA #FIXED ""]
Event sent reporting timestamp when node becomes active/inactive.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.isBound [isBound accessType outputOnly, type SFBool #FIXED ""]
Output event true gets sent when node becomes bound and activated, otherwise output event false gets sent when node becomes unbound and deactivated.
Hint: paired node operations can be established by connecting set_bind and isBound fields of corresponding bindable nodes.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources VisibilitySensor VisibilitySensor detects when user can see a specific object or region as they navigate the world. The region sensed for visibility to the user is bounded by a rectangular box.
Hint: often used to attract user attention or improve performance.
Hint: this sensor detects user interactions affecting peer nodes and their child geometry.Search
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.enabled [enabled accessType inputOutput, type SFBool (true|false) "true"]
Enables/disables the sensor node.center [center accessType inputOutput, type SFVec3f CDATA "0 0 0"]
Translation offset from origin of local coordinate system.size [size accessType inputOutput, type SFVec3f CDATA "0 0 0"] [0,+β)
size of visibility box, measured from center in meters.isActive [isActive accessType outputOnly, type SFBool #FIXED ""]
isActive true/false events are sent when triggering the sensor. isActive=true when entering visibility region, isActive=false when exiting visibility region.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.enterTime [enterTime accessType outputOnly, type SFTime CDATA #FIXED ""]
Time event generated when user's camera enters visibility region for sensor.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.exitTime [exitTime accessType outputOnly, type SFTime CDATA #FIXED ""]
Time event generated when user's camera exits visibility region for sensor.
Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources WorldInfo WorldInfo contains a title and persistent documentation or simple metadata information about an X3D scene.
Hint: comments are not readable when a model file is loaded for viewing, but WorldInfo and Metadata* nodes are persistent and inspectable at run time.
Hint: X3D for Web Authors, Chapter 15, Metadata Information https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter15-Metadata/Chapter15-MetadataInformation.htmlSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#MetadataDEF [DEF type ID #IMPLIED]
DEF defines a unique ID name for this node, referenceable by other nodes.
Hint: descriptive DEF names improve clarity and help document a model.
Hint: well-defined names can simplify design and debugging through improved author understanding.
Hint: X3D Scene Authoring Hints, Naming Conventions https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventionsUSE [USE type IDREF #IMPLIED]
USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.title [title accessType inputOutput, type SFString CDATA #IMPLIED]
title of this world, placed in window title.
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).info [info accessType inputOutput, type MFString CDATA #IMPLIED]
Additional information about this model.
Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).containerField [containerField type NMTOKEN "children"]
containerField is a field-label prefix indicating this node's field relationship to its parent node, for example <Transform><Shape containerField='children'/></Transform>.
Hint: default containerField values for each node are correct in most cases, so the need to override default containerField values is rare.
Hint: example values include containerField='geometry' for Box node, containerField='children' for Group node, containerField='proxy' for hidden proxy shape within a Collision node, etc.
Hint: containerField attribute is part of XML encoding for X3D scenes, and corresponds to the always-declared field labels in the ClassicVRML and VRML97 file encodings.
Hint: USE node instances are allowed to have a containerField value that is different than the corresponding DEF declaration of that node.
Hint: X3D Scene Authoring Hints, containerField https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources X3D X3D is the top-most XML element for an Extensible 3D (X3D) Graphics model. The X3D element contains a single head element for metadata, and a single Scene element which is root node of the 3D scene graph.
Hint: include a head element to contain component, unit or meta statements for this X3D model.
Hint: include a Scene element to contain scene-graph nodes for this X3D model..
Hint: for more on XML declaration and DOCTYPE (DTD) statements, see https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Validation
Hint: additional attributes are under consideration for use when embedding X3D version 4 scenes within HTML version 5 web pages.
Hint: X3D Architecture 7.2.5.2 Header statement https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#HeaderStatementSearch
mail lists or
Mantis issues, give feedbackX3D validation:
XML Schema, DOCTYPE, JSON Schema, Java SAI, X3DJSAILmetadata [metadata accessType inputOutput, type SFNode singleton, NULL node] [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint: X3D Architecture 7.2.4 Metadata https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#Metadataversion #REQUIRED]
X3D version 3.0 corresponds to X3D/VRML 200x.profile [profile type ENUMERATION #REQUIRED (Full|Immersive|Interactive|Interchange|Core|MPEG4Interactive)]
profile attribute is required and defines the player or tool support needed for this model.
Hint: Core profile corresponds to minimalist extensible profile with Metadata* nodes, useful for defining custom scene capabilities via addition of individual component statements. https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/coreprofile.html
Hint: Interchange profile corresponds to minimum lightweight subset of nodes needed to display (or import/export) compelling 3D content. https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/interchange.html
Hint: Interactive profile corresponds to Interchange geometry plus simple user interaction. https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/interactive.html
Hint: Immersive profile is common and approximately matches VRML97 with Script and Prototypes. https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/immersive.html
Hint: CADInterchange profile (X3D version 3.1 or later) corresponds to Interchange geometry plus distillation of computer-aided design (CAD) models. https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/CADInterchange.html
Hint: Full profile contains all nodes defined in X3D specification. https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/fullProfile.html
Warning: PROFILE is capitalized and is a separate statement in the ClassicVRML Encoding.
Hint: X3D Architecture 7.2.5.3 PROFILE statement https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#PROFILEStatementxmlns:xsd [xmlns:xsd type CDATA "http://www.w3.org/2001/XMLSchema-instance"]
XML namespace (xmlns) for XML Schema Definition (xsd).
Hint: X3D Scene Authoring Hints, Validation of X3D Scenes using DTD and XML Schema https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Validationxsd:noNamespaceSchemaLocation [xsd:noNamespaceSchemaLocation type CDATA "https://www.web3d.org/specifications/x3d-3.0.xsd"]
url for the X3D Schema defining the X3D document-validation rules.
Hint: X3D Scene Authoring Hints, Validation of X3D Scenes using DTD and XML Schema https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Validationclass [class type CDATA #IMPLIED]
The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSSaccessType and type Credits and Translations X3D Resources
π accessType Definitions
References: X3D Abstract Specification 4.4.2.2 Field semantics and X3D XML Encoding 4.3.7 Prototype and field declaration syntax
accessType determines whether a field corresponds to event input, event output, or persistent state information. Events are strictly typed values with a corresponding timestamp. ROUTE connections must match accessType between source field and target field.
- initializeOnly: can be initialized, but cannot send or receive events. This is usually the case for fields that are considered too computationally expensive to change at run time.
- inputOutput: can be initialized, and can also send or receive events during run-time operations.
- inputOnly: cannot be initialized or included in a scene file, but can receive input event values via a ROUTE during run-time operations.
- outputOnly: cannot be initialized or included in a scene file, but can send output event values via a ROUTE during run-time operations.
X3D accessType design keeps 3D graphics rendering fast and interactive, also helping to keep X3D players small and lightweight.
π type Definitions
The X3D Architecture specification of field types classify the possible values for a field. Each field in each node (i.e. each XML attribute) has a strictly defined data type. Multiple data types are provided for boolean, integer, floating-point and string values. X3D is a strongly typed language, meaning that all data must strictly conform to these data types in order for a scene to be correct.
- Each of the base types are either single-value (SF Single Field) or multiple-value (MF Multiple Field). Examples: SFFloat (single-value), SFVec2f (singleton 2-tuple), SFVec3f (singleton 3-tuple), SFOrientation (singleton 4-tuple for axis-angle values).
- Arrays are also provided for all base types. Nomenclature: SF = Single Field (single value of base type), MF = Multiple Field (array of base-type values). Examples: MFFloat (array of zero or more SFFloat values), MFVec4d (array of zero or more 4-tuple SFVec4d values), etc.
- The X3D Schema is able to validate numeric type information and array tuple sizes in X3D scenes for field initializations (having accessType of initializeOnly and inputOutput) that appear within an X3D file.
- ROUTEs pass events, which are strictly typed values with a corresponding timestamp. ROUTE connections must match type between source field and target field. Since they are transient, event values themselves cannot appear within an X3D file.
- For MF Multiple-Field arrays, commas between values are normally treated as whitespace. However, X3D Schema validation will not accept commas that appear within vector values, only between values. MFColor examples: color="0.25 0.5 0.75, 1 1 0" is valid while color="0.25, 0.5, 0.75, 1, 1, 0" is invalid. This is an authoring assist to help authors troubleshoot errors in long arrays of values.
- Failure to match data types correctly is an error! Types must match during scene validation, scene loading, and at run time. This is A Good Thing since it allows authors to find problems when they exist, rather than simply hoping (perhaps mistakenly) that everything will work for end users.
π XML Data Types and default attribute values defined in the Extensible Markup Language (XML) Recommendation are also included in these tooltips.
- CDATA is an XML term for Character Data. The base type for all XML attributes consists of string-based CDATA characters. CDATA is used throughout the X3D DOCTYPE definitions, which can only check for the presence of legal strings and thus are not able to validate numeric type information. XML Schema provides stricter validation based on data types.
- COMMENT statements contain string characters. Comments have great value for documenting design and significance in X3D model source. Comment strings cannot contain a double hyphen
--
since that character pair is part of the comment terminator. XML comments can only appear between other elements and comments, and are not allowed within element or attribute markup. Comments have no effect on X3D model rendering and are not accessible programmatically at run time. Example:<-- here is my most excellent XML comment! -->
- DOCTYPE statements are Document Type Declaration (DTD) statements, immediately following the initial XML prolog statement in an .x3d file. DOCTYPE statements enable XML-aware document processors to validate parent-child node relationships and element-attribute string values. DOCTYPE validation is always optional. Allowed DOCTYPE statements for each X3D version are found at X3D Specifications: Schema and DOCTYPE Validation.
- ENUMERATION indicates that the given value can only equal one of several allowed NMTOKEN values.
- FIXED indicates that the given value is required and no other value is allowed. A FIXED value of empty string "" indicates that no value is allowed to appear in this attribute.
- ID is a NMTOKEN that is unique within the scene, corresponding to the DEF attribute in X3D.
- IDREF is a NMTOKEN reference to one of these unique scene IDs, corresponding to the USE attribute in X3D.
- IMPLIED means that that no default value is provided for this attribute.
- NMTOKEN is an XML term for Name Token. NMTOKEN is a special kind of CDATA string that must match naming requirements for legal characters, with no whitespace characters allowed. Additionally, from XML specification: disallowed initial characters for Names include numeric digits, diacritics (letter with accent or marking), the "." period character (sometimes called full stop) and the "-" hyphen character. For further information see X3D Scene Authoring Hints: Naming Conventions.
- NMTOKENS is an XML term for an array of NMTOKEN values.
- xs:token is similar to NMTOKEN string and allows further restrictions via regular expression (regex) pattern. No leading, trailing or multiple-adjacent whitespace characters can occur.
- REQUIRED means that an attribute value MUST always be provided.
π Range Intervals may be defined to indicate lower and upper bounds on allowed attribute values. These are typically defined by the X3D Architecture Specification in order to avoid illegal or illogical results. Value constraints being within allowed range intervals are checked by schema validation tools (but not XML DTD). Example range intervals:
[0,1]
places limits on an allowed value from range 0 to 1, inclusive.(0,+β)
is positive, i.e. greater than zero and less than positive infinity.[0,+β)
is non-negative, i.e. greater than or equal to zero, and less than positive infinity.[-1,+β)
is greater than or equal to -1.(-β,+β)
is unbounded, any numeric value is allowed.π Field Types Table that follows provides a complete list of X3D data type names, descriptions and example values. The X3D Architecture Specification: 5 Field type reference defines default values for each field type.
Field-type names Description Example values Scene Access
Interface (SAI)π SFBool Single-Field boolean value Default value false. Example values: true or false for XML syntax in .x3d files.
Warning: capitalization of each boolean XML attribute value must be all lower case, matching HTML.
Hint: XML, Java, JavaScript and JSON syntax istrue
orfalse
.
Hint: ClassicVRML syntax isTRUE
orFALSE
in .wrl or .x3dv files.
Hint: Python syntax isTrue
orFalse
in .py files.
Hint: see Wikipedia: Boolean data type.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFBool Multiple-Field boolean array, containing an ordered list of SFBool values Default value [ ] empty list. Example values: true false false true for XML syntax in .x3d files.
Warning: capitalization of each boolean XML attribute value must be all lower case, matching HTML.
Hint: XML, Java, JavaScript and JSON syntax istrue
orfalse
.
Hint: ClassicVRML syntax is[ TRUE FALSE FALSE TRUE ]
in .wrl or .x3dv files.
Hint: Python syntax isTrue
orFalse
in .py files.
Hint: see Wikipedia: Boolean data type.
Hint: a single comma character is allowed as part of whitespace between individual SFBool values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFColor Single-Field color value, red-green-blue, all values in range [0,1] Default value 0 0 0. Example values: 0 0.5 1.0
Hint: see X3D Scene Authoring Hints: Color.
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFColor Multiple-Field color array, containing an ordered list of SFColor values Default value [ ] empty list. Example values: 1 0 0, 0 1 0, 0 0 1
Hint: see X3D Scene Authoring Hints: Color.
Hint: optional comma characters between singleton 3-tuple SFColor attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 3-tuple SFColor values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFColor values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFColorRGBA Single-Field color value, red-green-blue alpha (opacity), all values in range [0,1] Default value 0 0 0 0. Example values: 0 0.5 1.0 0.75
Hint: see X3D Scene Authoring Hints: Color.
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFColorRGBA Multiple-Field color array, containing an ordered list of SFColorRGBA values Default value [ ] empty list. Example values: 1 0 0 0.25, 0 1 0 0.5, 0 0 1 0.75 (red green blue, with varying opacity)
Hint: see X3D Scene Authoring Hints: Color.
Hint: optional comma characters between singleton 4-tuple SFColorRGBA attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 4-tuple SFColorRGBA values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFColorRGBA values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFInt32 Single-Field 32-bit integer value, range [β2,147,483,648 to 2,147,483,647]
Default value 0. Example values: -1 0 7
Hint: see Wikipedia: Integer (computer science).
Warning: avoid scientific notation or else value is considered floating point.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFInt32 Multiple-Field 32-bit integer array, containing an ordered list of SFInt32 values Default value [ ] empty list. Example values: 1 2 3 4 5
Hint: see Wikipedia: Integer (computer science).
Warning: avoid scientific notation or else value is considered floating point.
Hint: a single comma character is allowed as part of whitespace between individual SFInt32 values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFFloat Single-Field single-precision (32-bit) floating-point value, 9 significant digits, maximum value ~3.4 Γ 10^38
Default value 0.0. Example values: 1.0 0 1 -0.0 5E-6 78.0E+9 1.57
Warning: do not use illegal values INF (infinity) or NaN (Not a Number).
Hint: see Wikipedia: Single-precision floating-point format. and Meter (British spelling "metre").XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFFloat Multiple-Field single-precision (32-bit) floating-point array, containing an ordered list of SFFloat values Default value [ ] empty list. Example values: β1 2.0 3.141592653
Hint: see Wikipedia: Single-precision floating-point format.
Hint: a single comma character is allowed as part of whitespace between individual SFFloat values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFDouble Single-Field double-precision (64-bit) floating-point value, 15-17 significant digits, maximum value ~1.8 Γ 10^308
Default value 0.0. Example values: 2.7128 3.141592653
Hint: see Wikipedia: Double-precision floating-point format. and Meter (British spelling "metre").XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFDouble Multiple-Field double-precision array, containing an ordered list of SFDouble values Default value [ ] empty list. Example values: β1 2.0 3.14159
Hint: see Wikipedia: Double-precision floating-point format.
Hint: a single comma character is allowed as part of whitespace between individual SFDouble values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFImage Single-Field image value. SFImage fields contain three nonnegative integers representing width, height and number of components [0-4] for the following pixel values, followed by widthΓheight hexadecimal (or integer) values representing all of the pixel colors defining the SFIimage texture. Default value 0 0 0. Contains special pixel-encoding parameters and values to numerically create a texture image.
The tooltip for PixelTexture image field shows example SFImage values.
Hint: see X3D Architecture Specification: 5.3.6 SFImage MFImage.
Hint: see X3D Scene Authoring Hints: Images.
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFImage Multiple-Field image value, containing an ordered list of SFImage values Default value [ ] empty list. Contains special pixel-encoding parameters and values to numerically create an array of texture images.
Hint: see X3D Architecture Specification: 5.3.6 SFImage MFImage.
Hint: see X3D Scene Authoring Hints: Images.
Hint: a single comma character is allowed as part of whitespace between individual SFImage values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFNode SFNode Single-Field singleton node. Default value is NULL node, meaning no entry. <Shape/> or Shape
Warning: o not include keyword NULL for an empty node in XML encoding..XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFNode Multiple-Field node array, containing an ordered list of SFNode values. Default value is an empty list. <Shape/> <Group/> <Transform/>
Warning: do not include keyword NULL for an empty node list in XML encoding.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFRotation Single-Field rotation value using 3-tuple axis, radian angle form Default value 0 0 1 0. Model authors and authoring tools may prefer the equivalent zero-rotation default value 0 1 0 0 since rotation about the vertical Y-axis is most common. Example values: 0 1 0 1.57
Warning: initial 3-tuple axis vector cannot hold a zero-magnitude vector.
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.
Hint: see Wikipedia: Radian, Rotation matrix and Rotation formalisms in three dimensions.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFRotation Multiple-Field rotation array, containing an ordered list of SFRotation values Default value [ ] empty list. Example values: 0 1 0 0, 0 1 0 1.5707963265, 0 1 0 3.141592653
Warning: initial 3-tuple axis vectors cannot hold a zero-magnitude vector within contained 4-tuple SFRotation attribute values.
Hint: optional comma characters between singleton 4-tuple SFRotation attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 4-tuple SFRotation values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFRotation values in the list.
Hint: separating comma characters are not included in X3D canonical form.
Hint: see Wikipedia: Radian, Rotation matrix and Rotation formalisms in three dimensions.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFString Single-Field string value Default value is empty string "". Example: "an SFString is a simple string value."
Warning: do not wrap quotation marks around SFString values.
Warning: SFString is not defined in ECMAScript Scene Access Interface (SAI), use string type instead.
Hint: insert backslash characters prior to \"embedded quotation marks\" within an SFString value.
Hint: XML rules for encoding special characters can be found at
Wikipedia: List of XML and HTML character entity references.
Hint: see Wikipedia: String (computer science).XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFString Multiple-Field string array, containing an ordered list of SFString values (each of which must be quoted). Default value [ ] empty list. Example values: Example: "EXAMINE" "FLY" "WALK" "ANY"
Warning: MFString is not defined in ECMAScript Scene Access Interface (SAI), use string[] array type instead.
Hint: XML rules for encoding special characters can be found at
Wikipedia: List of XML and HTML character entity references.
Hint: see Wikipedia: String (computer science).
Hint: a single comma character is allowed as part of whitespace between individual SFString values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFTime Single-Field time value in seconds, specified as a double-precision (64-bit) floating point number, 15-17 significant digits, maximum value ~1.8 Γ 10^308
Default value -1. Example values: 0, 10 (seconds), or -1 (indicating no actual time value has been provided).
Hint: Time values are usually either a system time (matching current clock time) in seconds, or else a nonnegative duration interval in seconds.
Hint: Typically, SFTime fields represent the number of seconds since Jan 1, 1970, 00:00:00 GMT.
Hint:X3D Abstract Specification, Time component, 8.2 Concepts for time model, time origin, discrete and continuous changes, time-dependent node cycles and activation, pausing time, etc.
Warning: -1 is default initial value, typically indicating no updated time value has yet been provided.
Warning: Negative duration intervals are not allowed.
Hint: Negative absolute time values are explicitly allowed and occur prior to Jan 1, 1970, 00:00:00 GMT.
Hint: Processing an event with timestampt
may only result in generating events with timestamps greater than or equal tot
.
Hint: see Wikipedia: Double-precision floating-point format.
Hint: see Wikipedia: Time, Seconds and System time.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFTime Multiple-Field time array, containing an ordered list of SFTime values Default value [ ] empty list. Example values: β1 0 1 567890
Warning: -1 is the only valid negative value (indicating no actual time value is provided).
Hint: see Wikipedia: Double-precision floating-point format.
Hint: see Wikipedia: Time and System time.
Hint: a single comma character is allowed as part of whitespace between individual SFTime values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFVec2f Single-Field 2-tuple single-precision (32-bit) float vector Default value 0 0. Example values: 0.5 0.5
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFVec2f Multiple-Field array of 2-tuple single-precision (32-bit) float vectors, containing an ordered list of SFVec2f values Default value [ ] empty list. Example values: 0 0, 0 1, 1 1, 1 0
Warning: comma characters within contained singleton 2-tuple SFVec2f values do not pass strict validation.
Hint: optional comma characters between singleton 2-tuple SFVec2f attribute values can help authors keep track of long array definitions.
Hint: a single comma character is allowed as part of whitespace between individual SFVec2f values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFVec2d Single-Field 2-tuple double-precision (64-bit) float vector Default value 0 0. Example values: 0.5 0.5
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFVec2d Multiple-Field array of 2-tuple double-precision (64-bit) float vectors, containing an ordered list of SFVec2d values Default value [ ] empty list. Example values: 0 0, 0 1, 1 1, 1 0
Hint: optional comma characters between singleton 2-tuple SFVec2d attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 2-tuple SFVec2d values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFVec2d values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFVec3f Single-Field 3-tuple single-precision (32-bit) float vector Default value 0 0 0. Example values: 0.0 0.0 0.0
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFVec3f Multiple-Field array of 3-tuple single-precision (32-bit) float vectors, containing an ordered list of SFVec3f values Default value [ ] empty list. Example values: 0 0 0, 0 0 1, 0 1 1, 0 1 0, 1 0 0, 1 0 1, 1 1 1, 1 1 0
Hint: optional comma characters between singleton 3-tuple SFVec3f attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 3-tuple SFVec3f values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFVec3f values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFVec3d Single-Field 3-tuple double-precision (64-bit) float vector Default value 0 0 0. Example values: 0.0 0.0 0.0
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFVec3d Multiple-Field array of 3-tuple double-precision (64-bit) float vectors, containing an ordered list of SFVec3d values Default value [ ] empty list. Example values: 0 0 0, 0 0 1, 0 1 1, 0 1 0, 1 0 0, 1 0 1, 1 1 1, 1 1 0
Hint: optional comma characters between singleton 3-tuple SFVec3d attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 3-tuple SFVec3d values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFVec3d values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFVec4f Single-Field 4-tuple single-precision (32-bit) float vector Default value 0 0 0 1. Example values: 1.0 2.0 3.0 4.0
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFVec4f Multiple-Field array of 4-tuple single-precision (32-bit) float vectors, containing an ordered list of SFVec4f values Default value [ ] empty list. Example values: 1 1 1 1, 2 2 2 2, 3 3 3 3, 4 4 4 4
Hint: optional comma characters between singleton 4-tuple SFVec4f attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 4-tuple SFVec4f values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFVec4f values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFVec4d Single-Field 4-tuple double-precision (64-bit) float vector Default value 0 0 0 1. Example values: 1.0 2.0 3.0 4.0
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFVec4d Multiple-Field array of 4-tuple double-precision (64-bit) float vectors, containing an ordered list of SFVec4d values Default value [ ] empty list. Example values: 1 1 1 1, 2 2 2 2, 3 3 3 3, 4 4 4 4
Hint: optional comma characters between singleton 4-tuple SFVec4d attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 4-tuple SFVec4d values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFVec4d values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFMatrix3f Single 3Γ3 matrix of single-precision (32-bit) floating point numbers Default value 1 0 0 0 1 0 0 0 1 (which is identity matrix).
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFMatrix3f Zero or more 3Γ3 matrices of single-precision (32-bit) floating point numbers, containing an ordered list of SFMatrix3f values Default value [ ] empty list. Example values: 1 0 0 0 1 0 0 0 1, 1 0 0 0 1 0 0 0 1 (default value is empty list)
Hint: optional comma characters between singleton 9-tuple SFMatrix3f attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 9-tuple SFMatrix3f values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFMatrix3f values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFMatrix3d Single 3Γ3 matrix of double-precision (64-bit) floating point numbers Default value 1 0 0 0 1 0 0 0 1 (which is identity matrix).
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFMatrix3d Zero or more 3Γ3 matrices of double-precision (64-bit) floating point numbers, containing an ordered list of SFMatrix3d values Default value [ ] empty list. Example values: 1 0 0 0 1 0 0 0 1, 1 0 0 0 1 0 0 0 1 (default value is empty list)
Hint: optional comma characters between singleton 9-tuple SFMatrix3d attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 9-tuple SFMatrix3d values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFMatrix3d values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFMatrix4f Single 4Γ4 matrix of single-precision (32-bit) floating point numbers Default value 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 (which is identity matrix).
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFMatrix4f Zero or more 4Γ4 matrices of single-precision (32-bit) floating point numbers, containing an ordered list of SFMatrix4f values Default value [ ] empty list. Example values: 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1, 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 (default value is empty list)
Hint: optional comma characters between singleton 16-tuple SFMatrix4f attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 16-tuple SFMatrix4f values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFMatrix4f values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL π SFMatrix4d Single 4Γ4 matrix of double-precision (64-bit) floating point numbers Default value 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 (which is identity matrix).
Warning: comma characters within attribute values are not allowed, and do not pass strict validation.XML Schema, X3D regexes, Java SAI, X3DJSAIL π MFMatrix4d Zero or more 4Γ4 matrices of double-precision (64-bit) floating point numbers, containing an ordered list of SFMatrix4d values Default value [ ] empty list. Example values: 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1, 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 (default value is empty list)
Hint: optional comma characters between singleton 16-tuple SFMatrix4d attribute values can help authors keep track of long array definitions.
Warning: comma characters within contained singleton 16-tuple SFMatrix4d values do not pass strict validation.
Hint: a single comma character is allowed as part of whitespace between individual SFMatrix4d values in the list.
Hint: separating comma characters are not included in X3D canonical form.XML Schema, X3D regexes, Java SAI, X3DJSAIL Table adapted from Chapter 1 Technical Overview, Table 1.4 X3D Field Types, X3D for Web Authors,
Don Brutzman and Leonard Daly, Morgan Kaufman Publishers, 2007. Used with permission.π Credits and Translations
Many thanks to our contributors and translators.
- English tooltips (primary reference): Don Brutzman and students of the U.S. Naval Postgraduate School (NPS) in Monterey California USA.
- Chinese tooltips: yiqi meng of Nanjing Art Institute in Nanjing China.
- French tooltips: Antony Beis, Frederic Roussille, Adrien Gruneisen et Yann Henrietof Ecole Nationale des Ingenieurs de Tarbes (ENIT) in Tarbes France.
- German tooltips: Raimund Dachselt and Johannes Richter of the Multimedia Technology Group, Dresden University of Technology in Germany.
- Italian tooltips: Roberto Ranon of the L'Universita degli Studi di Udine in Italy.
- Japanese tooltips: Yeonsoo Yang of Toshiba in Japan. (Initial draft started.)
- Korean tooltips: Ikjune Kim, Byounghyun Yoo and Hyokwang Lee of the Korea Advanced Institute of Science and Technology (KAIST) and PartDB Co. Ltd. in South Korea.
- Portuguese tooltips: Luciano Pereira Soares of the LaboratΓrio de Sistemas IntegrΓ‘veis, Escola PolitΓ©cnica - Universidade de SΓ£o Paulo in Brasil.
- Spanish tooltips: Guadalupe Munoz Martin of University Rey Juan Carlos in Madrid Espana.
- Thai tooltips: Hassadee Pimsuwan of Suranaree University of Technology and hassadee.com in Thailand.
Reference Tooltip Versions
URL for these tooltips:
https://www.web3d.org/x3d/tooltips/X3dTooltips3.0.htmlTooltip source for this page: x3d-3.0.profile.xml X3D Tooltips Conversion Stylesheet: X3dTooltipConversions.xslt All tooltips: https://www.web3d.org/x3d/tooltips/X3dTooltips.zip Nightly build: Savage Jenkins Continuous Integration Server Version history: https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/tooltips/ Contact: Don Brutzman (brutzman at nps.edu) Generated 9 July 2023