Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > bad97183153701b09df5fae1052b1c30 > files > 4220

crystalspace-doc-1.2.1-5mdv2010.0.i586.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html401/loose.dtd">
<html>
<!-- Created by texi2html 1.76 -->
<!--
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
            Karl Berry  <karl@freefriends.org>
            Olaf Bachmann <obachman@mathematik.uni-kl.de>
            and many others.
Maintained by: Many creative people <dev@texi2html.cvshome.org>
Send bugs and suggestions to <users@texi2html.cvshome.org>

-->
<head>
<title>Crystal Space 1.2.1: 4.16.4.2 Syntax</title>

<meta name="description" content="Crystal Space 1.2.1: 4.16.4.2 Syntax">
<meta name="keywords" content="Crystal Space 1.2.1: 4.16.4.2 Syntax">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="texi2html 1.76">
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
pre.display {font-family: serif}
pre.format {font-family: serif}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: serif; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: serif; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.sansserif {font-family:sans-serif; font-weight:normal;}
ul.toc {list-style: none}
-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">

<a name="Map-File-Syntax"></a>
<a name="0"></a>
<table cellpadding="1" cellspacing="1" border="0">
<tr><td valign="middle" align="left">[<a href="Map-File-Grammar.html#0" title="Previous section in reading order"> &lt; </a>]</td>
<td valign="middle" align="left">[<a href="Map-File-Hints.html#0" title="Next section in reading order"> &gt; </a>]</td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left">[<a href="Using-Crystal-Space.html#0" title="Beginning of this chapter or previous chapter"> &lt;&lt; </a>]</td>
<td valign="middle" align="left">[<a href="Old-Map-File-Format.html#0" title="Up section"> Up </a>]</td>
<td valign="middle" align="left">[<a href="Working-with-Engine-Content.html#0" title="Next chapter"> &gt;&gt; </a>]</td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left">[<a href="index.html#SEC_Top" title="Cover (top) of document">Top</a>]</td>
<td valign="middle" align="left">[<a href="cs_toc.html#SEC_Contents" title="Table of contents">Contents</a>]</td>
<td valign="middle" align="left">[<a href="cs_Index.html#0" title="Index">Index</a>]</td>
<td valign="middle" align="left">[<a href="cs_abt.html#SEC_About" title="About (help)"> ? </a>]</td>
</tr></table>
<hr size="1">
<h4 class="subsubsection"> 4.16.4.2 Syntax </h4>


<p><em>Written by numerous Crystal Space developers.  Extensive Texinfo
typesetting performed by Eric Sunshine, <a href="mailto:sunshine@sunshineco.com">sunshine@sunshineco.com</a>.</em>
</p>
<a name="1"></a>
<h4 class="subsubheading"> Basic Syntax Elements </h4>


<p><em>number</em>
</p>
<p>A general number.
</p>

<p><em>pos-number</em>
</p>
<p>A general positive number.
</p>

<p><em>integer</em>
</p>
<p>A general integer.
</p>

<p><em>pos-integer</em>
</p>
<p>A positive integer (&gt; 0).
</p>

<p><em>number..number</em>
</p>
<p>A numeric range. For example, `0..1' represents a number between 0 and 1.
</p>

<p><em>name</em>
</p>
<p>A name identifier.  An unquoted string provided that it contains no
punctuation or whitespace; otherwise delimited by double quotes.
</p>

<p><em>string</em>
</p>
<p>A string delimited by double quotes. Special characters are escaped with a
backslash.
</p>
<a name="2"></a>
<h4 class="subsubheading"> Number List </h4>

<p><em>number-list</em> =&gt; <em>number</em> [ `<code>,</code>' <em>number</em> ] <small class="dots">...</small>
</p>
<a name="3"></a>
<h4 class="subsubheading"> Boolean Value </h4>

<p><em>yes</em> =&gt; `<code>yes</code>' | `<code>true</code>' | `<code>on</code>' | `<code>1</code>'<br>

<em>no</em> =&gt; `<code>no</code>' | `<code>false</code>' | `<code>off</code>' | `<code></code>'<br>

<em>yes-no</em> =&gt; <em>yes</em> | <em>no</em>
</p>
<a name="4"></a>
<h4 class="subsubheading"> Color Description </h4>

<p><em>red</em> =&gt; 0..1<br>

<em>green</em> =&gt; 0..1<br>

<em>blue</em> =&gt; 0..1<br>

<em>gray</em> =&gt; 0..1<br>

<em>color-grayscale</em> =&gt; <em>gray</em><br>

<em>color-general</em> =&gt; <em>red</em> `<code>,</code>' <em>green</em> `<code>,</code>' <em>blue</em><br>

<em>color</em> =&gt; <em>color-grayscale</em> | <em>color-general</em>
</p>
<a name="5"></a>
<h4 class="subsubheading"> Vectors and Coordinates </h4>

<p>Note that the x-axis points to the right, the y-axis points up, and the z-axis
points forward.
</p>

<p><em>x</em> =&gt; <em>number</em><br>

<em>y</em> =&gt; <em>number</em><br>

<em>z</em> =&gt; <em>number</em><br>

<em>u</em> =&gt; <em>number</em><br>

<em>v</em> =&gt; <em>number</em><br>

<em>vector-2d</em> =&gt; <em>x</em> `<code>,</code>' <em>z</em><br>

<em>vector-3d</em> =&gt; <em>x</em> `<code>,</code>' <em>y</em> `<code>,</code>' <em>z</em><br>

<em>vector-4d</em> =&gt; <em>x</em> `<code>,</code>' <em>y</em> `<code>,</code>'
    <em>z</em> `<code>,</code>' <em>r</em> <br>

<em>vertex-idx</em> =&gt; <em>integer</em><br>

<em>coordinate</em> =&gt; <em>vector-3d</em><br>

<em>coordinate-2d</em> =&gt; <em>vector-2d</em><br>

<em>texture-coordinate</em> =&gt; <em>u</em> `<code>,</code>' <em>v</em>
</p>
<a name="6"></a>
<h4 class="subsubheading"> Object Names </h4>


<p><em>sector-name</em> =&gt; <em>name</em><br>

<em>light-name</em> =&gt; <em>name</em><br>

<em>col-name</em> =&gt; <em>name</em><br>

<em>texture-name</em> =&gt; <em>name</em><br>

<em>material-name</em> =&gt; <em>name</em><br>

<em>mesh-name</em> =&gt; <em>name</em><br>

<em>meshfact-name</em> =&gt; <em>name</em><br>

<em>library-name</em> =&gt; <em>name</em><br>

<em>file-name</em> =&gt; <em>name</em><br>

<em>plugin-name</em> =&gt; <em>name</em><br>

<em>plugin-shortname</em> =&gt; <em>name</em><br>

<em>cache-name</em> =&gt; <em>name</em><br>

<em>priority-name</em> =&gt; <em>name</em>
</p>
<a name="7"></a>
<h4 class="subsubheading"> Attributes and Numbers </h4>

<p><em>radius</em> =&gt; <em>pos-number</em><br>

<em>angle</em> =&gt; <em>number</em><br>

<em>keyname</em> =&gt; <em>string</em><br>

<em>keyvalue</em> =&gt; <em>string</em>
</p>
<a name="8"></a>
<h4 class="subsubheading"> Visibility Culling </h4>
<p>Sidenote: the <samp>&lsquo;CULLER&rsquo;</samp> statement is going to be obsolete in the future.
</p>

<p><em>culler</em> =&gt; `<code>CULLER</code>' `<code>(</code>' <em>mesh-name</em> `<code>)</code>'

<em>cullerp</em> =&gt; `<code>CULLERP</code>' `<code>(</code>' <em>plugin-name</em> `<code>)</code>'
</p>
<a name="9"></a>
<h4 class="subsubheading"> Key </h4>
<p>Use the <samp>&lsquo;KEY&rsquo;</samp> feature to attach arbitrary game data to any Crystal
Space object. Crystal Space will only store these key/value pairs with
objects but doesn't otherwise use them. You can iterate over these
keys in the code.
</p>

<p><em>key</em> =&gt; `<code>KEY</code>' `<code>(</code>' <em>keyname</em> `<code>,</code>' <em>keyvalue</em> `<code>)</code>'
</p>
<a name="10"></a>
<h4 class="subsubheading"> Fog </h4>

<p><em>density</em> =&gt; <em>number</em><br>

<em>fog-desc</em> =&gt; `<code>FOG</code>' `<code>(</code>' <em>color</em> `<code>,</code>' <em>density</em> `<code>)</code>'<br>

<em>alpha-nr</em> =&gt; `<code></code>' | `<code>25</code>' | `<code>50</code>' | `<code>75</code>'<br>

<em>alpha</em> =&gt; `<code>ALPHA</code>' `<code>(</code>' <em>alpha-nr</em> `<code>)</code>'
</p>
<a name="11"></a>
<h4 class="subsubheading"> Matrices, Vectors, Scalers, and Angles </h4>

<p><em>vector</em> =&gt; `<code>V</code>' `<code>(</code>' <em>vector-3d</em> `<code>)</code>'<br>

<em>matrix-scaler</em> =&gt; <em>number</em><br>

<em>matrix-x-scaler</em> =&gt; <em>matrix-scaler</em><br>

<em>matrix-y-scaler</em> =&gt; <em>matrix-scaler</em><br>

<em>matrix-z-scaler</em> =&gt; <em>matrix-scaler</em><br>

<em>stated-matrix-x-scaler</em> =&gt; `<code>SCALE_X</code>' `<code>(</code>' <em>matrix-x-scaler</em> `<code>)</code>'<br>

<em>stated-matrix-y-scaler</em> =&gt; `<code>SCALE_Y</code>' `<code>(</code>' <em>matrix-y-scaler</em> `<code>)</code>'<br>

<em>stated-matrix-z-scaler</em> =&gt; `<code>SCALE_Z</code>' `<code>(</code>' <em>matrix-z-scaler</em> `<code>)</code>'<br>

<em>complex-matrix-scaler</em> =&gt; <em>stated-matrix-x-scaler</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>stated-matrix-y-scaler</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>stated-matrix-z-scaler</em><br>

<em>full-matrix-scaler</em> =&gt; <em>matrix-x-scaler</em> `<code>,</code>'
    <em>matrix-y-scaler</em> `<code>,</code>' <em>matrix-z-scaler</em><br>

<em>uniform-matrix-scaler</em> =&gt; <em>matrix-scaler</em><br>

<em>simple-matrix-scaler</em> =&gt; `<code>SCALE</code>' `<code>(</code>'
    <em>uniform-matrix-scaler</em> | <em>full-matrix-scaler</em> `<code>)</code>'<br>

<em>compound-matrix-scaler</em> =&gt; <em>simple-matrix-scaler</em> | <em>complex-matrix-scaler</em>
</p>

<p><em>rotation-x-angle</em> =&gt; <em>angle</em><br>

<em>rotation-y-angle</em> =&gt; <em>angle</em><br>

<em>rotation-z-angle</em> =&gt; <em>angle</em><br>

<em>rotation-x-matrix</em> =&gt; `<code>ROT_X</code>' `<code>(</code>' <em>rotation-x-angle</em> `<code>)</code>'<br>

<em>rotation-y-matrix</em> =&gt; `<code>ROT_Y</code>' `<code>(</code>' <em>rotation-y-angle</em> `<code>)</code>'<br>

<em>rotation-z-matrix</em> =&gt; `<code>ROT_Z</code>' `<code>(</code>' <em>rotation-z-angle</em> `<code>)</code>'<br>

<em>complex-rotation-matrix</em> =&gt; <em>rotation-x-matrix</em> |
    <em>rotation-y-matrix</em> | <em>rotation-z-matrix</em><br>

<em>rotation-angles</em> =&gt; <em>rotation-x-angle</em> `<code>,</code>'
    <em>rotation-y-angle</em> `<code>,</code>' <em>rotation-z-angle</em><br>

<em>simple-rotation-matrix</em> =&gt; `<code>ROT</code>' `<code>(</code>' <em>rotation-angles</em> `<code>)</code>'
</p>

<p><em>rotation-matrix</em> =&gt; <em>simple-rotation-matrix</em> | <em>complex-rotation-matrix</em><br>

<em>complex-matrix</em> =&gt; <em>rotation-matrix</em> | <em>compound-matrix-scaler</em><br>

<em>simple-scaled-matrix</em> =&gt; <em>uniform-matrix-scaler</em><br>

<em>normal-matrix</em> =&gt; <em>vector-3d</em> `<code>,</code>' <em>vector-3d</em>
    `<code>,</code>' <em>vector-3d</em><br>

<em>identity-matrix</em> =&gt; `<code>IDENTITY</code>'<br>

<em>matrix-type</em> =&gt; <em>identity-matrix</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>normal-matrix</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>simple-scaled-matrix</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>complex-matrix</em><br>

<em>matrix</em> =&gt; `<code>MATRIX</code>' `<code>(</code>' [ <em>matrix-type</em> <small class="dots">...</small> ] `<code>)</code>'
</p>

<p><em>move-comp</em> =&gt; <em>matrix</em> | <em>vector</em><br>

<em>move</em> =&gt; `<code>MOVE</code>' `<code>(</code>' [ <em>move-comp</em> <small class="dots">...</small> ] `<code>)</code>'<br>

<em>hardmove</em> =&gt; `<code>HARDMOVE</code>' `<code>(</code>' [ <em>move-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="12"></a>
<h4 class="subsubheading"> Lights </h4>
<p>It is recommended to use the new syntax for lights.
</p>

<p><em>dynamic-flag</em> =&gt; `<code></code>' | `<code>1</code>'<br>

<em>light-oldsyntax</em> =&gt; <em>coordinate</em> `<code>:</code>' <em>radius</em>
    `<code>,</code>' <em>color-general</em> `<code>,</code>' <em>dynamic-flag</em>
</p>

<p><em>light-center</em> =&gt; `<code>CENTER</code>' `<code>(</code>' <em>coordinate</em> `<code>)</code>'<br>

<em>light-radius</em> =&gt; `<code>RADIUS</code>' `<code>(</code>' <em>radius</em> `<code>)</code>'<br>

<em>light-color</em> =&gt; `<code>COLOR</code>' `<code>(</code>' <em>color</em> `<code>)</code>'<br>

<em>light-dynamic</em> =&gt; `<code>DYNAMIC</code>' `<code>(</code>' `<code>)</code>'<br>

<em>light-halo</em> =&gt; `<code>HALO</code>' `<code>(</code>' `<code>)</code>'<br>

<em>light-comp</em> =&gt; <em>light-center</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>light-radius</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>light-dynamic</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>light-color</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>light-halo</em><br>

<em>light-newsyntax</em> =&gt; [ <em>light-comp</em> <small class="dots">...</small> ]
</p>

<p><em>light</em> =&gt; `<code>LIGHT</code>' <em>light-name</em>
    `<code>(</code>' <em>light-oldsyntax</em> | <em>light-newsyntax</em> `<code>)</code>'
</p>
<a name="13"></a>
<h4 class="subsubheading"> Collection Objects </h4>
<p>Note that collection objects are NOT hierarchical objects. A collection
object is just one object that represents a group of other objects.
</p>

<p><em>col-mesh</em> =&gt; `<code>MESH</code>' `<code>(</code>' <em>mesh-name</em> `<code>)</code>'<br>

<em>col-collection</em> =&gt; `<code>COLLECTION</code>' `<code>(</code>' <em>col-name</em> `<code>)</code>'<br>

<em>col-light</em> =&gt; `<code>LIGHT</code>' `<code>(</code>' <em>light-name</em> `<code>)</code>'<br>

<em>col-sector</em> =&gt; `<code>SECTOR</code>' `<code>(</code>' <em>sector-name</em> `<code>)</code>'<br>

<em>collection-comp</em> =&gt; <em>col-collection</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>col-light</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>col-sector</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>col-mesh</em><br>

<em>collection</em> =&gt; `<code>COLLECTION</code>' <em>col-name</em>
    `<code>(</code>' [ <em>collection-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="14"></a>
<h4 class="subsubheading"> Materials and Textures </h4>

<p><em>material</em> =&gt; `<code>MATERIAL</code>' `<code>(</code>' <em>material-name</em> `<code>)</code>'<br>

<em>texture</em> =&gt; `<code>TEXTURE</code>' `<code>(</code>' <em>texture-name</em> `<code>)</code>'<br>
</p>
<a name="15"></a>
<h4 class="subsubheading"> Material and Texture Description </h4>

<p><em>transparent</em> =&gt; `<code>TRANSPARENT</code>' `<code>(</code>' <em>color</em> `<code>)</code>'<br>

<em>procedural</em> =&gt; `<code>PROCEDURAL</code>' `<code>(</code>' `<code>)</code>'<br>

<em>tex2d</em> =&gt; `<code>FOR_2D</code>' `<code>(</code>' <em>yes-no</em> `<code>)</code>'<br>

<em>tex3d</em> =&gt; `<code>FOR_3D</code>' `<code>(</code>' <em>yes-no</em> `<code>)</code>'<br>

<em>persistent</em> =&gt; `<code>PERSISTENT</code>' `<code>(</code>' `<code>)</code>'<br>

<em>filter</em> =&gt; `<code>FILTER</code>' `<code>(</code>' <small class="dots">...</small> `<code>)</code>'<br>

<em>mipmap</em> =&gt; `<code>MIPMAP</code>' `<code>(</code>' <em>yes-no</em> `<code>)</code>'<br>

<em>dither</em> =&gt; `<code>DITHER</code>' `<code>(</code>' <em>yes-no</em> `<code>)</code>'<br>

<em>texture-file</em> =&gt; `<code>FILE</code>' `<code>(</code>' <em>file-name</em> `<code>)</code>'
</p>

<p><em>texture-desc-comp</em> =&gt; <em>transparent</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>filter</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mipmap</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>dither</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>file</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>procedural</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>tex2d</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>tex3d</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>persistent</em><br>

<em>texture-desc</em> =&gt; `<code>TEXTURE</code>' <em>texture-name</em>
    `<code>(</code>' [ <em>texture-desc-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>

<p><em>material-desc-comp</em> =&gt; <em>texture</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| `<code>COLOR</code>' `<code>(</code>' <em>color</em> `<code>)</code>'<br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| `<code>DIFFUSE</code>' `<code>(</code>' <em>number</em> `<code>)</code>'<br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| `<code>AMBIENT</code>' `<code>(</code>' <em>number</em> `<code>)</code>'<br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| `<code>REFLECTION</code>' `<code>(</code>' <em>number</em> `<code>)</code>'<br>

<em>material-desc</em> =&gt; `<code>MATERIAL</code>' <em>material-name</em>
    `<code>(</code>' [ <em>material-desc-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="16"></a>
<h4 class="subsubheading"> LOD </h4>

<p><em>lod-level</em> =&gt; `<code>LEVEL</code>' `<code>(</code>' <em>number</em> `<code>)</code>'<br>

<em>lod-comp</em> =&gt; <em>lod-level</em><br>

<em>lod</em> =&gt; `<code>LOD</code>' `<code>(</code>' [ <em>lod-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="17"></a>
<h4 class="subsubheading"> Mesh Objects </h4>
<p>Important note! This documentation explains ONLY the basic mesh object
and factory parsing. It does NOT describe the parsing that is done by
the loader plugin itself. So this means that everything inside the
<samp>&lsquo;PARAMS&rsquo;</samp> blocks is not documented in this document. Documentation
for this will follow later in the mesh object plugin documentation.
</p>

<p><em>plugin</em> =&gt; `<code>PLUGIN</code>' `<code>(</code>' <em>string</em> `<code>)</code>'<br>

<em>params</em> =&gt; `<code>PARAMS</code>' `<code>(</code>' <em>string</em> `<code>)</code>'

<em>paramsfile</em> =&gt; `<code>PARAMSFILE</code>' `<code>(</code>' <em>file-name</em> `<code>)</code>'

<em>mesh-nolighting</em> =&gt; `<code>NOLIGHTING</code>' `<code>(</code>' `<code>)</code>'<br>

<em>mesh-noshadows</em> =&gt; `<code>NOSHADOWS</code>' `<code>(</code>' `<code>)</code>'<br>

<em>mesh-invisible</em> =&gt; `<code>INVISIBLE</code>' `<code>(</code>' `<code>)</code>'<br>

<em>mesh-detail</em> =&gt; `<code>DETAIL</code>' `<code>(</code>' `<code>)</code>'<br>

<em>mesh-zfill</em> =&gt; `<code>ZFILL</code>' `<code>(</code>' `<code>)</code>'<br>

<em>mesh-znone</em> =&gt; `<code>ZNONE</code>' `<code>(</code>' `<code>)</code>'<br>

<em>mesh-zuse</em> =&gt; `<code>ZUSE</code>' `<code>(</code>' `<code>)</code>'<br>

<em>mesh-ztest</em> =&gt; `<code>ZTEST</code>' `<code>(</code>' `<code>)</code>'<br>

<em>mesh-camera</em> =&gt; `<code>CAMERA</code>' `<code>(</code>' `<code>)</code>'<br>

<em>mesh-convex</em> =&gt; `<code>CONVEX</code>' `<code>(</code>' `<code>)</code>'<br>

<em>mesh-priority</em> =&gt; `<code>PRIORITY</code>' `<code>(</code>' <em>priority-name</em> `<code>)</code>'<br>

<em>mesh-lmcache</em> =&gt; `<code>LMCACHE</code>' `<code>(</code>' <em>cache-name</em> `<code>)</code>'<br>
</p>

<p><em>mesh-comp</em> =&gt; <em>plugin</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>addon</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>key</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>params</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>paramsfile</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>move</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>hardmove</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>lod</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>meshref</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-nolighting</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-noshadows</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-invisible</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-detail</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-zfill</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-znone</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-zuse</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-ztest</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-camera</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-convex</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-priority</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-lmcache</em><br>

<em>mesh</em> =&gt; `<code>MESHOBJ</code>' <em>mesh-name</em>
    `<code>(</code>' [ <em>mesh-comp</em> <small class="dots">...</small> ] `<code>)</code>'<br>

<em>meshlib</em> =&gt; `<code>MESHLIB</code>' <em>mesh-name</em>
    `<code>(</code>' [ <em>mesh-comp</em> <small class="dots">...</small> `<code>)</code>'
</p>

<p><em>meshref-factory</em> =&gt; `<code>FACTORY</code>' `<code>(</code>' <em>meshfact-name</em> `<code>)</code>'<br>

<em>meshref-comp</em> =&gt; <em>meshref-factory</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>addon</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>key</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>move</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>hardmove</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>lod</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-nolighting</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-noshadows</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-invisible</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-detail</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-zfill</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-znone</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-zuse</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-ztest</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-camera</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-convex</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh-priority</em><br>

<em>meshref</em> =&gt; `<code>MESHREF</code>' <em>mesh-name</em>
    `<code>(</code>' [ <em>meshref-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="18"></a>
<h4 class="subsubheading"> Mesh Object Factories </h4>

<p><em>meshfact-file</em> =&gt; `<code>FILE</code>' `<code>(</code>' <em>file-name</em> `<code>)</code>'<br>

<em>meshfact-comp</em> =&gt; <em>plugin</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>addon</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>params</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>paramsfile</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>meshfact-file</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>meshfact</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>move</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>hardmove</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>lod</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>material</em><br>

<em>meshfact</em> =&gt; `<code>MESHFACT</code>' <em>meshfact-name</em>
    `<code>(</code>' [ <em>meshfact-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="19"></a>
<h4 class="subsubheading"> Nodes </h4>

<p><em>position</em> =&gt; `<code>POSITION</code>' `<code>(</code>' <em>coordinate</em> `<code>)</code>'<br>

<em>node-comp</em> =&gt; <em>position</em> | <em>key</em><br>

<em>node</em> =&gt; `<code>NODE</code>' `<code>(</code>' [ <em>node-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="20"></a>
<h4 class="subsubheading"> Sectors </h4>


<p><em>sector-comp</em> =&gt; <em>addon</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>culler</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>cullerp</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>light</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>mesh</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>meshref</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>meshlib</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>fog-desc</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>key</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>node</em><br>

<em>sector</em> =&gt; `<code>SECTOR</code>' <em>sector-name</em>
    `<code>(</code>' [ <em>sector-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="21"></a>
<h4 class="subsubheading"> Texture List </h4>

<p><em>textures-comp</em> =&gt; <em>texture-desc</em><br>

<em>textures</em> =&gt; `<code>TEXTURES</code>' `<code>(</code>' [ <em>textures-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="22"></a>
<h4 class="subsubheading"> Material List </h4>

<p><em>materials-comp</em> =&gt; <em>material-desc</em><br>

<em>materials</em> =&gt; `<code>MATERIALS</code>' `<code>(</code>' [ <em>materials-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="23"></a>
<h4 class="subsubheading"> Material Groupings </h4>
<p>Sometimes you want things of the same type but with different materials on it.
This is where material groupings come in handy.  The final name of a texture
in a <samp>&lsquo;MAT_SET&rsquo;</samp> expression will be `<var>mat-set-name_texture-name</var>'.  The
materials will be merged into the global texture list.  You should define a
<samp>&lsquo;MAT_SET&rsquo;</samp> after <samp>&lsquo;TEXTURES&rsquo;</samp> since the latter command clears the
internal list first.
</p>

<p><em>mat-set-name</em> =&gt; <em>name</em><br>

<em>material-set</em> =&gt; `<code>MAT_SET</code>' <em>mat-set-name</em> `<code>(</code>' <em>materials</em> `<code>)</code>'
</p>
<a name="24"></a>
<h4 class="subsubheading"> Library </h4>

<p><em>library</em> =&gt; `<code>LIBRARY</code>' <em>library-name</em> `<code>(</code>' <em>file-name</em> `<code>)</code>'
</p>
<a name="25"></a>
<h4 class="subsubheading"> Starting Position </h4>

<p><em>start-sector</em> =&gt; `<code>SECTOR</code>' `<code>(</code>' <em>sector-name</em> `<code>)</code>'<br>

<em>start-position</em> =&gt; `<code>POSITION</code>' `<code>(</code>' <em>coordinate</em> `<code>)</code>'<br>

<em>start-up</em> =&gt; `<code>UP</code>' `<code>(</code>' <em>vector-3d</em> `<code>)</code>'<br>

<em>start-forward</em> =&gt; `<code>FORWARD</code>' `<code>(</code>' <em>vector-3d</em> `<code>)</code>'<br>

<em>start-comp</em> =&gt; <em>start-sector</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>start-position</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>start-up</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>start-forward</em><br>

<em>start-newsyntax</em> =&gt; [ <em>start-comp</em> <small class="dots">...</small> ]<br>

<em>start-oldsyntax</em> =&gt; <em>sector-name</em> `<code>,</code>'
    <em>coordinate</em><br>

<em>start</em> =&gt; `<code>START</code>'
    `<code>(</code>' <em>start-oldsyntax</em> | <em>start-newsyntax</em> `<code>)</code>'
</p>
<a name="26"></a>
<h4 class="subsubheading"> For Loader Plug-Ins </h4>

<p><em>plugin-id</em> =&gt; <em>plugin-name</em> | <em>plugin-shortname</em><br>

<em>plugin-spec</em> =&gt; `<code>PLUGIN</code>' `<code>(</code>' <em>plugin-id</em> `<code>)</code>'<br>

<em>plugin-params</em> =&gt; `<code>PARAMS</code>' `<code>(</code>' <small class="dots">...</small> `<code>)</code>'<br>

<em>plugin-comp</em> =&gt; `<code>PLUGIN</code>' <em>plugin-shortname</em>
    `<code>(</code>' <em>plugin-name</em> `<code>)</code>'<br>

<em>plugins</em> =&gt; `<code>PLUGINS</code>' 
    `<code>(</code>' [ <em>plugin-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="27"></a>
<h4 class="subsubheading"> Add-ons </h4>
<p>Same remark as for mesh objects: the stuff that is inside the
<samp>&lsquo;PARAMS&rsquo;</samp> block is not documented here.
</p>

<p><em>addon-comp</em> =&gt; <em>plugin-spec</em> | <em>plugin-params</em><br>

<em>addon</em> =&gt; `<code>ADDON</code>' `<code>(</code>' [ <em>addon-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="28"></a>
<h4 class="subsubheading"> Sounds </h4>

<p><em>sound-file</em> =&gt; `<code>FILE</code>' `<code>(</code>' <em>file-name</em> `<code>)</code>'<br>

<em>sound</em> =&gt; `<code>SOUND</code>' [ <em>file-name</em> ]
    `<code>(</code>' [ <em>sound-file</em> ] `<code>)</code>'<br>

<em>sounds</em> =&gt; `<code>SOUNDS</code>' `<code>(</code>' [ <em>sound</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="29"></a>
<h4 class="subsubheading"> Settings </h4>

<p><em>setting-ambient</em> =&gt; `<code>AMBIENT</code>' `<code>(</code>' <em>color</em> `<code>)</code>'<br>

<em>setting-clearzbuf</em> =&gt; `<code>CLEARZBUF</code>' `<code>(</code>' <em>yes-no</em> `<code>)</code>'<br>

<em>setting-clearscreen</em> =&gt; `<code>CLEARSCREEN</code>' `<code>(</code>' <em>yes-no</em> `<code>)</code>'<br>

<em>setting-lightmapcellsize</em> =&gt; `<code>LIGHTMAPCELLSIZE</code>' `<code>(</code>' <em>pos-integer</em> `<code>)</code>'<br>

<em>setting-maxlightmapsize</em> =&gt; `<code>MAXLIGHTMAPSIZE</code>' `<code>(</code>' <em>pos-integer</em> `<code>,</code>' <em>pos-integer</em> `<code>)</code>'<br>

<em>settings-comp</em> =&gt; <em>setting-ambient</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>setting-clearzbuf</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>setting-clearscreen</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>setting-lightmapcellsize</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>setting-maxlightmapsize</em><br>

<em>settings</em> =&gt; `<code>SETTINGS</code>' `<code>(</code>' [ <em>settings-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="30"></a>
<h4 class="subsubheading"> World </h4>

<p><em>world-comp</em> =&gt; <em>textures</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>materials</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>library</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>addon</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>material-set</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>sounds</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>plugins</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>sector</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>meshfact</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>collection</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>start</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>key</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>settings</em><br>

<em>world</em> =&gt; `<code>WORLD</code>' `<code>(</code>' [ <em>world-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<a name="31"></a>
<h4 class="subsubheading"> Library File </h4>

<p><em>library-comp</em> =&gt; <em>textures</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>materials</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>meshfact</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>addon</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>meshobj</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>meshref</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>sounds</em><br>
    

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| <em>plugins</em><br>

<em>library</em> =&gt; `<code>LIBRARY</code>' `<code>(</code>' [ <em>library-comp</em> <small class="dots">...</small> ] `<code>)</code>'
</p>
<hr size="1">
<table cellpadding="1" cellspacing="1" border="0">
<tr><td valign="middle" align="left">[<a href="Map-File-Grammar.html#0" title="Previous section in reading order"> &lt; </a>]</td>
<td valign="middle" align="left">[<a href="Map-File-Hints.html#0" title="Next section in reading order"> &gt; </a>]</td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left">[<a href="Using-Crystal-Space.html#0" title="Beginning of this chapter or previous chapter"> &lt;&lt; </a>]</td>
<td valign="middle" align="left">[<a href="Old-Map-File-Format.html#0" title="Up section"> Up </a>]</td>
<td valign="middle" align="left">[<a href="Working-with-Engine-Content.html#0" title="Next chapter"> &gt;&gt; </a>]</td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left">[<a href="index.html#SEC_Top" title="Cover (top) of document">Top</a>]</td>
<td valign="middle" align="left">[<a href="cs_toc.html#SEC_Contents" title="Table of contents">Contents</a>]</td>
<td valign="middle" align="left">[<a href="cs_Index.html#0" title="Index">Index</a>]</td>
<td valign="middle" align="left">[<a href="cs_abt.html#SEC_About" title="About (help)"> ? </a>]</td>
</tr></table>
<p>
 <font size="-1">
  This document was generated using <a href="http://texi2html.cvshome.org/"><em>texi2html 1.76</em></a>.
 </font>
 <br>

</p>
</body>
</html>