<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/TR/xhtml1/strict"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:saxon="http://icl.com/saxon">
<head>
<title>SimpleShader.x3d (X3dToXhtml listing)</title>
<!-- I18N -->
<meta http-equiv="X-UA-Compatible" content="chrome=1,IE=edge"/>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
<style type="text/css">
span.element {color: navy}
span.attribute {color: green}
span.value {color: teal}
span.plain {color: black}
span.gray {color: gray}
span.idName {color: maroon}
span.addedDocumentation {background-color:#EEEEEE} // slightly darker for html page contrast
span.behaviorNode {background-color:#DDEEFF} // light blue for html page contrast
span.extensibilityNode {background-color:#FFEEFF} // light blue for html page contrast
a.idName {color: maroon}
div.center {text-align: center}
div.indent {margin-left: 25px}
span.prototype {color: purple}
a.prototype {color: purple}
a.prototype:visited {color: black}
span.route {color: red}
b.warning {color: #CC5500}
b.error {color: #CC0000}
</style>
<style type="text/css">
table.curvedEdges { border:10px solid RoyalBlue;-webkit-border-radius:13px;-moz-border-radius:13px;-ms-border-radius:13px;-o-border-radius:13px;border-radius:13px; }
table.curvedEdges td, table.curvedEdges th { border-bottom:1px dotted black;padding:5px; }
</style>
<meta name="generator" content="XSLT processor Saxonica"/>
<meta name="generator"
content="http://www.web3d.org/x3d/stylesheets/X3dToXhtml.xslt"/>
<meta name="generator"
content="https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/stylesheets/X3dToXhtml.xslt"/>
<link rel="shortcut icon"
href="http://www.web3d.org/x3d/content/icons/X3DtextIcon16.png"
title="X3D"/>
</head>
<body>
<code title="XML declaration"><?xml version="1.0" encoding="UTF-8"?></code>
<br/>
<code title="Document Type Declaration (DTD) for X3D validation"><!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.2//EN" "<a href="http://www.web3d.org/specifications/x3d-3.2.dtd">http://www.web3d.org/specifications/x3d-3.2.dtd</a>"></code>
<div>
<span title="X3D is the top-most XML element for an Extensible 3D (X3D) Graphics file"><<span class="element">X3D</span> <span title="X3D Immersive Profile supports most nodes, similar to VRML97"><span class="attribute">profile</span>='<span class="value">Immersive</span>'</span> <span class="attribute">version</span>='<span class="value">3.2</span>' <span title="XML namespace for X3D Graphics schema validation"><span title="XML namespace for XML Schema validation">
<span class="attribute">xmlns:xsd</span>='<a href="http://www.w3.org/2001/XMLSchema-instance" target="_blank">http://www.w3.org/2001/XMLSchema-instance</a>'
</span>
<span title="XML namespace for X3D Graphics schema validation">
<span class="attribute">xsd:noNamespaceSchemaLocation</span>
</span>='
<a href="http://www.web3d.org/specifications/x3d-3.2.xsd">http://www.web3d.org/specifications/x3d-3.2.xsd</a>
'</span>>
</span><div class="indent">
<span title="head can contain component, unit, and author-defined metadata (meta) tags"><<span class="element">head</span>>
</span><div class="indent">
<span title="X3D component name and level indicate any additional scene functionality needed above the given X3D profile"><<span class="element">component</span> <span class="attribute">level</span>='<span class="value">1</span>' <span class="attribute">name</span>='<span class="value">Shaders</span>'/>
</span><br />
<span title="meta 'title' provides file name for this resource"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">title</span>' <span class="attribute">content</span>='<a href="SimpleShader.x3d">SimpleShader.x3d</a>'/>
</span><br />
<span title="meta 'description' provides summary overview describing this resource"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">description</span>' <span class="attribute">content</span>='<span class="plain">Simple shader example</span>'/>
</span><br />
<span title="meta 'creator' provides name of original author"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">creator</span>' <span class="attribute">content</span>='<span class="value">John Stewart</span>'/>
</span><br />
<span title="meta 'translator' provides name of person performing translation from another format or language"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">translator</span>' <span class="attribute">content</span>='<span class="value">Holger Seelig, John Carlson, Don Brutzman and Jeff Malnick</span>'/>
</span><br />
<span title="meta 'created' provides date of initial version"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">created</span>' <span class="attribute">content</span>='<span class="value">26 May 2009</span>'/>
</span><br />
<span title="meta 'translated' provides date of translation from another format or language"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">translated</span>' <span class="attribute">content</span>='<span class="value">15 October 2009</span>'/>
</span><br />
<span title="meta 'modified' provides date of modified version"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">modified</span>' <span class="attribute">content</span>='<span class="value">24 April 2017</span>'/>
</span><br />
<span title="meta 'reference' provides name or reference link to a supporting resource"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">reference</span>' <span class="attribute">content</span>='
<a href="http://www.opengl.org/wiki/Fragment_Shader">http://www.opengl.org/wiki/Fragment_Shader</a>
'/>
</span><br />
<span title="meta 'reference' provides name or reference link to a supporting resource"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">reference</span>' <span class="attribute">content</span>='
<a href="http://www.opengl.org/wiki/http://www.opengl.org/wiki/Vertex_Shader">http://www.opengl.org/wiki/http://www.opengl.org/wiki/Vertex_Shader</a>
'/>
</span><br />
<span title="meta 'reference' provides name or reference link to a supporting resource"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">reference</span>' <span class="attribute">content</span>='
<a href="http://www.web3d.org/x3d/wiki/index.php/X3D_Plugfest">http://www.web3d.org/x3d/wiki/index.php/X3D_Plugfest</a>
'/>
</span><br />
<span title="meta 'subject' provides search-index subject keywords, key phrases, or classification codes"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">subject</span>' <span class="attribute">content</span>='<span class="value">X3D shader example</span>'/>
</span><br />
<span title="meta 'reference' provides name or reference link to a supporting resource"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">reference</span>' <span class="attribute">content</span>='<a href="originals/simpleShader.x3dv">originals/simpleShader.x3dv</a>'/>
</span><br />
<span title="meta 'reference' provides name or reference link to a supporting resource"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">reference</span>' <span class="attribute">content</span>='<a href="ShaderTutorialInstantReality.pdf">ShaderTutorialInstantReality.pdf</a>'/>
</span><br />
<span title="meta 'generator' provides name of authoring tool or translation tool producing this scene"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">generator</span>' <span class="attribute">content</span>='<span class="value">Titania V3.0.3, </span>
<a href="http://titania.create3000.de" target="_blank">http://titania.create3000.de</a>'/>
</span><br />
<span title="author-defined metadata"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">comment</span>' <span class="attribute">content</span>='<span class="value">World of Titania</span>'/>
</span><br />
<span title="author-defined metadata"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">outputStyle</span>' <span class="attribute">content</span>='<span class="value">nicest</span>'/>
</span><br />
<span title="meta 'warning' provides warning information about a known problem that impedes proper operation"><<span class="element">meta</span> <span class="attribute">name</span>='<b class="warning"> warning </b>' <span class="attribute">content</span>='<b class="warning"> under development </b>'/>
</span><br />
<span title="meta 'generator' provides name of authoring tool or translation tool producing this scene"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">generator</span>' <span class="attribute">content</span>='<span class="value">X3D-Edit 3.3, </span>
<a href="https://savage.nps.edu/X3D-Edit" target="_blank">https://savage.nps.edu/X3D-Edit</a>'/>
</span><br />
<span title="meta 'identifier' provides the unique Uniform Resource Identifier (URI) or url address for this resource"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">identifier</span>' <span class="attribute">content</span>='
<a href="http://www.web3d.org/x3d/content/examples/Basic/Shaders/SimpleShader.x3d">http://www.web3d.org/x3d/content/examples/Basic/Shaders/SimpleShader.x3d</a>
'/>
</span><br />
<span title="meta 'license' provides software license link or information"><<span class="element">meta</span> <span class="attribute">name</span>='<span class="value">license</span>' <span class="attribute">content</span>='
<a href="../../license.html">../../license.html</a>'/>
</span></div><span title="head can contain component, unit, and author-defined metadata (meta) tags"></<span class="element">head</span>>
</span><br /><span style="color:white">
<!--
</span>
<div class="center">
<hr style="width:100%"/>
<b>
<i>Index for ProtoDeclare definition</i>
</b>:
<a title="go to this declaration"
href="#ProtoDeclare_myPrototype"
class="prototype">myPrototype</a>
<br /><hr width="50%"/>
<b>
<i>Index for DEF nodes</i>
</b>:
<a title="go to this ShaderPart node" href="#_1" class="idName">_1</a>,
<a title="go to this MetadataDouble node"
href="#centerOfRotation"
class="idName">centerOfRotation</a>,
<a title="go to this ComposedShader node"
href="#Cobweb"
class="idName">Cobweb</a>,
<a title="go to this MetadataSet node"
href="#NavigationInfo"
class="idName">NavigationInfo</a>,
<a title="go to this MetadataSet node" href="#nodes" class="idName">nodes</a>,
<a title="go to this MetadataDouble node"
href="#orientation"
class="idName">orientation</a>,
<a title="go to this MetadataDouble node"
href="#position"
class="idName">position</a>,
<a title="go to this MetadataSet node"
href="#Selection"
class="idName">Selection</a>,
<a title="go to this MetadataSet node" href="#Titania" class="idName">Titania</a>,
<a title="go to this Transform node" href="#TR" class="idName">TR</a>,
<a title="go to this MetadataString node" href="#type" class="idName">type</a>,
<a title="go to this MetadataSet node"
href="#Viewpoint"
class="idName">Viewpoint</a>
<hr style="width:100%"/>
</div>
<span style="color:white">
-->
</span><br />
<span title="Scene is the root node that contains an X3D scene graph"><<span class="element">Scene</span>>
</span><div class="indent">
<a name="ProtoDeclare_myPrototype"> </a>
<span title="ProtoDeclare is a Prototype declaration, defining a new node made up of other node(s)" style="background-color:#FFEEFF"><<span class="prototype">ProtoDeclare</span> <span class="attribute">name</span>='<span class="prototype">myPrototype</span>'>
</span><div class="indent">
<span title="ProtoInterface is first statement inside a ProtoDeclare statement and holds field definitions" style="background-color:#FFEEFF"><<span class="prototype">ProtoInterface</span>>
</span><div class="indent">
<a name="myPrototypeProtoField_myInputRange"> </a>
<span title="A field element defines an interface attribute or node" style="background-color:#FFEEFF"><<span class="prototype">field</span> <span class="attribute">name</span>='<span class="prototype">myInputRange</span>' <span class="attribute">type</span>='<span class="value">SFVec3f</span>' <span class="attribute">value</span>='<span class="value">0.95 0.44 0.22</span>' <span class="attribute">accessType</span>='<span class="value">initializeOnly</span>'/>
</span></div><span title="ProtoInterface is first statement inside a ProtoDeclare statement and holds field definitions" style="background-color:#FFEEFF"></<span class="prototype">ProtoInterface</span>>
</span><br />
<span title="Initial scene node in ProtoDeclare/ProtoBody statement determines this prototype's node type" style="background-color:#FFEEFF"><<span class="prototype">ProtoBody</span>>
</span><div class="indent">
<a name="TR"> </a>
<span title="Transform translates, orients and scales child geometry within the local world coordinate system"><<span class="element">Transform</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">TR</span>'>
</span><div class="indent">
<span title="Shape contains geometry and optional corresponding Appearance"><<span class="element">Shape</span>>
</span><div class="indent">
<span title="Appearance specifies visual properties of geometry by containing Material, texture and TextureTransform nodes"><<span class="element">Appearance</span>>
</span><div class="indent">
<span title="Material specifies surface rendering properties for associated geometry"><<span class="element">Material</span> <span class="attribute">diffuseColor</span>='<span class="value">0.5 0.5 0.9</span>'/>
</span><br />
<<span class="element">ComposedShader</span> <span class="attribute">language</span>='<span class="value">GLSL</span>' <span class="attribute">containerField</span>='<span class="value">shaders</span>'>
<div class="indent">
<span title="A field element defines an interface attribute or node"><<span class="prototype">field</span> <span class="attribute">name</span>='<span class="prototype">decis</span>' <span class="attribute">type</span>='<span class="value">SFVec3f</span>' <span class="attribute">accessType</span>='<span class="value">initializeOnly</span>'/>
</span><br />
<span title="IS connects ProtoDeclare interface fields to node fields inside ProtoDeclare definitions" style="background-color:#FFEEFF"><<span class="element">IS</span>>
</span><div class="indent">
<span title="connect tags define each ProtoDeclare field connection within ProtoDeclare definitions" style="background-color:#FFEEFF"><<span class="element">connect</span> <span class="attribute">nodeField</span>='<span class="prototype"
title="connect interface events to this field in given node">decis</span>' <span class="attribute">protoField</span>='<span title="field interface connecting events into the prototype interior"><span class="prototype"><a title="go to the protoField definition"
href="#myPrototypeProtoField_myInputRange"
class="prototype">myInputRange</a></span></span>'/>
</span></div><span title="IS connects ProtoDeclare interface fields to node fields inside ProtoDeclare definitions" style="background-color:#FFEEFF"></<span class="element">IS</span>>
</span><br />
<<span class="element">ShaderPart</span> <span class="attribute">type</span>='<span class="value">VERTEX</span>' <span class="attribute">containerField</span>='<span class="value">parts</span>'>
<div class="indent"><br />
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
<code>
<b><![CDATA[</b>
</code>
<pre>
# toon.vs
# http://www.web3d.org/x3d/content/examples/Basic/Shaders/toon.vs
// the vertex shader is small enough we can uri it here
// but the link also contains a 'toon.vs' for those interested
varying vec3 normal;
void main()
{
normal=gl_NormalMatrix*gl_Normal;
gl_Position=ftransform();
}
</pre>
<code>
<b>]]></b>
</code>
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
</div></<span class="element">ShaderPart</span>>
<br />
<<span class="element">ShaderPart</span> <span class="attribute">type</span>='<span class="value">FRAGMENT</span>' <span class="attribute">containerField</span>='<span class="value">parts</span>'>
<div class="indent"><br />
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
<code>
<b><![CDATA[</b>
</code>
<pre>
# toon.fs
# http://www.web3d.org/x3d/content/examples/Basic/Shaders/toon.fs
varying vec3 normal;
uniform vec3 decis;
void main()
{
float intensity;
vec4 color;
vec3 n = normalize(normal);
intensity = dot(vec3(gl_LightSource[0].position),n);
if (intensity > decis[0])
color = vec4(0.0,0.5,0.5,1.0);
else if (intensity > decis[1])
color = vec4(0.6,0.3,0.3,1.0);
else if (intensity > decis[2])
color = vec4(1.0,0.2,0.2,1.0);
else
color = vec4(0.0,0.4,0.0,1.0);
gl_FragColor = color;
}
</pre>
<code>
<b>]]></b>
</code>
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
</div></<span class="element">ShaderPart</span>>
</div></<span class="element">ComposedShader</span>>
<br />
<a name="Cobweb"> </a>
<<span class="element">ComposedShader</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">Cobweb</span>' <span class="attribute">language</span>='<span class="value">GLSL</span>' <span class="attribute">containerField</span>='<span class="value">shaders</span>'>
<div class="indent">
<span title="A field element defines an interface attribute or node"><<span class="prototype">field</span> <span class="attribute">name</span>='<span class="prototype">decis</span>' <span class="attribute">type</span>='<span class="value">SFVec3f</span>' <span class="attribute">value</span>='<span class="value">0.95 0.77 0.44</span>' <span class="attribute">accessType</span>='<span class="value">initializeOnly</span>'/>
</span><br />
<<span class="element">ShaderPart</span> <span class="attribute">type</span>='<span class="value">VERTEX</span>' <span class="attribute">containerField</span>='<span class="value">parts</span>'>
<div class="indent"><br />
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
<code>
<b><![CDATA[</b>
</code>
<pre>
data:text/plain;charset=utf-8,
precision mediump float;
uniform mat4 x3d_ProjectionMatrix;
uniform mat4 x3d_ModelViewMatrix;
uniform mat3 x3d_NormalMatrix;
attribute vec4 x3d_Vertex;
attribute vec3 x3d_Normal;
varying vec3 normal;
void main()
{
normal = x3d_NormalMatrix * x3d_Normal;
gl_Position = x3d_ProjectionMatrix * x3d_ModelViewMatrix * x3d_Vertex;
}
</pre>
<code>
<b>]]></b>
</code>
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
</div></<span class="element">ShaderPart</span>>
<br />
<a name="_1"> </a>
<<span class="element">ShaderPart</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">_1</span>' <span class="attribute">type</span>='<span class="value">FRAGMENT</span>' <span class="attribute">containerField</span>='<span class="value">parts</span>'>
<div class="indent"><br />
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
</div class="indent">
<code>
<b><![CDATA[</b>
</code>
<pre>
data:text/plain;charset=utf-8,
precision mediump float;
uniform vec3 x3d_LightDirection [x3d_MaxLights];
varying vec3 normal;
uniform vec3 decis;
void main()
{
float intensity;
vec4 color;
vec3 n = normalize (normal);
intensity = abs (dot (x3d_LightDirection [0], n));
if (intensity > decis[0])
color = vec4(0.0,0.5,0.5,1.0);
else if (intensity > decis[1])
color = vec4(0.6,0.3,0.3,1.0);
else if (intensity > decis[2])
color = vec4(1.0,0.2,0.2,1.0);
else
color = vec4(0.0,0.4,0.0,1.0);
gl_FragColor = color;
}
</pre>
<code>
<b>]]></b>
</code>
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
<div class="indent">
</div></<span class="element">ShaderPart</span>>
</div></<span class="element">ComposedShader</span>>
</div><span title="Appearance specifies visual properties of geometry by containing Material, texture and TextureTransform nodes"></<span class="element">Appearance</span>>
</span><br />
<span title="Sphere is a geometry primitive node"><<span class="element">Sphere</span> <span class="attribute">radius</span>='<span class="value">1.75</span>'/>
</span></div><span title="Shape contains geometry and optional corresponding Appearance"></<span class="element">Shape</span>>
</span></div><span title="Transform translates, orients and scales child geometry within the local world coordinate system"></<span class="element">Transform</span>>
</span></div><span title="Initial scene node in ProtoDeclare/ProtoBody statement determines this prototype's node type" style="background-color:#FFEEFF"></<span class="prototype">ProtoBody</span>>
</span></div><span title="ProtoDeclare is a Prototype declaration, defining a new node made up of other node(s)" style="background-color:#FFEEFF"></<span class="prototype">ProtoDeclare</span>>
</span><br />
<span title="WorldInfo contains persistent documentation information about the 3D world"><<span class="element">WorldInfo</span> <span class="attribute">title</span>='<span class="value">SimpleShader</span>'>
</span><div class="indent">
<a name="Titania"> </a>
<<span class="element">MetadataSet</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">Titania</span>' <span class="attribute">name</span>='<span class="value">Titania</span>' <span class="attribute">reference</span>='
<a href="http://titania.create3000.de">http://titania.create3000.de</a>
' <span class="attribute">containerField</span>='<span class="value">metadata</span>'>
<div class="indent">
<a name="Selection"> </a>
<<span class="element">MetadataSet</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">Selection</span>' <span class="attribute">containerField</span>='<span class="value">value</span>' <span class="attribute">name</span>='<span class="value">Selection</span>' <span class="attribute">reference</span>='
<a href="http://titania.create3000.de">http://titania.create3000.de</a>
'>
<div class="indent">
<a name="nodes"> </a>
<<span class="element">MetadataSet</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">nodes</span>' <span class="attribute">containerField</span>='<span class="value">value</span>' <span class="attribute">name</span>='<span class="value">nodes</span>' <span class="attribute">reference</span>='
<a href="http://titania.create3000.de">http://titania.create3000.de</a>
'>
<div class="indent">
<span title="XML comment"><!-- NULL --></span>
</div></<span class="element">MetadataSet</span>>
</div></<span class="element">MetadataSet</span>>
<br />
<a name="NavigationInfo"> </a>
<<span class="element">MetadataSet</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">NavigationInfo</span>' <span class="attribute">containerField</span>='<span class="value">value</span>' <span class="attribute">name</span>='<span class="value">NavigationInfo</span>' <span class="attribute">reference</span>='
<a href="http://titania.create3000.de">http://titania.create3000.de</a>
'>
<div class="indent">
<a name="type"> </a>
<<span class="element">MetadataString</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">type</span>' <span class="attribute">containerField</span>='<span class="value">value</span>' <span class="attribute">name</span>='<span class="value">type</span>' <span class="attribute">reference</span>='
<a href="http://titania.create3000.de">http://titania.create3000.de</a>
' <span class="attribute">value</span>='<span class="value">"EXAMINE"</span>'/>
</div></<span class="element">MetadataSet</span>>
<br />
<a name="Viewpoint"> </a>
<<span class="element">MetadataSet</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">Viewpoint</span>' <span class="attribute">containerField</span>='<span class="value">value</span>' <span class="attribute">name</span>='<span class="value">Viewpoint</span>' <span class="attribute">reference</span>='
<a href="http://titania.create3000.de">http://titania.create3000.de</a>
'>
<div class="indent">
<a name="position"> </a>
<<span class="element">MetadataDouble</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">position</span>' <span class="attribute">containerField</span>='<span class="value">value</span>' <span class="attribute">name</span>='<span class="value">position</span>' <span class="attribute">reference</span>='
<a href="http://titania.create3000.de">http://titania.create3000.de</a>
' <span class="attribute">value</span>='<span class="value">6.24067728185014 0.00250837343276661 2.92117542307615</span>'/>
<br />
<a name="orientation"> </a>
<<span class="element">MetadataDouble</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">orientation</span>' <span class="attribute">containerField</span>='<span class="value">value</span>' <span class="attribute">name</span>='<span class="value">orientation</span>' <span class="attribute">reference</span>='
<a href="http://titania.create3000.de">http://titania.create3000.de</a>
' <span class="attribute">value</span>='<span class="value">-0.110173424710488 0.990158061907379 -0.0863065984000336 1.21146676119191</span>'/>
<br />
<a name="centerOfRotation"> </a>
<<span class="element">MetadataDouble</span> <span class="attribute">DEF</span>='<span class="idName" title="DEF name is a unique ID for a given node">centerOfRotation</span>' <span class="attribute">containerField</span>='<span class="value">value</span>' <span class="attribute">name</span>='<span class="value">centerOfRotation</span>' <span class="attribute">reference</span>='
<a href="http://titania.create3000.de">http://titania.create3000.de</a>
' <span class="attribute">value</span>='<span class="value">-0.808320198626341 -0.358072370409949 0.22817191560906</span>'/>
</div></<span class="element">MetadataSet</span>>
</div></<span class="element">MetadataSet</span>>
</div><span title="WorldInfo contains persistent documentation information about the 3D world"></<span class="element">WorldInfo</span>>
</span><br />
<span title="ProtoInstance creates an instance of a locally or externally declared prototype node" style="background-color:#FFEEFF"><<span class="prototype">ProtoInstance</span> <span class="attribute">name</span>='<a title="go to the defining ProtoDeclare for this prototype instance"
href="#ProtoDeclare_myPrototype"
class="prototype">myPrototype</a>'/>
</span></div><span title="Scene is the root node that contains an X3D scene graph"></<span class="element">Scene</span>>
</span></div><span title="X3D is the top-most XML element for an Extensible 3D (X3D) Graphics file"></<span class="element">X3D</span>>
</span><br /><span style="color:white">
<!--
</span>
<div class="center">
<hr style="width:100%"/>
<b>
<i>Index for ProtoDeclare definition</i>
</b>:
<a title="go to this declaration"
href="#ProtoDeclare_myPrototype"
class="prototype">myPrototype</a>
<br /><hr width="50%"/>
<b>
<i>Index for DEF nodes</i>
</b>:
<a title="go to this ShaderPart node" href="#_1" class="idName">_1</a>,
<a title="go to this MetadataDouble node"
href="#centerOfRotation"
class="idName">centerOfRotation</a>,
<a title="go to this ComposedShader node"
href="#Cobweb"
class="idName">Cobweb</a>,
<a title="go to this MetadataSet node"
href="#NavigationInfo"
class="idName">NavigationInfo</a>,
<a title="go to this MetadataSet node" href="#nodes" class="idName">nodes</a>,
<a title="go to this MetadataDouble node"
href="#orientation"
class="idName">orientation</a>,
<a title="go to this MetadataDouble node"
href="#position"
class="idName">position</a>,
<a title="go to this MetadataSet node"
href="#Selection"
class="idName">Selection</a>,
<a title="go to this MetadataSet node" href="#Titania" class="idName">Titania</a>,
<a title="go to this Transform node" href="#TR" class="idName">TR</a>,
<a title="go to this MetadataString node" href="#type" class="idName">type</a>,
<a title="go to this MetadataSet node"
href="#Viewpoint"
class="idName">Viewpoint</a>
<hr style="width:100%"/>
</div>
<span style="color:white">
-->
</span>
</div>
<p style="text-align:center;">
<span style="color:white"><!--</span>
Color key: <!--(matching X3D and XML terminology) -->
<<span class="element">X3dNode</span>
<span class="idName"> DEF</span>='<span class="idName">idName</span>' <span class="attribute">field</span>='<span class="value">value</span>'/>
matches
<<span class="element">XmlElement</span>
<span class="idName"> DEF</span>='<span class="idName">idName</span>' <span class="attribute">attribute</span>='<span class="value">value</span>'/> <br/>
<span title="behavior node" style="background-color:#DDEEFF;">(Light blue background: behavior node)</span> <span title="inserted documentation about ROUTE connections" style="background-color:#EEEEEE;">(Grey background: inserted documentation)</span> <span title="X3D Extensibility" style="background-color:#FFEEFF;">(Magenta background: X3D Extensibility)</span><br/>
<<span class="prototype">Prototype</span>
<span class="attribute">name</span>='<span class="prototype">ProtoName</span>'>
<<span class="prototype">field</span>
<span class="attribute">name</span>='<span class="prototype">fieldName</span>'/> </<span class="prototype">Prototype</span>>
<span style="color:white"> --></span>
</p>
<p style="text-align:center; background-color:white">
<span style="color:white"><!--</span>
Additional help information about X3D scenes:
<a href="http://www.web3d.org/x3d/content/examples/X3dResources.html"
title="Numerous resources that support X3D graphics">X3D Resources</a>,
<a href="http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html"
title="Style guidelines, authoring tips and best practices">X3D Scene Authoring Hints</a>
and
<a href="http://www.web3d.org/x3d/content/X3dTooltips.html"
title="Summary descriptions and authoring hints for each X3D node (element) and field (attribute)">X3D Tooltips</a>
<span style="color:white">--></span>
</p>
</body>
</html>