<table border="0" width="100%">
<tbody>
<tr>
<td align="left">
<p>
Prototypes are an extension mechanism that lets authors define their own customizable nodes,
improving reusability and sharing of cool content.
</p>
<p>
By declaring prototype designs and then creating one or more instances, you can create new node types that encapsulate
Shapes, Sensors, Interpolators, Scripts and anything else.
This technique creates new high-level nodes such as robots, menus, new shapes, etc.
A PROTO statement declares a new node type (a prototype) with
a name (the new node type name) along with fields and events (the interfaces to the prototype).
Once defined, a prototyped node can be used like any other node.
</p>
<p>
These X3D scenes are adapted directly from the
<a href="http://www.wiley.com/legacy/compbooks/vrml2sbk/toc/ch31.htm" target="_Vrml2Sourcebook">original VRML 2.0 Sourcebook chapter examples</a>.
Also available:
<a href="http://www.sdsc.edu/~moreland/courses/Siggraph98/vrml97/slides/mt0471.htm" target="_Vrml2SourcebookCourse">Introduction to VRML97 SIGGRAPH98 course notes</a>.
</p>
</td>
<td align="center" rowspan="2">
<a href="index.html"><img border="0" alt="Figure 31.9 Spin Group Prototype" title="Figure 31.9 Spin Group Prototype" hspace="10"
src="_viewpoints/Figure31_9SpinGroupPrototype.x3d._VP_Click_on_blue_crossbar_to_activate_second_SpinGroup.png" width="156" height="89" align="middle"/></a>
</td>
</tr>
</tbody>
</table>