aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/a03240.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/doxygen/nel/a03240.html')
-rw-r--r--docs/doxygen/nel/a03240.html6618
1 files changed, 6618 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a03240.html b/docs/doxygen/nel/a03240.html
new file mode 100644
index 00000000..a07ca222
--- /dev/null
+++ b/docs/doxygen/nel/a03240.html
@@ -0,0 +1,6618 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>NeL: NL3D::CPSTailDot class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.3.6 -->
+<div class="qindex"> <form class="search" action="search.php" method="get">
+<a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a> | <span class="search"><u>S</u>earch&nbsp;for&nbsp;<input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div>
+<h1>NL3D::CPSTailDot Class Reference</h1><code>#include &lt;<a class="el" href="a06284.html">ps_tail_dot.h</a>&gt;</code>
+<p>
+<p>Inheritance diagram for NL3D::CPSTailDot:
+<p><center><img src="a03240.png" usemap="#NL3D::CPSTailDot_map" border="0" alt=""></center>
+<map name="NL3D::CPSTailDot_map">
+<area href="a03227.html" alt="NL3D::CPSRibbonBase" shape="rect" coords="89,224,258,248">
+<area href="a03157.html" alt="NL3D::CPSColoredParticle" shape="rect" coords="268,224,437,248">
+<area href="a03178.html" alt="NL3D::CPSMaterial" shape="rect" coords="447,224,616,248">
+<area href="a03162.html" alt="NL3D::CPSParticle" shape="rect" coords="0,168,169,192">
+<area href="a03229.html" alt="NL3D::CPSTailParticle" shape="rect" coords="179,168,348,192">
+<area href="a02691.html" alt="NL3D::CPSLocatedBindable" shape="rect" coords="0,112,169,136">
+<area href="a02867.html" alt="NLMISC::IStreamable" shape="rect" coords="0,56,169,80">
+<area href="a02540.html" alt="NLMISC::IClassable" shape="rect" coords="0,0,169,24">
+</map>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+These particle are like dot, but a tail is following them. The number of segments in the tails can be tuned.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06284.html#l00041">41</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>.<table border=0 cellpadding=0 cellspacing=0>
+<tr><td></td></tr>
+<tr><td colspan=2><br><h2>Vertex buffers &amp; their corresponding index buffers. We keep a map of pretextured vertex buffer (with or without colors).</h2></td></tr>
+<tr><td colspan=2>Vb for ribbons that have the same size are shared. <br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::hash_map&lt; <a class="el" href="a04558.html#a15">uint</a>,<br>
+ <a class="el" href="a03241.html">CVBnPB</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_0">TVBMap</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_1">getNumRibbonsInVB</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the number of ribbons contained in a vb for a given length. (e.g the number of ribbons that can be batched) <a href="#NL3D_1_1CPSTailDotz766_1"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03241.html">CVBnPB</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_2">getVBnPB</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a vertex buffer and a primitive suited for the current ribbon <a href="#NL3D_1_1CPSTailDotz766_2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_0">TVBMap</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_3">_ColoredVBMap</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_0">TVBMap</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_4">_FadedColoredVBMap</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_0">TVBMap</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_5">_FadedVBMap</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_0">TVBMap</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_6">_VBMap</a></td></tr>
+
+<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9">TBlendingMode</a> { <a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw0">add</a>,
+<a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw7">modulate</a>,
+<a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw1">alphaBlend</a>,
+<a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw2">alphaTest</a>
+ }</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">this enum summarize the useful modes for blending to the framebuffer <a href="#NL3D_1_1CPSTailDotw9">More...</a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">TInterpolationMode</a> { <a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw6">Linear</a> = 0,
+<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw4">Hermitte</a>,
+<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw5">InterpModeLast</a>
+ }</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">TRibbonMode</a> { <a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw12">VariableSize</a> = 0,
+<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw3">FixedSize</a>,
+<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw8">RibbonModeLast</a>
+ }</td></tr>
+
+<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea1">basisChanged</a> (<a class="el" href="a05363.html#a557">TPSMatrixMode</a> systemBasis)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea2">completeBBox</a> (<a class="el" href="a02156.html">NLMISC::CAABBox</a> &amp;box) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03128.html">NLMISC::CVector</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea3">computeI</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03128.html">NLMISC::CVector</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea4">computeJ</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03128.html">NLMISC::CVector</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea5">computeK</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03162.html#NL3D_1_1CPSTailDota5">disableAutoLOD</a> (bool disable=true)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Force the Auto-LOD to be disbaled. When set to false, the default behaviour set in the system is used. <a href="#NL3D_1_1CPSTailDota5"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea8">doesProduceBBox</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03162.html#NL3D_1_1CPSTailDota7">draw</a> (bool opaque)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">derivers draw the particles here <a href="#NL3D_1_1CPSTailDota7"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03162.html#NL3D_1_1CPSTailDota8">enableGlobalColorLighting</a> (bool enabled)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03178.html#NL3D_1_1CPSTailDota9">enableZTest</a> (bool enabled)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">=================================================================================== <a href="#NL3D_1_1CPSTailDota9"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea9">enumTexs</a> (std::vector&lt; <a class="el" href="a03408.html">NLMISC::CSmartPtr</a>&lt; <a class="el" href="a03487.html">ITexture</a> &gt; &gt; &amp;dest, <a class="el" href="a02434.html">IDriver</a> &amp;drv)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03178.html#NL3D_1_1CPSTailDota11">forceModulateConstantColor</a> (bool force, const <a class="el" href="a03337.html">NLMISC::CRGBA</a> &amp;col=<a class="el" href="a03337.html#NLMISC_1_1CRGBAs6">NLMISC::CRGBA::White</a>)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">=================================================================================== <a href="#NL3D_1_1CPSTailDota11"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03178.html#NL3D_1_1CPSTailDota12">forceTexturedMaterialStages</a> (<a class="el" href="a04558.html#a15">uint</a> numStages)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">=================================================================================== <a href="#NL3D_1_1CPSTailDota12"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9">CPSMaterial::TBlendingMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03178.html#NL3D_1_1CPSTailDota13">getBlendingMode</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">=================================================================================== <a href="#NL3D_1_1CPSTailDota13"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02540.html#NL3D_1_1ITrackKeyFramer_3_01CKeyVector_01_4a6">getClassName</a> ()=0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03337.html">NLMISC::CRGBA</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03157.html#NL3D_1_1CPSTailDota15">getColor</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the color. <a href="#NL3D_1_1CPSTailDota15"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a03136.html">CPSAttribMaker</a>&lt; <a class="el" href="a03337.html">CRGBA</a> &gt; *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03157.html#NL3D_1_1CPSTailDota16">getColorScheme</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the color scheme (NULL if none) const version <a href="#NL3D_1_1CPSTailDota16"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03136.html">CPSAttribMaker</a>&lt; <a class="el" href="a03337.html">CRGBA</a> &gt; *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03157.html#NL3D_1_1CPSTailDota17">getColorScheme</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the color scheme (NULL if none) <a href="#NL3D_1_1CPSTailDota17"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02434.html">IDriver</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea14">getDriver</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">shortcut to get an instance of the driver <a href="#NL3D_1_1CPSZoneSpherea14"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea15">getExternID</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the extern ID of this located bindable <a href="#NL3D_1_1CPSZoneSpherea15"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02541.html">CFontGenerator</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea16">getFontGenerator</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shortcut to get the font generator if one was set (const version). <a href="#NL3D_1_1CPSZoneSpherea16"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02541.html">CFontGenerator</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea17">getFontGenerator</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shortcut to get the font generator if one was set. <a href="#NL3D_1_1CPSZoneSpherea17"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02542.html">CFontManager</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea18">getFontManager</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shortcut to get the font manager if one was set (const version). <a href="#NL3D_1_1CPSZoneSpherea18"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02542.html">CFontManager</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea19">getFontManager</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSZoneSpherea19"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea20">getInvertedSysMat</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">shortcut to get the inverted matrix of the system <a href="#NL3D_1_1CPSZoneSpherea20"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea21">getInvertedViewMat</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">shortcut to get the inverted view matrix <a href="#NL3D_1_1CPSZoneSpherea21"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea22">getLocalToWorldMatrix</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shortcut to get the local to world matrix. <a href="#NL3D_1_1CPSZoneSpherea22"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a05363.html#a558">TPSLod</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea23">getLOD</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the valid lods for that object <a href="#NL3D_1_1CPSZoneSpherea23"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDota28">getLODDegradation</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDota29">getMaxNumFaces</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the max number of faces needed for display. This is needed for LOD balancing <a href="#NL3D_1_1CPSTailDota29"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea25">getName</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the located bindable name (edition purpose) <a href="#NL3D_1_1CPSZoneSpherea25"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a03214.html">CPSLocated</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea28">getOwner</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the located that owns this bindable (const version) <a href="#NL3D_1_1CPSZoneSpherea28"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03214.html">CPSLocated</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea29">getOwner</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the located that owns this bindable <a href="#NL3D_1_1CPSZoneSpherea29"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03162.html#NL3D_1_1CPSTailDota33">getPriority</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return priority <a href="#NL3D_1_1CPSTailDota33"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea32">getSysMat</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSZoneSpherea32"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03162.html#NL3D_1_1CPSTailDota35">getType</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return this bindable type <a href="#NL3D_1_1CPSTailDota35"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea36">getUserMatrixUsageCount</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea37">getViewMat</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">shortcut to get the view matrix <a href="#NL3D_1_1CPSZoneSpherea37"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea38">hasEmitters</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">tells wether there are alive emitters <a href="#NL3D_1_1CPSZoneSpherea38"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDota39">hasLightableFaces</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">from <a class="el" href="a03162.html">CPSParticle</a> : return true if there are lightable faces in the object <a href="#NL3D_1_1CPSTailDota39"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDota40">hasOpaqueFaces</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return true if there are Opaque faces in the object <a href="#NL3D_1_1CPSTailDota40"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03162.html#NL3D_1_1CPSTailDota41">hasParticles</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return true if this located bindable derived class holds alive particles <a href="#NL3D_1_1CPSTailDota41"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDota42">hasTransparentFaces</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return true if there are transparent faces in the object <a href="#NL3D_1_1CPSTailDota42"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea40">isActive</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03162.html#NL3D_1_1CPSTailDota44">isAutoLODDisabled</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test wether Auto-LOD is disabled. <a href="#NL3D_1_1CPSTailDota44"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03178.html#NL3D_1_1CPSTailDota45">isZTestEnabled</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">=================================================================================== <a href="#NL3D_1_1CPSTailDota45"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDota46">notifyTargetRemoved</a> (<a class="el" href="a03214.html">CPSLocated</a> *ptr)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDota46"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDota47">releaseAllRef</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDota47"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDota48">releaseRefTo</a> (const <a class="el" href="a03054.html">CParticleSystemProcess</a> *other)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03157.html#NL3D_1_1CPSTailDota49">serialColorScheme</a> (<a class="el" href="a02270.html">NLMISC::IStream</a> &amp;f) throw (NLMISC::EStream)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">serialization. <a href="#NL3D_1_1CPSTailDota49"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03178.html#NL3D_1_1CPSTailDota50">serialMaterial</a> (<a class="el" href="a02270.html">NLMISC::IStream</a> &amp;f) throw (NLMISC::EStream)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">=================================================================================== <a href="#NL3D_1_1CPSTailDota50"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea49">setActive</a> (bool active)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Activate / Deactivate this object. When not active, the owning system won't try to call the 'step' method. <a href="#NL3D_1_1CPSZoneSpherea49"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03178.html#NL3D_1_1CPSTailDota52">setBlendingMode</a> (<a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9">CPSMaterial::TBlendingMode</a> mode)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">=================================================================================== <a href="#NL3D_1_1CPSTailDota52"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03157.html#NL3D_1_1CPSTailDota53">setColor</a> (<a class="el" href="a03337.html">NLMISC::CRGBA</a> col)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set a constant color for the particles. remove any previous scheme. <a href="#NL3D_1_1CPSTailDota53"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03157.html#NL3D_1_1CPSTailDota54">setColorScheme</a> (<a class="el" href="a03136.html">CPSAttribMaker</a>&lt; <a class="el" href="a03337.html">CRGBA</a> &gt; *col)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea52">setExternID</a> (<a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a04223.html#a564">id</a>)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSZoneSpherea52"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea53">setLOD</a> (<a class="el" href="a05363.html#a558">TPSLod</a> lod)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDota57">setLODDegradation</a> (float percent)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea55">setName</a> (const std::string &amp;name)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the located bindable name (edition purpose) <a href="#NL3D_1_1CPSZoneSpherea55"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea59">setupDriverModelMatrix</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">shortcut to setup the model matrix (system basis or world basis) <a href="#NL3D_1_1CPSZoneSpherea59"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDota60">setZBias</a> (float <a class="el" href="a04223.html#a658">value</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03162.html#NL3D_1_1CPSTailDota61">showTool</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">draw the particles for edition mode. The default behaviour just draw a wireframe model <a href="#NL3D_1_1CPSTailDota61"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDota62">step</a> (<a class="el" href="a05363.html#a556">TPSProcessPass</a> pass, <a class="el" href="a05363.html#a366">TAnimationTime</a> ellapsedTime, <a class="el" href="a05363.html#a366">TAnimationTime</a> realEt)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">inherited from <a class="el" href="a03162.html">CPSParticle</a> <a href="#NL3D_1_1CPSTailDota62"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDota63">supportGlobalColorLighting</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03162.html#NL3D_1_1CPSTailDota64">usesGlobalColorLighting</a> ()</td></tr>
+
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Behaviour</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">TInterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_0">getInterpolationMode</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">TRibbonMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_1">getRibbonMode</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_2">setInterpolationMode</a> (<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">TInterpolationMode</a> mode)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_3">setRibbonMode</a> (<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">TRibbonMode</a> mode)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">NB : a fixed size isn't applied with parametric motion. <a href="#NL3D_1_1CPSTailDotz754_3"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Geometry</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_0">getRibbonLength</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a05363.html#a366">TAnimationTime</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_1">getSegDuration</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_2">getTailNbSeg</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the number of segments used with this particle <a href="#NL3D_1_1CPSTailDotz755_2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_3">setRibbonLength</a> (float length)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_4">setSegDuration</a> (<a class="el" href="a05363.html#a366">TAnimationTime</a> ellapsedTime)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_5">setTailNbSeg</a> (<a class="el" href="a04558.html#a11">uint32</a> nbSegs)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the number of segments used with this particle. In this case, it can't be lower than 2 <a href="#NL3D_1_1CPSTailDotz755_5"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Behaviour</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">TInterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_0">getInterpolationMode</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">TRibbonMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_1">getRibbonMode</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_2">setInterpolationMode</a> (<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">TInterpolationMode</a> mode)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_3">setRibbonMode</a> (<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">TRibbonMode</a> mode)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">NB : a fixed size isn't applied with parametric motion. <a href="#NL3D_1_1CPSTailDotz754_3"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Geometry</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_0">getRibbonLength</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a05363.html#a366">TAnimationTime</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_1">getSegDuration</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_2">getTailNbSeg</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the number of segments used with this particle <a href="#NL3D_1_1CPSTailDotz755_2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_3">setRibbonLength</a> (float length)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_4">setSegDuration</a> (<a class="el" href="a05363.html#a366">TAnimationTime</a> ellapsedTime)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_5">setTailNbSeg</a> (<a class="el" href="a04558.html#a11">uint32</a> nbSegs)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the number of segments used with this particle. In this case, it can't be lower than 2 <a href="#NL3D_1_1CPSTailDotz755_5"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Behaviour</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">TInterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_0">getInterpolationMode</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">TRibbonMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_1">getRibbonMode</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_2">setInterpolationMode</a> (<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">TInterpolationMode</a> mode)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_3">setRibbonMode</a> (<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">TRibbonMode</a> mode)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">NB : a fixed size isn't applied with parametric motion. <a href="#NL3D_1_1CPSTailDotz754_3"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Geometry</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_0">getRibbonLength</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a05363.html#a366">TAnimationTime</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_1">getSegDuration</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_2">getTailNbSeg</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the number of segments used with this particle <a href="#NL3D_1_1CPSTailDotz755_2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_3">setRibbonLength</a> (float length)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_4">setSegDuration</a> (<a class="el" href="a05363.html#a366">TAnimationTime</a> ellapsedTime)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_5">setTailNbSeg</a> (<a class="el" href="a04558.html#a11">uint32</a> nbSegs)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the number of segments used with this particle. In this case, it can't be lower than 2 <a href="#NL3D_1_1CPSTailDotz755_5"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz763_0">CPSTailDot</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ctor <a href="#NL3D_1_1CPSTailDotz763_0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz763_1">NLMISC_DECLARE_CLASS</a> (<a class="el" href="a03240.html">CPSTailDot</a>)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ctor <a href="#NL3D_1_1CPSTailDotz763_1"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz763_2">serial</a> (<a class="el" href="a02270.html">NLMISC::IStream</a> &amp;f) throw (NLMISC::EStream)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">serialisation. Derivers must override this, and call their parent version <a href="#NL3D_1_1CPSTailDotz763_2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz763_3">~CPSTailDot</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">dtor <a href="#NL3D_1_1CPSTailDotz763_3"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Object</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSTailDotz743_0">finalize</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSTailDotz743_0"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Behaviour</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz764_0">getColorFading</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz764_1">isInSystemBasis</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return true if the tails are in the system basis <a href="#NL3D_1_1CPSTailDotz764_1"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz764_2">setColorFading</a> (bool onOff=true)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotz764_3">setSystemBasis</a> (bool yes)</td></tr>
+
+<tr><td colspan="2"><div class="groupHeader">Behaviour</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">TInterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_0">getInterpolationMode</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">TRibbonMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_1">getRibbonMode</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_2">setInterpolationMode</a> (<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">TInterpolationMode</a> mode)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz754_3">setRibbonMode</a> (<a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">TRibbonMode</a> mode)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">NB : a fixed size isn't applied with parametric motion. <a href="#NL3D_1_1CPSTailDotz754_3"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Geometry</div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_0">getRibbonLength</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a05363.html#a366">TAnimationTime</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_1">getSegDuration</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_2">getTailNbSeg</a> (void) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get the number of segments used with this particle <a href="#NL3D_1_1CPSTailDotz755_2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_3">setRibbonLength</a> (float length)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_4">setSegDuration</a> (<a class="el" href="a05363.html#a366">TAnimationTime</a> ellapsedTime)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotz755_5">setTailNbSeg</a> (<a class="el" href="a04558.html#a11">uint32</a> nbSegs)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the number of segments used with this particle. In this case, it can't be lower than 2 <a href="#NL3D_1_1CPSTailDotz755_5"></a><br><br></td></tr>
+<tr><td colspan=2><br><h2>Protected Types</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="a03254.html">CPSVector</a>&lt; float &gt;::<a class="el" href="a03254.html">V</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotx0">TFloatVect</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="a03254.html">CPSVector</a>&lt; <a class="el" href="a03128.html">NLMISC::CVector</a> <br>
+&gt;::<a class="el" href="a03254.html">V</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotx1">TPosVect</a></td></tr>
+
+<tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSphereb0">bounceOccured</a> (<a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a04223.html#a566">index</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotb1">computeRibbon</a> (<a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a04223.html#a566">index</a>, <a class="el" href="a03128.html">NLMISC::CVector</a> *dest, <a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a04223.html#a582">stride</a>=sizeof(<a class="el" href="a03128.html">NLMISC::CVector</a>))</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03162.html#NL3D_1_1CPSTailDotb2">computeSrcStep</a> (<a class="el" href="a04558.html#a11">uint32</a> &amp;step, <a class="el" href="a04558.html#a15">uint</a> &amp;numToProcess)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03157.html#NL3D_1_1CPSTailDotb3">deleteColorElement</a> (<a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a04223.html#a566">index</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotb4">deleteElement</a> (<a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a04223.html#a566">index</a>)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">inherited from <a class="el" href="a02691.html">CPSLocatedBindable</a> <a href="#NL3D_1_1CPSTailDotb4"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSphereb3">displayIcon2d</a> (const <a class="el" href="a03128.html">NLMISC::CVector</a> tab[], <a class="el" href="a04558.html#a15">uint</a> nbSegs, float scale)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSZoneSphereb3"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="a03214.html">CPSLocated</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotb6">getColorOwner</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">deriver must return their owner there <a href="#NL3D_1_1CPSTailDotb6"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotb7">getRibbonIndex</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a03227.html#NL3D_1_1CPSTailDotx0">TFloatVect</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotb8">getSamplingDate</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="a03214.html">CPSLocated</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotb9">getSizeOwner</a> (void)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotb10">initDateVect</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotb11">motionTypeChanged</a> (bool parametric)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">called when the motion type has changed, this allow us to draw smoother ribbons when parametric anim is used <a href="#NL3D_1_1CPSTailDotb11"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03157.html#NL3D_1_1CPSTailDotb12">newColorElement</a> (<a class="el" href="a03214.html">CPSLocated</a> *emitterLocated, <a class="el" href="a04558.html#a11">uint32</a> emitterIndex)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotb13">newElement</a> (<a class="el" href="a03214.html">CPSLocated</a> *emitterLocated, <a class="el" href="a04558.html#a11">uint32</a> emitterIndex)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">inherited from <a class="el" href="a02691.html">CPSLocatedBindable</a> <a href="#NL3D_1_1CPSTailDotb13"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03162.html#NL3D_1_1CPSTailDotb14">notifyOwnerMaxNumFacesChanged</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotb15">resetFromOwner</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotb16">resize</a> (<a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a04223.html#a587">size</a>)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">inherited from <a class="el" href="a02691.html">CPSLocatedBindable</a> <a href="#NL3D_1_1CPSTailDotb16"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03157.html#NL3D_1_1CPSTailDotb17">resizeColor</a> (<a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a04223.html#a587">size</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSphereb7">setOwner</a> (<a class="el" href="a03214.html">CPSLocated</a> *psl)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">*************************************************************************************** <a href="#NL3D_1_1CPSZoneSphereb7"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotb19">updateGlobals</a> (float realET)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called each time the time of the system change in order to update the ribbons positions. <a href="#NL3D_1_1CPSTailDotb19"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotb20">updateLOD</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">must be called for the lod to apply (updates UsedNbSegs) <a href="#NL3D_1_1CPSTailDotb20"></a><br><br></td></tr>
+<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherep0">_Active</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03337.html">CRGBA</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03157.html#NL3D_1_1CPSTailDotp1">_Color</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03136.html">CPSAttribMaker</a>&lt; <a class="el" href="a03337.html">CRGBA</a> &gt; *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherep3">_ExternID</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a05363.html#a558">TPSLod</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherep4">_LOD</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">tells when this object must be dealt with <a href="#NL3D_1_1CPSZoneSpherep4"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02839.html">CMaterial</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherep5">_Name</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03214.html">CPSLocated</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotp9">_Parametric</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a05363.html#a366">TAnimationTime</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotp10">_SegDuration</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotp11">_UsedNbSegs</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">value to use after lod computation <a href="#NL3D_1_1CPSTailDotp11"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a05363.html#a366">TAnimationTime</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotp12">_UsedSegDuration</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03227.html#NL3D_1_1CPSTailDotp13">_UsedSegLength</a></td></tr>
+
+<tr><td colspan=2><br><h2>Private Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotd0">displayRibbons</a> (<a class="el" href="a04558.html#a11">uint32</a> nbRibbons, <a class="el" href="a04558.html#a11">uint32</a> srcStep)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">display a set of ribbons <a href="#NL3D_1_1CPSTailDotd0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotd1">setupGlobalColor</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotd2">touch</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotd3">updateMatAndVbForColor</a> (void)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">update the material and the vb so that they match the color scheme. Inherited from <a class="el" href="a03157.html">CPSColoredParticle</a> <a href="#NL3D_1_1CPSTailDotd3"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotd4">updateMaterial</a> ()</td></tr>
+
+<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>: 1</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotr1">_ForceLighted</a>: 1</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotr2">_GlobalColor</a>: 1</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotr3">_Lighted</a>: 1</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03240.html#NL3D_1_1CPSTailDotr4">_Touch</a>: 1</td></tr>
+
+<tr><td colspan=2><br><h2>Friends</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>class&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02691.html#NL3D_1_1CPSZoneSpheren0">CPSLocated</a></td></tr>
+
+</table>
+<hr><h2>Member Typedef Documentation</h2>
+<a class="anchor" name="NL3D_1_1CPSTailDotx0" doxytag="NL3D::CPSTailDot::TFloatVect" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef <a class="el" href="a03254.html">CPSVector</a>&lt;float&gt;::<a class="el" href="a03254.html">V</a> <a class="el" href="a03254.html">NL3D::CPSRibbonBase::TFloatVect</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00099">99</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+Referenced by <a class="el" href="a06276.html#l00133">NL3D::CPSRibbonBase::getSamplingDate()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotx1" doxytag="NL3D::CPSTailDot::TPosVect" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef <a class="el" href="a03254.html">CPSVector</a>&lt;<a class="el" href="a03128.html">NLMISC::CVector</a>&gt;::<a class="el" href="a03254.html">V</a> <a class="el" href="a03254.html">NL3D::CPSRibbonBase::TPosVect</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00098">98</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz766_0" doxytag="NL3D::CPSTailDot::TVBMap" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef std::hash_map&lt;<a class="el" href="a04558.html#a15">uint</a>, <a class="el" href="a03241.html">CVBnPB</a>&gt; <a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_0">NL3D::CPSTailDot::TVBMap</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06284.html#l00151">151</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>. </td>
+ </tr>
+</table>
+<hr><h2>Member Enumeration Documentation</h2>
+<a class="anchor" name="NL3D_1_1CPSTailDotw9" doxytag="NL3D::CPSTailDot::TBlendingMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> enum <a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9">NL3D::CPSMaterial::TBlendingMode</a><code> [inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+this enum summarize the useful modes for blending to the framebuffer
+<p>
+<dl compact><dt><b>Enumeration values: </b></dt><dd>
+<table border=0 cellspacing=2 cellpadding=0>
+<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw0" doxytag="add" ></a>add</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw7" doxytag="modulate" ></a>modulate</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw1" doxytag="alphaBlend" ></a>alphaBlend</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw2" doxytag="alphaTest" ></a>alphaTest</em>&nbsp;</td><td>
+</td></tr>
+</table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00809">809</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+<div class="fragment"><pre>00809 { <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw0">add</a>, <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw7">modulate</a>, <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw1">alphaBlend</a>, <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw2">alphaTest</a> };
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotw10" doxytag="NL3D::CPSTailDot::TInterpolationMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> enum <a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">NL3D::CPSRibbonBase::TInterpolationMode</a><code> [inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<dl compact><dt><b>Enumeration values: </b></dt><dd>
+<table border=0 cellspacing=2 cellpadding=0>
+<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw6" doxytag="Linear" ></a>Linear</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw4" doxytag="Hermitte" ></a>Hermitte</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw5" doxytag="InterpModeLast" ></a>InterpModeLast</em>&nbsp;</td><td>
+</td></tr>
+</table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00049">49</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+Referenced by <a class="el" href="a06276.html#l00064">NL3D::CPSRibbonBase::getInterpolationMode()</a>.
+<p>
+<div class="fragment"><pre>00049 { <a class="code" href="a03227.html#NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw6">Linear</a> = 0, <a class="code" href="a03227.html#NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw4">Hermitte</a>, <a class="code" href="a03227.html#NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw5">InterpModeLast</a> };
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotw11" doxytag="NL3D::CPSTailDot::TRibbonMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> enum <a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">NL3D::CPSRibbonBase::TRibbonMode</a><code> [inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<dl compact><dt><b>Enumeration values: </b></dt><dd>
+<table border=0 cellspacing=2 cellpadding=0>
+<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw12" doxytag="VariableSize" ></a>VariableSize</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw3" doxytag="FixedSize" ></a>FixedSize</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw8" doxytag="RibbonModeLast" ></a>RibbonModeLast</em>&nbsp;</td><td>
+</td></tr>
+</table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00048">48</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+Referenced by <a class="el" href="a06276.html#l00062">NL3D::CPSRibbonBase::getRibbonMode()</a>.
+<p>
+<div class="fragment"><pre>00048 { <a class="code" href="a03227.html#NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw12">VariableSize</a> = 0, <a class="code" href="a03227.html#NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw3">FixedSize</a>, <a class="code" href="a03227.html#NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw8">RibbonModeLast</a> };
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="NL3D_1_1CPSTailDotz763_0" doxytag="NL3D::CPSTailDot::CPSTailDot" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NL3D::CPSTailDot::CPSTailDot </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+ctor
+<p>
+
+<p>
+Definition at line <a class="el" href="a06283.html#l00066">66</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a06275.html#l00111">NL3D::CPSRibbonBase::setInterpolationMode()</a>, and <a class="el" href="a06275.html#l00132">NL3D::CPSRibbonBase::setSegDuration()</a>.
+<p>
+<div class="fragment"><pre>00066 : <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>(<span class="keyword">false</span>),
+00067 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr2">_GlobalColor</a>(<span class="keyword">false</span>),
+00068 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr3">_Lighted</a>(<span class="keyword">false</span>),
+00069 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr1">_ForceLighted</a>(<span class="keyword">false</span>),
+00070 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr4">_Touch</a>(<span class="keyword">true</span>)
+00071 {
+00072 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotz754_2">setInterpolationMode</a>(Linear);
+00073 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotz755_4">setSegDuration</a>(0.06f);
+00074 <span class="keywordflow">if</span> (CParticleSystem::getSerializeIdentifierFlag()) <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep5">_Name</a> = std::string(<span class="stringliteral">"TailDot"</span>);
+00075 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz763_3" doxytag="NL3D::CPSTailDot::~CPSTailDot" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NL3D::CPSTailDot::~<a class="el" href="a03240.html">CPSTailDot</a> </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+dtor
+<p>
+
+<p>
+Definition at line <a class="el" href="a06283.html#l00078">78</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+<div class="fragment"><pre>00079 {
+00080 <span class="comment">// delete _DyingRibbons;</span>
+00081 }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea1" doxytag="NL3D::CPSTailDot::basisChanged" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NL3D::CPSLocatedBindable::basisChanged </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a05363.html#a557">TPSMatrixMode</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>systemBasis</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Called when the basis of the owner changed. the default behaviour does nothing <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>newBasis</em>&nbsp;</td><td>: True if in the system basis, false for the world basis.</td></tr>
+ </table>
+</dl>
+
+<p>
+Reimplemented in <a class="el" href="a02690.html#NL3D_1_1CPSTurbulb0">NL3D::CPSForce</a>.
+<p>
+Definition at line <a class="el" href="a06247.html#l00968">968</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+<div class="fragment"><pre>00968 {}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSphereb0" doxytag="NL3D::CPSTailDot::bounceOccured" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NL3D::CPSLocatedBindable::bounceOccured </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>index</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+a bounce occured, so some action could be done. The default behaviour does nothing <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>index</em>&nbsp;</td><td>the index of the element that bounced</td></tr>
+ </table>
+</dl>
+
+<p>
+Reimplemented in <a class="el" href="a03179.html#NL3D_1_1CPSSphericalEmitterb0">NL3D::CPSEmitter</a>.
+<p>
+Definition at line <a class="el" href="a06247.html#l01011">1011</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a05646.html#l00225">index</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>01011 {}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea2" doxytag="NL3D::CPSTailDot::completeBBox" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NL3D::CPSLocatedBindable::completeBBox </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02156.html">NLMISC::CAABBox</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>box</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03194.html#NL3D_1_1CPSFanLighta1">NL3D::CPSFanLight</a>, <a class="el" href="a03187.html#NL3D_1_1CPSQuadb2">NL3D::CPSQuad</a>, and <a class="el" href="a03233.html#NL3D_1_1CPSShockWavea1">NL3D::CPSShockWave</a>.
+<p>
+Definition at line <a class="el" href="a06247.html#l00884">884</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+<div class="fragment"><pre>00884 { <span class="keywordflow">return</span> <span class="keyword">false</span> ;}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea3" doxytag="NL3D::CPSTailDot::computeI" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03128.html">NLMISC::CVector</a> NL3D::CPSLocatedBindable::computeI </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Compute a vector that will map to (1 0 0) after view and model transform. This allow to have object that always faces the user, whatever basis they are in
+<p>
+Definition at line <a class="el" href="a06247.html#l00931">931</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06246.html#l00612">NL3D::CPSLocated::computeI()</a>.
+<p>
+Referenced by <a class="el" href="a06246.html#l02038">NL3D::CPSLocatedBindable::displayIcon2d()</a>, <a class="el" href="a06235.html#l00072">NL3D::CPSFanLightHelper::drawFanLight()</a>, <a class="el" href="a06233.html#l00379">NL3D::CPSFaceLookAtHelper::drawLookAt()</a>, <a class="el" href="a06233.html#l00089">NL3D::CPSFaceLookAtHelper::drawLookAtAlignOnMotion()</a>, <a class="el" href="a06239.html#l00413">NL3D::CPSGravity::show()</a>, and <a class="el" href="a06229.html#l00447">NL3D::CPSEmitter::showTool()</a>.
+<p>
+<div class="fragment"><pre>00931 { <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;computeI(); }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea4" doxytag="NL3D::CPSTailDot::computeJ" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03128.html">NLMISC::CVector</a> NL3D::CPSLocatedBindable::computeJ </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Compute a vector that will map to (0 1 0) after view and model transform. This allow to have object that always faces the user, whatever basis they are in
+<p>
+Definition at line <a class="el" href="a06247.html#l00936">936</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06246.html#l00643">NL3D::CPSLocated::computeJ()</a>.
+<p>
+Referenced by <a class="el" href="a06233.html#l00379">NL3D::CPSFaceLookAtHelper::drawLookAt()</a>.
+<p>
+<div class="fragment"><pre>00936 { <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;computeJ(); }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea5" doxytag="NL3D::CPSTailDot::computeK" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03128.html">NLMISC::CVector</a> NL3D::CPSLocatedBindable::computeK </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Compute a vector that will map to (0 0 1) after view and model transform. This allow to have object that always faces the user, whatever basis they are in
+<p>
+Definition at line <a class="el" href="a06247.html#l00940">940</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06246.html#l00674">NL3D::CPSLocated::computeK()</a>.
+<p>
+Referenced by <a class="el" href="a06246.html#l02038">NL3D::CPSLocatedBindable::displayIcon2d()</a>, <a class="el" href="a06235.html#l00072">NL3D::CPSFanLightHelper::drawFanLight()</a>, <a class="el" href="a06233.html#l00379">NL3D::CPSFaceLookAtHelper::drawLookAt()</a>, <a class="el" href="a06233.html#l00089">NL3D::CPSFaceLookAtHelper::drawLookAtAlignOnMotion()</a>, and <a class="el" href="a06229.html#l00447">NL3D::CPSEmitter::showTool()</a>.
+<p>
+<div class="fragment"><pre>00940 { <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;computeK(); }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb1" doxytag="NL3D::CPSTailDot::computeRibbon" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::computeRibbon </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>index</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a03128.html">NLMISC::CVector</a> *&nbsp;</td>
+ <td class="mdname" nowrap> <em>dest</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>stride</em> = sizeof(<a class="el" href="a03128.html">NLMISC::CVector</a>)</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get position of the i-th ribbon and store them in a table of vector. It uses the interpolation setting of this object. The dest tab must have at least nbSegs + 1 entries.
+<p>
+Definition at line <a class="el" href="a06275.html#l00455">455</a> of file <a class="el" href="a06275.html">ps_ribbon_base.cpp</a>.
+<p>
+References <a class="el" href="a06276.html#l00149">NL3D::CPSRibbonBase::_InterpolationMode</a>, <a class="el" href="a06276.html#l00148">NL3D::CPSRibbonBase::_RibbonMode</a>, <a class="el" href="a06275.html#l00382">NL3D::CPSRibbonBase::computeHermitteCstSizeRibbon()</a>, <a class="el" href="a06275.html#l00175">NL3D::CPSRibbonBase::computeHermitteRibbon()</a>, <a class="el" href="a06275.html#l00315">NL3D::CPSRibbonBase::computeLinearCstSizeRibbon()</a>, <a class="el" href="a06275.html#l00249">NL3D::CPSRibbonBase::computeLinearRibbon()</a>, <a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw4">NL3D::CPSRibbonBase::Hermitte</a>, <a class="el" href="a05646.html#l00225">index</a>, <a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw6">NL3D::CPSRibbonBase::Linear</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05646.html#l00244">stride</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw12">NL3D::CPSRibbonBase::VariableSize</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00242">displayRibbons()</a>, <a class="el" href="a06277.html#l00319">NL3D::CPSRibbonLookAt::displayRibbons()</a>, and <a class="el" href="a06273.html#l00471">NL3D::CPSRibbon::displayRibbons()</a>.
+<p>
+<div class="fragment"><pre>00456 {
+00457 <span class="keywordflow">switch</span> (_InterpolationMode)
+00458 {
+00459 <span class="keywordflow">case</span> <a class="code" href="a03227.html#NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw6">Linear</a>:
+00460 <span class="keywordflow">if</span> (_RibbonMode == <a class="code" href="a03227.html#NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw12">VariableSize</a>)
+00461 {
+00462 <a class="code" href="a03227.html#NL3D_1_1CPSRibbonBased3">computeLinearRibbon</a>(index, dest, stride);
+00463 }
+00464 <span class="keywordflow">else</span>
+00465 {
+00466 <a class="code" href="a03227.html#NL3D_1_1CPSRibbonBased2">computeLinearCstSizeRibbon</a>(index, dest, stride);
+00467 }
+00468 <span class="keywordflow">break</span>;
+00469 <span class="keywordflow">case</span> <a class="code" href="a03227.html#NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw4">Hermitte</a>:
+00470 <span class="keywordflow">if</span> (_RibbonMode == <a class="code" href="a03227.html#NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw12">VariableSize</a>)
+00471 {
+00472 <a class="code" href="a03227.html#NL3D_1_1CPSRibbonBased1">computeHermitteRibbon</a>(index, dest, stride);
+00473
+00474 }
+00475 <span class="keywordflow">else</span>
+00476 {
+00477 <a class="code" href="a03227.html#NL3D_1_1CPSRibbonBased0">computeHermitteCstSizeRibbon</a>(index, dest, stride);
+00478 }
+00479 <span class="keywordflow">break</span>;
+00480 <span class="keywordflow">default</span>:
+00481 <a class="code" href="a04199.html#a6">nlassert</a>(0);
+00482 <span class="keywordflow">break</span>;
+00483 }
+00484
+00485 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb2" doxytag="NL3D::CPSTailDot::computeSrcStep" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSParticle::computeSrcStep </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>step</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>numToProcess</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+System may have hand-tuned LOD, or auto LOD. This compute the number of particles that must really be displayed, and the src step that allow to go through the whole collection. The step in the source is in a fixed point 16:16 format
+<p>
+Definition at line <a class="el" href="a06257.html#l00082">82</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+References <a class="el" href="a06258.html#l00183">NL3D::CPSParticle::_DisableAutoLOD</a>, <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a06143.html#l00631">NL3D::CParticleSystem::getAutoLODDegradationExponent()</a>, <a class="el" href="a06143.html#l00638">NL3D::CParticleSystem::getAutoLODMode()</a>, <a class="el" href="a06143.html#l00630">NL3D::CParticleSystem::getAutoLODStartDistPercent()</a>, <a class="el" href="a06143.html#l00596">NL3D::CParticleSystem::getOneMinusCurrentLODRatio()</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06247.html#l00361">NL3D::CPSLocated::getSize()</a>, <a class="el" href="a06143.html#l00606">NL3D::CParticleSystem::isAutoLODEnabled()</a>, <a class="el" href="a06143.html#l00135">NL3D::CParticleSystem::isSharingEnabled()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05646.html#l00993">r</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+Referenced by <a class="el" href="a06279.html#l00286">NL3D::CPSShockWave::draw()</a>, <a class="el" href="a06250.html#l01631">NL3D::CPSConstraintMesh::draw()</a>, <a class="el" href="a06235.html#l00335">NL3D::CPSFanLight::draw()</a>, <a class="el" href="a06233.html#l00838">NL3D::CPSFaceLookAt::draw()</a>, <a class="el" href="a06226.html#l00122">NL3D::CPSDot::draw()</a>, <a class="el" href="a06283.html#l00165">step()</a>, <a class="el" href="a06277.html#l00119">NL3D::CPSRibbonLookAt::step()</a>, <a class="el" href="a06273.html#l00266">NL3D::CPSRibbon::step()</a>, and <a class="el" href="a06231.html#l00212">NL3D::CPSFace::step()</a>.
+<p>
+<div class="fragment"><pre>00083 {
+00084 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner &amp;&amp; <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner());
+00085 <span class="keyword">const</span> CParticleSystem &amp;ps = *(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner());
+00086 <span class="keywordflow">if</span> (_DisableAutoLOD || !ps.isAutoLODEnabled() || !ps.isSharingEnabled() || <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getSize() == 0) <span class="comment">// Should Auto-LOD be used ?</span>
+00087 {
+00088 step = (1 &lt;&lt; 16);
+00089 numToProcess = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getSize();
+00090 }
+00091 <span class="keywordflow">else</span>
+00092 {
+00093 <span class="keywordtype">float</span> oneMinusLODRatio = ps.getOneMinusCurrentLODRatio();
+00094 <span class="keywordtype">float</span> LODRatio = 1.f - oneMinusLODRatio;
+00095 <span class="keywordflow">if</span> (LODRatio &gt; ps.getAutoLODStartDistPercent())
+00096 {
+00097 <span class="keywordtype">float</span> factor = (LODRatio - 1.f) / (ps.getAutoLODStartDistPercent() - 1.f);
+00098 <a class="code" href="a05378.html#a374">NLMISC::clamp</a>(factor, 0.f, 1.f);
+00099 <span class="keywordtype">float</span> <a class="code" href="a04223.html#a628">r</a> = factor;
+00100 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> k = 1; k &lt; ps.getAutoLODDegradationExponent(); ++k)
+00101 {
+00102 <a class="code" href="a04223.html#a628">r</a> *= factor;
+00103 }
+00104 numToProcess = (<a class="code" href="a04558.html#a15">uint</a>) (<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getSize() * <a class="code" href="a04223.html#a628">r</a>);
+00105 <span class="keywordflow">if</span> (numToProcess &lt; 1) { numToProcess = 1; }
+00106
+00107 step = ps.getAutoLODMode() ? <span class="comment">// skip or limit number, depending on the mode</span>
+00108 (<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getSize() &lt;&lt; 16) / numToProcess : <span class="comment">// skip particles</span>
+00109 (1 &lt;&lt; 16); <span class="comment">// just display less particles</span>
+00110 }
+00111 <span class="keywordflow">else</span>
+00112 {
+00113 step = (1 &lt;&lt; 16);
+00114 numToProcess = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getSize();
+00115 }
+00116 }
+00117
+00118 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb3" doxytag="NL3D::CPSTailDot::deleteColorElement" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSColoredParticle::deleteColorElement </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>index</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00237">237</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+References <a class="el" href="a06214.html#l00285">NL3D::CPSAttribMaker&lt; CRGBA &gt;::deleteElement()</a>, <a class="el" href="a06214.html#l00282">NL3D::CPSAttribMaker&lt; CRGBA &gt;::hasMemory()</a>, <a class="el" href="a05646.html#l00225">index</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00220">deleteElement()</a>, <a class="el" href="a06279.html#l00460">NL3D::CPSShockWave::deleteElement()</a>, <a class="el" href="a06277.html#l00172">NL3D::CPSRibbonLookAt::deleteElement()</a>, <a class="el" href="a06273.html#l00322">NL3D::CPSRibbon::deleteElement()</a>, <a class="el" href="a06263.html#l00105">NL3D::CPSQuad::deleteElement()</a>, <a class="el" href="a06250.html#l01874">NL3D::CPSConstraintMesh::deleteElement()</a>, <a class="el" href="a06235.html#l00272">NL3D::CPSFanLight::deleteElement()</a>, and <a class="el" href="a06226.html#l00239">NL3D::CPSDot::deleteElement()</a>.
+<p>
+<div class="fragment"><pre>00238 {
+00239 <span class="keywordflow">if</span> (<a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a> &amp;&amp; <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>-&gt;hasMemory()) <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>-&gt;deleteElement(index);
+00240 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb4" doxytag="NL3D::CPSTailDot::deleteElement" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSTailDot::deleteElement </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>index</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+inherited from <a class="el" href="a02691.html">CPSLocatedBindable</a>
+<p>
+
+<p>
+Reimplemented from <a class="el" href="a03227.html#NL3D_1_1CPSRibbonBaseb3">NL3D::CPSRibbonBase</a>.
+<p>
+Definition at line <a class="el" href="a06283.html#l00220">220</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a06258.html#l00237">NL3D::CPSColoredParticle::deleteColorElement()</a>, <a class="el" href="a05646.html#l00225">index</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00221 {
+00222 CPSRibbonBase::deleteElement(index);
+00223 <a class="code" href="a03157.html#NL3D_1_1CPSTailDotb3">deleteColorElement</a>(index);
+00224 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota5" doxytag="NL3D::CPSTailDot::disableAutoLOD" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSParticle::disableAutoLOD </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>disable</em> = true </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Force the Auto-LOD to be disbaled. When set to false, the default behaviour set in the system is used.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00137">137</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+References <a class="el" href="a06258.html#l00183">NL3D::CPSParticle::_DisableAutoLOD</a>.
+<p>
+<div class="fragment"><pre>00137 { _DisableAutoLOD = disable; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSphereb3" doxytag="NL3D::CPSTailDot::displayIcon2d" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSLocatedBindable::displayIcon2d </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="a03128.html">NLMISC::CVector</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>tab</em>[], </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>nbSegs</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>float&nbsp;</td>
+ <td class="mdname" nowrap> <em>scale</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+***************************************************************************************
+<p>
+show an drawing to represent the object, and in red if it is selected <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>tab</em>&nbsp;</td><td>: a table of 2 * nbSeg vector. only the x and y coordinates are used </td></tr>
+ <tr><td valign=top><em>nbSeg</em>&nbsp;</td><td>: the number of segment </td></tr>
+ <tr><td valign=top><em>scale</em>&nbsp;</td><td>: the scale to use for drawing</td></tr>
+ </table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06246.html#l02038">2038</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a06247.html#l00931">NL3D::CPSLocatedBindable::computeI()</a>, <a class="el" href="a06247.html#l00940">NL3D::CPSLocatedBindable::computeK()</a>, <a class="el" href="a06143.html#l00411">NL3D::CParticleSystem::getCurrentEditedElement()</a>, <a class="el" href="a06247.html#l00890">NL3D::CPSLocatedBindable::getDriver()</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06247.html#l00334">NL3D::CPSLocated::getPos()</a>, <a class="el" href="a06247.html#l00361">NL3D::CPSLocated::getSize()</a>, <a class="el" href="a05646.html#l00225">index</a>, <a class="el" href="a05641.html#l00064">NL3D::CMaterial::setBlend()</a>, <a class="el" href="a05641.html#l00091">NL3D::CMaterial::setBlendFunc()</a>, <a class="el" href="a05641.html#l00118">NL3D::CMaterial::setColor()</a>, <a class="el" href="a05641.html#l00127">NL3D::CMaterial::setLighting()</a>, <a class="el" href="a06246.html#l02142">NL3D::CPSLocatedBindable::setupDriverModelMatrix()</a>, <a class="el" href="a05641.html#l00099">NL3D::CMaterial::setZFunc()</a>, <a class="el" href="a05641.html#l00105">NL3D::CMaterial::setZWrite()</a>, <a class="el" href="a05646.html#l00645">size</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05910.html#l00048">NLMISC::CLine::V0</a>, <a class="el" href="a05910.html#l00048">NLMISC::CLine::V1</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::x</a>, and <a class="el" href="a06673.html#l00051">NLMISC::CVector::y</a>.
+<p>
+Referenced by <a class="el" href="a06239.html#l00795">NL3D::CPSSpring::show()</a>, <a class="el" href="a06239.html#l00724">NL3D::CPSCentralGravity::show()</a>, and <a class="el" href="a06257.html#l00055">NL3D::CPSParticle::showTool()</a>.
+<p>
+<div class="fragment"><pre>02039 {
+02040 <a class="code" href="a04558.html#a11">uint32</a> <a class="code" href="a04223.html#a587">size</a> = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getSize();
+02041 <span class="keywordflow">if</span> (!<a class="code" href="a04223.html#a587">size</a>) <span class="keywordflow">return</span>;
+02042 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherea59">setupDriverModelMatrix</a>();
+02043
+02044 <span class="keyword">const</span> CVector I = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherea3">computeI</a>();
+02045 <span class="keyword">const</span> CVector K = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherea5">computeK</a>();
+02046
+02047 <span class="keyword">static</span> std::vector&lt;NLMISC::CLine&gt; lines;
+02048
+02049 lines.clear();
+02050
+02051 <span class="comment">// ugly slow code, but not for runtime</span>
+02052 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> k = 0; k &lt; <a class="code" href="a04223.html#a587">size</a>; ++k)
+02053 {
+02054 <span class="comment">// center of the current particle</span>
+02055 <span class="keyword">const</span> CVector p = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getPos()[k];
+02056
+02057
+02058
+02059 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> <a class="code" href="a05373.html#a2">l</a> = 0; <a class="code" href="a05373.html#a2">l</a> &lt; nbSegs; ++<a class="code" href="a05373.html#a2">l</a>)
+02060 {
+02061 <a class="code" href="a02759.html">NLMISC::CLine</a> li;
+02062 li.<a class="code" href="a02759.html#NLMISC_1_1CLineUVo2">V0</a> = p + scale * (tab[<a class="code" href="a05373.html#a2">l</a> &lt;&lt; 1].<a class="code" href="a03128.html#NLMISC_1_1CVectoro0">x</a> * I + tab[<a class="code" href="a05373.html#a2">l</a> &lt;&lt; 1].y * K);
+02063 li.<a class="code" href="a02759.html#NLMISC_1_1CLineUVo3">V1</a> = p + scale * (tab[(<a class="code" href="a05373.html#a2">l</a> &lt;&lt; 1) + 1].x * I + tab[(<a class="code" href="a05373.html#a2">l</a> &lt;&lt; 1) + 1].y * K);
+02064 lines.push_back(li);
+02065 }
+02066
+02067 CMaterial mat;
+02068
+02069 mat.setBlendFunc(CMaterial::one, CMaterial::one);
+02070 mat.setZWrite(<span class="keyword">false</span>);
+02071 mat.setLighting(<span class="keyword">false</span>);
+02072 mat.setBlend(<span class="keyword">true</span>);
+02073 mat.setZFunc(CMaterial::less);
+02074
+02075
+02076
+02077 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpheren0">CPSLocated</a> *loc;
+02078 <a class="code" href="a04558.html#a11">uint32</a> <a class="code" href="a04223.html#a566">index</a>;
+02079 <a class="code" href="a02691.html#NL3D_1_1CPSLocatedBindablez743_0">CPSLocatedBindable</a> *lb;
+02080 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner()-&gt;getCurrentEditedElement(loc, index, lb);
+02081
+02082 mat.setColor((lb == NULL || <span class="keyword">this</span> == lb) &amp;&amp; loc == _Owner &amp;&amp; index == k ? CRGBA::Red : <a class="code" href="a03337.html">CRGBA</a>(127, 127, 127));
+02083
+02084
+02085 CDRU::drawLinesUnlit(lines, mat, *<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherea14">getDriver</a>() );
+02086 }
+02087
+02088 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotd0" doxytag="NL3D::CPSTailDot::displayRibbons" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSTailDot::displayRibbons </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>nbRibbons</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>srcStep</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+display a set of ribbons
+<p>
+compute colors
+<p>
+Definition at line <a class="el" href="a06283.html#l00242">242</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a02434.html#NL3D_1_1IDrivera2">NL3D::IDriver::activeVertexBuffer()</a>, <a class="el" href="a06275.html#l00455">NL3D::CPSRibbonBase::computeRibbon()</a>, <a class="el" href="a06143.html#l00657">NL3D::CParticleSystem::getColorAttenuationScheme()</a>, <a class="el" href="a06711.html#l00340">NL3D::CVertexBuffer::getColorOff()</a>, <a class="el" href="a06247.html#l00890">NL3D::CPSLocatedBindable::getDriver()</a>, <a class="el" href="a06143.html#l00679">NL3D::CParticleSystem::getForceGlobalColorLightingFlag()</a>, <a class="el" href="a06283.html#l00434">getNumRibbonsInVB()</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06143.html#l00311">NL3D::CParticleSystem::getSystemDate()</a>, <a class="el" href="a06283.html#l00374">getVBnPB()</a>, <a class="el" href="a06710.html#l00438">NL3D::CVertexBuffer::getVertexCoordPointer()</a>, <a class="el" href="a06711.html#l00473">NL3D::CVertexBuffer::getVertexSize()</a>, <a class="el" href="a06246.html#l00500">NL3D::CPSLocated::incrementNbDrawnParticles()</a>, <a class="el" href="a06246.html#l00256">NL3D::CPSLocated::integrateSingle()</a>, <a class="el" href="a06143.html#l00669">NL3D::CParticleSystem::isUserColorUsed()</a>, <a class="el" href="a03136.html#NL3D_1_1CPSAttribMakerz714_4">NL3D::CPSAttribMaker&lt; CRGBA &gt;::makeN()</a>, <a class="el" href="a05484.html#l00038">min</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06284.html#l00148">NL3D::CPSTailDot::CVBnPB::PB</a>, <a class="el" href="a02434.html#NL3D_1_1IDrivera51">NL3D::IDriver::render()</a>, <a class="el" href="a06197.html#l00061">NL3D::CPrimitiveBlock::setNumLine()</a>, <a class="el" href="a06246.html#l02142">NL3D::CPSLocatedBindable::setupDriverModelMatrix()</a>, <a class="el" href="a06283.html#l00508">setupGlobalColor()</a>, <a class="el" href="a06284.html#l00172">touch()</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05981.html#l00096">uint8</a>, <a class="el" href="a06283.html#l00443">updateMaterial()</a>, <a class="el" href="a06258.html#l00103">NL3D::CPSParticle::usesGlobalColorLighting()</a>, and <a class="el" href="a06284.html#l00147">NL3D::CPSTailDot::CVBnPB::VB</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00165">step()</a>.
+<p>
+<div class="fragment"><pre>00243 {
+00244 <span class="keywordflow">if</span> (!nbRibbons) <span class="keywordflow">return</span>;
+00245 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+00246 CPSRibbonBase::updateLOD();
+00247 <span class="keywordflow">if</span> (<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp11">_UsedNbSegs</a> &lt; 2) <span class="keywordflow">return</span>;
+00248 <span class="keyword">const</span> <span class="keywordtype">float</span> date = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner()-&gt;getSystemDate();
+00249 <a class="code" href="a04558.html#a7">uint8</a> *currVert;
+00250 CVBnPB &amp;VBnPB = <a class="code" href="a03240.html#NL3D_1_1CPSTailDotz766_2">getVBnPB</a>(); <span class="comment">// get the appropriate vb (built it if needed)</span>
+00251 CVertexBuffer &amp;VB = VBnPB.VB;
+00252 CPrimitiveBlock &amp;PB = VBnPB.PB;
+00253 <span class="keyword">const</span> <a class="code" href="a04558.html#a11">uint32</a> vertexSize = VB.getVertexSize();
+00254 <a class="code" href="a04558.html#a15">uint</a> colorOffset=0;
+00255
+00256 IDriver *drv = this-&gt;<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherea14">getDriver</a>();
+00257 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherea59">setupDriverModelMatrix</a>();
+00258 drv-&gt;activeVertexBuffer(VB);
+00259 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;incrementNbDrawnParticles(nbRibbons); <span class="comment">// for benchmark purpose </span>
+00260 <span class="keyword">const</span> <a class="code" href="a04558.html#a15">uint</a> numRibbonBatch = <a class="code" href="a03240.html#NL3D_1_1CPSTailDotz766_1">getNumRibbonsInVB</a>(); <span class="comment">// number of ribons to process at once </span>
+00261 <span class="keywordflow">if</span> (<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp11">_UsedNbSegs</a> == 0) <span class="keywordflow">return</span>;
+00262
+00264 <span class="comment">// Material setup //</span>
+00266 <span class="comment"></span> CParticleSystem &amp;ps = *(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner());
+00267 <span class="keywordtype">bool</span> useGlobalColor = ps.getColorAttenuationScheme() != NULL || ps.isUserColorUsed();
+00268 <span class="keywordflow">if</span> (useGlobalColor != <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr2">_GlobalColor</a>)
+00269 {
+00270 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr2">_GlobalColor</a> = useGlobalColor;
+00271 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotd2">touch</a>();
+00272 }
+00273 <span class="keywordflow">if</span> (<a class="code" href="a03162.html#NL3D_1_1CPSTailDota64">usesGlobalColorLighting</a>() != <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr3">_Lighted</a>)
+00274 {
+00275 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr3">_Lighted</a> = <a class="code" href="a03162.html#NL3D_1_1CPSTailDota64">usesGlobalColorLighting</a>();
+00276 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotd2">touch</a>();
+00277 }
+00278 <span class="keywordflow">if</span> (ps.getForceGlobalColorLightingFlag() != <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr1">_ForceLighted</a>)
+00279 {
+00280 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr1">_ForceLighted</a> = ps.getForceGlobalColorLightingFlag();
+00281 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotd2">touch</a>();
+00282 }
+00283 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotd4">updateMaterial</a>();
+00284 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotd1">setupGlobalColor</a>();
+00285 <span class="comment">//</span>
+00286 <span class="keywordflow">if</span> (<a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>)
+00287 {
+00288 colorOffset = VB.getColorOff();
+00289 }
+00290
+00292 <span class="comment">// Compute ribbons //</span>
+00294 <span class="comment"></span>
+00295 <a class="code" href="a04558.html#a15">uint</a> toProcess;
+00296 <a class="code" href="a04558.html#a15">uint</a> ribbonIndex = 0; <span class="comment">// index of the first ribbon in the batch being processed </span>
+00297 <a class="code" href="a04558.html#a11">uint32</a> fpRibbonIndex = 0; <span class="comment">// fixed point index in source</span>
+00298 <span class="keywordflow">do</span>
+00299 {
+00300 toProcess = <a class="code" href="a04061.html#a0">std::min</a>((<a class="code" href="a04558.html#a15">uint</a>) (nbRibbons - ribbonIndex) <span class="comment">/* = left to do */</span>, numRibbonBatch);
+00301 currVert = (<a class="code" href="a04558.html#a7">uint8</a> *) VB.getVertexCoordPointer();
+00302
+00304 <span class="keywordflow">if</span> (<a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>)
+00305 {
+00306 <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>-&gt;makeN(this-&gt;_Owner, ribbonIndex, currVert + colorOffset, vertexSize, toProcess, _UsedNbSegs + 1, srcStep);
+00307 }
+00308 <a class="code" href="a04558.html#a15">uint</a> k = toProcess;
+00310 <span class="comment">// interpolate and project points the result is directly setup in the vertex buffer //</span>
+00312 <span class="comment"></span> <span class="keywordflow">if</span> (!<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp9">_Parametric</a>)
+00313 {
+00314
+00316 <span class="comment">// INCREMENTAL CASE //</span>
+00318 <span class="comment"></span> <span class="keywordflow">do</span>
+00319 {
+00320 <span class="comment">// the parent class has a method to get the ribbons positions</span>
+00321 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotb1">computeRibbon</a>((<a class="code" href="a04558.html#a15">uint</a>) (fpRibbonIndex &gt;&gt; 16), (CVector *) currVert, vertexSize);
+00322 currVert += vertexSize * (<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp11">_UsedNbSegs</a> + 1);
+00323 fpRibbonIndex += srcStep;
+00324 }
+00325 <span class="keywordflow">while</span> (--k);
+00326 }
+00327 <span class="keywordflow">else</span>
+00328 {
+00330 <span class="comment">// PARAMETRIC CASE //</span>
+00332 <span class="comment"></span> <span class="keywordflow">do</span>
+00333 {
+00334 <span class="comment">// we compute each pos thanks to the parametric curve </span>
+00335 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;integrateSingle(date - _UsedSegDuration * (_UsedNbSegs + 1), _UsedSegDuration, _UsedNbSegs + 1, (<a class="code" href="a04558.html#a15">uint</a>) (fpRibbonIndex &gt;&gt; 16),
+00336 (<a class="code" href="a03128.html">NLMISC::CVector</a> *) currVert, vertexSize);
+00337 currVert += vertexSize * (_UsedNbSegs + 1);
+00338 fpRibbonIndex += srcStep;
+00339 }
+00340 <span class="keywordflow">while</span> (--k);
+00341
+00342 }
+00343 PB.setNumLine(_UsedNbSegs * toProcess);
+00344 <span class="comment">// display the result</span>
+00345 drv-&gt;render(PB, _Mat);
+00346 ribbonIndex += toProcess;
+00347 }
+00348 <span class="keywordflow">while</span> (ribbonIndex != nbRibbons);
+00349 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea8" doxytag="NL3D::CPSTailDot::doesProduceBBox" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NL3D::CPSLocatedBindable::doesProduceBBox </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02690.html#NL3D_1_1CPSTurbula7">NL3D::CPSForce</a>.
+<p>
+Definition at line <a class="el" href="a06247.html#l00888">888</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+<div class="fragment"><pre>00888 { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota7" doxytag="NL3D::CPSTailDot::draw" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NL3D::CPSParticle::draw </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>opaque</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+derivers draw the particles here
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03177.html#NL3D_1_1CPSDotb5">NL3D::CPSDot</a>, <a class="el" href="a03191.html#NL3D_1_1CPSFaceLookAtb10">NL3D::CPSFaceLookAt</a>, <a class="el" href="a03194.html#NL3D_1_1CPSFanLightd0">NL3D::CPSFanLight</a>, and <a class="el" href="a03233.html#NL3D_1_1CPSShockWaved0">NL3D::CPSShockWave</a>.
+<p>
+Definition at line <a class="el" href="a06258.html#l00110">110</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+Referenced by <a class="el" href="a06258.html#l00074">NL3D::CPSParticle::step()</a>.
+<p>
+<div class="fragment"><pre>00110 {}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota8" doxytag="NL3D::CPSTailDot::enableGlobalColorLighting" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSParticle::enableGlobalColorLighting </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>enabled</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00105">105</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+References <a class="el" href="a06258.html#l00184">NL3D::CPSParticle::_UsesGlobalColorLighting</a>.
+<p>
+<div class="fragment"><pre>00105 { _UsesGlobalColorLighting = enabled; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota9" doxytag="NL3D::CPSTailDot::enableZTest" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSMaterial::enableZTest </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>enabled</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+===================================================================================
+<p>
+
+<p>
+Definition at line <a class="el" href="a06257.html#l00508">508</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+References <a class="el" href="a05641.html#l00099">NL3D::CMaterial::setZFunc()</a>.
+<p>
+<div class="fragment"><pre>00509 {
+00510 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setZFunc(enabled ? CMaterial::less : CMaterial::always);
+00511 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea9" doxytag="NL3D::CPSTailDot::enumTexs" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NL3D::CPSLocatedBindable::enumTexs </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::vector&lt; <a class="el" href="a03408.html">NLMISC::CSmartPtr</a>&lt; <a class="el" href="a03487.html">ITexture</a> &gt; &gt; &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>dest</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a02434.html">IDriver</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>drv</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03194.html#NL3D_1_1CPSFanLighta9">NL3D::CPSFanLight</a>, <a class="el" href="a03187.html#NL3D_1_1CPSQuada13">NL3D::CPSQuad</a>, <a class="el" href="a03226.html#NL3D_1_1CPSRibbona10">NL3D::CPSRibbon</a>, <a class="el" href="a03230.html#NL3D_1_1CPSRibbonLookAta10">NL3D::CPSRibbonLookAt</a>, and <a class="el" href="a03233.html#NL3D_1_1CPSShockWavea11">NL3D::CPSShockWave</a>.
+<p>
+Definition at line <a class="el" href="a06247.html#l00977">977</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+<div class="fragment"><pre>00977 {}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz743_0" doxytag="NL3D::CPSTailDot::finalize" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSLocatedBindable::finalize </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+***************************************************************************************
+<p>
+this should be called before to delete any bindable inserted in a system, but this is done by the system, so you should never need calling it. This has been introduced because calls in dtor are not polymorphic to derived class (which are already destroyed anyway), and some infos are needed in some dtor. The default behaviour does nothing
+<p>
+Reimplemented in <a class="el" href="a02689.html#NL3D_1_1CPSZoneSpherea10">NL3D::CPSTargetLocatedBindable</a>.
+<p>
+Definition at line <a class="el" href="a06246.html#l01975">1975</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06247.html#l00974">NL3D::CPSLocatedBindable::getUserMatrixUsageCount()</a>, and <a class="el" href="a06142.html#l01907">NL3D::CParticleSystem::releaseRefForUserSysCoordInfo()</a>.
+<p>
+<div class="fragment"><pre>01976 {
+01977 <span class="keywordflow">if</span> (<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a> &amp;&amp; <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner())
+01978 {
+01979 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner()-&gt;releaseRefForUserSysCoordInfo(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherea36">getUserMatrixUsageCount</a>());
+01980 }
+01981 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota11" doxytag="NL3D::CPSTailDot::forceModulateConstantColor" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSMaterial::forceModulateConstantColor </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname" nowrap> <em>force</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>const <a class="el" href="a03337.html">NLMISC::CRGBA</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>col</em> = <a class="el" href="a03337.html#NLMISC_1_1CRGBAs6">NLMISC::CRGBA::White</a></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+===================================================================================
+<p>
+Force the material to have one texture that is modulated by diffuse, and a constant color and its diffuse color. This is not compatible with multitextureing, however. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>force</em>&nbsp;</td><td>true to force constant color modulation</td></tr>
+ </table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06257.html#l00573">573</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+References <a class="el" href="a06257.html#l00598">NL3D::CPSMaterial::forceTexturedMaterialStages()</a>, <a class="el" href="a05641.html#l00046">NL3D::CMaterial::getTexture()</a>, <a class="el" href="a05968.html#l00322">NL3D::CMaterial::setTexture()</a>, <a class="el" href="a05641.html#l00268">NL3D::CMaterial::texConstantColor()</a>, <a class="el" href="a05641.html#l00247">NL3D::CMaterial::texEnvArg0Alpha()</a>, <a class="el" href="a05641.html#l00221">NL3D::CMaterial::texEnvArg0RGB()</a>, <a class="el" href="a05641.html#l00256">NL3D::CMaterial::texEnvArg1Alpha()</a>, <a class="el" href="a05641.html#l00229">NL3D::CMaterial::texEnvArg1RGB()</a>, <a class="el" href="a05641.html#l00240">NL3D::CMaterial::texEnvOpAlpha()</a>, and <a class="el" href="a05641.html#l00214">NL3D::CMaterial::texEnvOpRGB()</a>.
+<p>
+Referenced by <a class="el" href="a06277.html#l00319">NL3D::CPSRibbonLookAt::displayRibbons()</a>, <a class="el" href="a06279.html#l00286">NL3D::CPSShockWave::draw()</a>, and <a class="el" href="a06262.html#l00520">NL3D::CPSQuad::updateMatBeforeRendering()</a>.
+<p>
+<div class="fragment"><pre>00574 {
+00575 <span class="keywordflow">if</span> (force)
+00576 {
+00578 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texConstantColor(1, col);
+00579 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texEnvOpRGB(1, CMaterial::Modulate);
+00580 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texEnvOpAlpha(1, CMaterial::Modulate);
+00581 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texEnvArg0RGB(1, CMaterial::Previous, CMaterial::SrcColor);
+00582 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texEnvArg1RGB(1, CMaterial::Constant, CMaterial::SrcColor);
+00583 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texEnvArg0Alpha(1, CMaterial::Previous, CMaterial::SrcAlpha);
+00584 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texEnvArg1Alpha(1, CMaterial::Constant, CMaterial::SrcAlpha);
+00585 <a class="code" href="a03178.html#NL3D_1_1CPSTailDota12">forceTexturedMaterialStages</a>(2);
+00586 }
+00587 <span class="keywordflow">else</span>
+00588 {
+00589 <span class="keywordflow">if</span> (<a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.getTexture(1) != NULL)
+00590 {
+00591 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setTexture(1, NULL);
+00592 }
+00593 }
+00594 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota12" doxytag="NL3D::CPSTailDot::forceTexturedMaterialStages" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSMaterial::forceTexturedMaterialStages </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>numStages</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+===================================================================================
+<p>
+This setup n stage of a material with at least texture.<ul>
+<li>If a texture was present for a given stage it still is</li><li>If a texture wasn't present, it create a dummy white texture there</li><li>Above numStages, textures are disabled. It can be used to do extra math with stages that have no textures (required by the driver)</li></ul>
+
+<p>
+Definition at line <a class="el" href="a06257.html#l00598">598</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+References <a class="el" href="a05641.html#l00046">NL3D::CMaterial::getTexture()</a>, <a class="el" href="a05969.html#l00047">NL3D::IDRV_MAT_MAXTEXTURES</a>, <a class="el" href="a05968.html#l00322">NL3D::CMaterial::setTexture()</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+Referenced by <a class="el" href="a06226.html#l00122">NL3D::CPSDot::draw()</a>, <a class="el" href="a06257.html#l00573">NL3D::CPSMaterial::forceModulateConstantColor()</a>, and <a class="el" href="a06235.html#l00286">NL3D::CPSFanLight::setupMaterial()</a>.
+<p>
+<div class="fragment"><pre>00599 {
+00600 ITexture *blankTex = NULL;
+00601 <a class="code" href="a04558.html#a15">uint</a> k;
+00602 <span class="keywordflow">for</span> (k = 0; k &lt; numStages; ++k)
+00603 {
+00604 <span class="keywordflow">if</span> (<a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.getTexture(k) == NULL)
+00605 {
+00606 <span class="keywordflow">if</span> (!blankTex)
+00607 {
+00608 blankTex = CTextureMem::Create1x1WhiteTex();
+00609 }
+00610 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setTexture(k, blankTex);
+00611 }
+00612 }
+00613 <span class="keywordflow">for</span> (; k &lt; <a class="code" href="a05363.html#a83">IDRV_MAT_MAXTEXTURES</a>; ++k)
+00614 {
+00615 <span class="keywordflow">if</span> (<a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.getTexture(k) != NULL)
+00616 {
+00617 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setTexture(k, NULL);
+00618 }
+00619 }
+00620 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota13" doxytag="NL3D::CPSTailDot::getBlendingMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9">CPSMaterial::TBlendingMode</a> NL3D::CPSMaterial::getBlendingMode </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+===================================================================================
+<p>
+
+<p>
+Definition at line <a class="el" href="a06257.html#l00551">551</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+References <a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw1">NL3D::CPSMaterial::alphaBlend</a>, <a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw2">NL3D::CPSMaterial::alphaTest</a>, <a class="el" href="a05969.html#l00278">NL3D::CMaterial::getBlend()</a>, <a class="el" href="a05969.html#l00280">NL3D::CMaterial::getDstBlend()</a>, <a class="el" href="a05969.html#l00279">NL3D::CMaterial::getSrcBlend()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00352">hasTransparentFaces()</a>, <a class="el" href="a06279.html#l00206">NL3D::CPSShockWave::hasTransparentFaces()</a>, <a class="el" href="a06277.html#l00524">NL3D::CPSRibbonLookAt::hasTransparentFaces()</a>, <a class="el" href="a06273.html#l00675">NL3D::CPSRibbon::hasTransparentFaces()</a>, <a class="el" href="a06262.html#l00226">NL3D::CPSQuad::hasTransparentFaces()</a>, <a class="el" href="a06235.html#l00252">NL3D::CPSFanLight::hasTransparentFaces()</a>, and <a class="el" href="a06226.html#l00250">NL3D::CPSDot::hasTransparentFaces()</a>.
+<p>
+<div class="fragment"><pre>00552 {
+00553 <span class="keywordflow">if</span> (<a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.getBlend())
+00554 {
+00555 CMaterial::TBlend srcBlend = <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.getSrcBlend();
+00556 CMaterial::TBlend destBlend = <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.getDstBlend();
+00557
+00558 <span class="keywordflow">if</span> (srcBlend == CMaterial::one &amp;&amp; destBlend == CMaterial::one) <span class="keywordflow">return</span> <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw0">add</a>;
+00559 <span class="keywordflow">if</span> (srcBlend == CMaterial::zero &amp;&amp; destBlend == CMaterial::srccolor) <span class="keywordflow">return</span> <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw7">modulate</a>;
+00560 <span class="keywordflow">if</span> (srcBlend == CMaterial::srcalpha &amp;&amp; destBlend == CMaterial::invsrcalpha) <span class="keywordflow">return</span> <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw1">alphaBlend</a>;
+00561
+00562 <span class="comment">// unrecognized mode</span>
+00563 <a class="code" href="a04199.html#a6">nlassert</a>(0);
+00564 <span class="keywordflow">return</span> <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw2">alphaTest</a>; <span class="comment">// to avoid a warning only ...</span>
+00565 }
+00566 <span class="keywordflow">else</span>
+00567 {
+00568 <span class="keywordflow">return</span> <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw2">alphaTest</a>;
+00569 }
+00570 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1ITrackKeyFramer_3_01CKeyVector_01_4a6" doxytag="NL3D::CPSTailDot::getClassName" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual std::string NLMISC::IClassable::getClassName </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [pure virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Implemented in <a class="el" href="a02995.html#NLAIAGENT_1_1CNumericIndexz1699_0">NLAIAGENT::CNumericIndex</a>, <a class="el" href="a02145.html#NLAIAGENT_1_1VectorTypez1764_0">NLAIC::IPointerGestion</a>, <a class="el" href="a02650.html#NLAIC_1_1CIdentTypez1766_0">NLAIC::CIdentType</a>, and <a class="el" href="a02241.html#CAutomataDescz1896_0">CAutomataDesc</a>.
+<p>
+Referenced by <a class="el" href="a05549.html#l00091">NLMISC::CClassRegistry::checkObject()</a>, and <a class="el" href="a06525.html#l00039">NL3D::GetTextureSize()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota15" doxytag="NL3D::CPSTailDot::getColor" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03337.html">NLMISC::CRGBA</a> NL3D::CPSColoredParticle::getColor </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the color.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00211">211</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+<div class="fragment"><pre>00211 { <span class="keywordflow">return</span> <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp1">_Color</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz764_0" doxytag="NL3D::CPSTailDot::getColorFading" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NL3D::CPSTailDot::getColorFading </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Test wether color fading is activated.
+<p>
+Implements <a class="el" href="a03229.html#NL3D_1_1CPSTailParticlea0">NL3D::CPSTailParticle</a>.
+<p>
+Definition at line <a class="el" href="a06284.html#l00070">70</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>.
+<p>
+<div class="fragment"><pre>00071 {
+00072 <span class="keywordflow">return</span> <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>;
+00073 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb6" doxytag="NL3D::CPSTailDot::getColorOwner" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual <a class="el" href="a03214.html">CPSLocated</a>* NL3D::CPSTailDot::getColorOwner </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+deriver must return their owner there
+<p>
+
+<p>
+Implements <a class="el" href="a03157.html#NL3D_1_1CPSColoredParticleb1">NL3D::CPSColoredParticle</a>.
+<p>
+Definition at line <a class="el" href="a06284.html#l00126">126</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>.
+<p>
+<div class="fragment"><pre>00126 { <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota16" doxytag="NL3D::CPSTailDot::getColorScheme" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const <a class="el" href="a03136.html">CPSAttribMaker</a>&lt;<a class="el" href="a03337.html">CRGBA</a>&gt;* NL3D::CPSColoredParticle::getColorScheme </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+get the color scheme (NULL if none) const version
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00205">205</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+<div class="fragment"><pre>00205 { <span class="keywordflow">return</span> <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota17" doxytag="NL3D::CPSTailDot::getColorScheme" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03136.html">CPSAttribMaker</a>&lt;<a class="el" href="a03337.html">CRGBA</a>&gt;* NL3D::CPSColoredParticle::getColorScheme </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+get the color scheme (NULL if none)
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00202">202</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+<div class="fragment"><pre>00202 { <span class="keywordflow">return</span> <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea14" doxytag="NL3D::CPSTailDot::getDriver" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a02434.html">IDriver</a>* NL3D::CPSLocatedBindable::getDriver </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+shortcut to get an instance of the driver
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00890">890</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06246.html#l00705">NL3D::CPSLocated::getDriver()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+Referenced by <a class="el" href="a06246.html#l02038">NL3D::CPSLocatedBindable::displayIcon2d()</a>, <a class="el" href="a06283.html#l00242">displayRibbons()</a>, <a class="el" href="a06277.html#l00319">NL3D::CPSRibbonLookAt::displayRibbons()</a>, <a class="el" href="a06273.html#l00471">NL3D::CPSRibbon::displayRibbons()</a>, <a class="el" href="a06226.html#l00122">NL3D::CPSDot::draw()</a>, <a class="el" href="a06231.html#l00055">NL3D::CPSFaceHelper::drawFaces()</a>, <a class="el" href="a06235.html#l00072">NL3D::CPSFanLightHelper::drawFanLight()</a>, <a class="el" href="a06233.html#l00379">NL3D::CPSFaceLookAtHelper::drawLookAt()</a>, <a class="el" href="a06233.html#l00089">NL3D::CPSFaceLookAtHelper::drawLookAtAlignOnMotion()</a>, <a class="el" href="a06250.html#l00521">NL3D::CPSConstraintMeshHelper::drawMeshs()</a>, <a class="el" href="a06250.html#l00793">NL3D::CPSConstraintMeshHelper::drawPrerotatedMeshs()</a>, <a class="el" href="a06287.html#l01375">NL3D::CPSZoneRectangle::show()</a>, <a class="el" href="a06287.html#l01160">NL3D::CPSZoneCylinder::show()</a>, <a class="el" href="a06287.html#l00625">NL3D::CPSZoneDisc::show()</a>, <a class="el" href="a06287.html#l00448">NL3D::CPSZoneSphere::show()</a>, <a class="el" href="a06287.html#l00140">NL3D::CPSZonePlane::show()</a>, <a class="el" href="a06244.html#l00363">NL3D::CPSLight::show()</a>, <a class="el" href="a06239.html#l00900">NL3D::CPSCylindricVortex::show()</a>, <a class="el" href="a06239.html#l00413">NL3D::CPSGravity::show()</a>, <a class="el" href="a06239.html#l00295">NL3D::CPSDirectionnalForce::show()</a>, <a class="el" href="a06229.html#l02491">NL3D::CPSSphericalEmitter::showTool()</a>, <a class="el" href="a06229.html#l02391">NL3D::CPSEmitterRectangle::showTool()</a>, and <a class="el" href="a06229.html#l00447">NL3D::CPSEmitter::showTool()</a>.
+<p>
+<div class="fragment"><pre>00891 {
+00892 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+00893 <a class="code" href="a04199.html#a6">nlassert</a>(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getDriver());
+00894 <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getDriver();
+00895 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea15" doxytag="NL3D::CPSTailDot::getExternID" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> NL3D::CPSLocatedBindable::getExternID </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+get the extern ID of this located bindable
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00964">964</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06247.html#l01027">NL3D::CPSLocatedBindable::_ExternID</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+Referenced by <a class="el" href="a06246.html#l00751">NL3D::CPSLocated::bind()</a>, and <a class="el" href="a06142.html#l01096">NL3D::CParticleSystem::unregisterLocatedBindableExternID()</a>.
+<p>
+<div class="fragment"><pre>00964 { <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep3">_ExternID</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea16" doxytag="NL3D::CPSTailDot::getFontGenerator" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const <a class="el" href="a02541.html">CFontGenerator</a>* NL3D::CPSLocatedBindable::getFontGenerator </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Shortcut to get the font generator if one was set (const version).
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00904">904</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06150.html#l00071">NL3D::CParticleSystemProcess::getFontGenerator()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>00905 {
+00906 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+00907 <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getFontGenerator();
+00908 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea17" doxytag="NL3D::CPSTailDot::getFontGenerator" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a02541.html">CFontGenerator</a>* NL3D::CPSLocatedBindable::getFontGenerator </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Shortcut to get the font generator if one was set.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00897">897</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06150.html#l00071">NL3D::CParticleSystemProcess::getFontGenerator()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+Referenced by <a class="el" href="a06287.html#l01375">NL3D::CPSZoneRectangle::show()</a>, <a class="el" href="a06287.html#l01160">NL3D::CPSZoneCylinder::show()</a>, <a class="el" href="a06287.html#l00625">NL3D::CPSZoneDisc::show()</a>, <a class="el" href="a06287.html#l00140">NL3D::CPSZonePlane::show()</a>, <a class="el" href="a06239.html#l00900">NL3D::CPSCylindricVortex::show()</a>, <a class="el" href="a06239.html#l00413">NL3D::CPSGravity::show()</a>, and <a class="el" href="a06229.html#l02391">NL3D::CPSEmitterRectangle::showTool()</a>.
+<p>
+<div class="fragment"><pre>00898 {
+00899 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+00900 <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getFontGenerator();
+00901 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea18" doxytag="NL3D::CPSTailDot::getFontManager" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const <a class="el" href="a02542.html">CFontManager</a> * NL3D::CPSLocatedBindable::getFontManager </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Shortcut to get the font manager if one was set (const version).
+<p>
+
+<p>
+Definition at line <a class="el" href="a06246.html#l02099">2099</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a06150.html#l00085">NL3D::CParticleSystemProcess::getFontManager()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>02100 {
+02101 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+02102 <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getFontManager();
+02103 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea19" doxytag="NL3D::CPSTailDot::getFontManager" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a02542.html">CFontManager</a> * NL3D::CPSLocatedBindable::getFontManager </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+***************************************************************************************
+<p>
+
+<p>
+Definition at line <a class="el" href="a06246.html#l02091">2091</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a06150.html#l00085">NL3D::CParticleSystemProcess::getFontManager()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+Referenced by <a class="el" href="a06287.html#l01375">NL3D::CPSZoneRectangle::show()</a>, <a class="el" href="a06287.html#l01160">NL3D::CPSZoneCylinder::show()</a>, <a class="el" href="a06287.html#l00625">NL3D::CPSZoneDisc::show()</a>, <a class="el" href="a06287.html#l00140">NL3D::CPSZonePlane::show()</a>, <a class="el" href="a06239.html#l00900">NL3D::CPSCylindricVortex::show()</a>, <a class="el" href="a06239.html#l00413">NL3D::CPSGravity::show()</a>, and <a class="el" href="a06229.html#l02391">NL3D::CPSEmitterRectangle::showTool()</a>.
+<p>
+<div class="fragment"><pre>02092 {
+02093 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+02094 <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getFontManager();
+02095 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz754_0" doxytag="NL3D::CPSTailDot::getInterpolationMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">TInterpolationMode</a> NL3D::CPSRibbonBase::getInterpolationMode </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00064">64</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+References <a class="el" href="a06276.html#l00149">NL3D::CPSRibbonBase::_InterpolationMode</a>, and <a class="el" href="a06276.html#l00049">NL3D::CPSRibbonBase::TInterpolationMode</a>.
+<p>
+<div class="fragment"><pre>00064 { <span class="keywordflow">return</span> _InterpolationMode; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea20" doxytag="NL3D::CPSTailDot::getInvertedSysMat" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &amp; NL3D::CPSLocatedBindable::getInvertedSysMat </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+shortcut to get the inverted matrix of the system
+<p>
+
+<p>
+Definition at line <a class="el" href="a06246.html#l02116">2116</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a06143.html#l00190">NL3D::CParticleSystem::getInvertedSysMat()</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>02117 {
+02118 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+02119 <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner()-&gt;getInvertedSysMat();
+02120
+02121 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea21" doxytag="NL3D::CPSTailDot::getInvertedViewMat" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &amp; NL3D::CPSLocatedBindable::getInvertedViewMat </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+shortcut to get the inverted view matrix
+<p>
+
+<p>
+Definition at line <a class="el" href="a06246.html#l02134">2134</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a06143.html#l00223">NL3D::CParticleSystem::getInvertedViewMat()</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>02135 {
+02136 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+02137 <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner()-&gt;getInvertedViewMat();
+02138 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea22" doxytag="NL3D::CPSTailDot::getLocalToWorldMatrix" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &amp; NL3D::CPSLocatedBindable::getLocalToWorldMatrix </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Shortcut to get the local to world matrix.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l01144">1144</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06246.html#l00092">NL3D::CPSLocated::getLocalToWorldMatrix()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+Referenced by <a class="el" href="a06277.html#l00319">NL3D::CPSRibbonLookAt::displayRibbons()</a>, <a class="el" href="a06281.html#l00355">NL3D::CPSSound::newElement()</a>, <a class="el" href="a06287.html#l01375">NL3D::CPSZoneRectangle::show()</a>, <a class="el" href="a06287.html#l01160">NL3D::CPSZoneCylinder::show()</a>, <a class="el" href="a06287.html#l00625">NL3D::CPSZoneDisc::show()</a>, <a class="el" href="a06287.html#l00140">NL3D::CPSZonePlane::show()</a>, <a class="el" href="a06244.html#l00363">NL3D::CPSLight::show()</a>, <a class="el" href="a06239.html#l00413">NL3D::CPSGravity::show()</a>, <a class="el" href="a06229.html#l02391">NL3D::CPSEmitterRectangle::showTool()</a>, <a class="el" href="a06244.html#l00146">NL3D::CPSLight::step()</a>, and <a class="el" href="a06250.html#l00295">NL3D::CPSMesh::updatePos()</a>.
+<p>
+<div class="fragment"><pre>01145 {
+01146 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+01147 <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getLocalToWorldMatrix();
+01148 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea23" doxytag="NL3D::CPSTailDot::getLOD" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a05363.html#a558">TPSLod</a> NL3D::CPSLocatedBindable::getLOD </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+get the valid lods for that object
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00954">954</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06247.html#l01029">NL3D::CPSLocatedBindable::_LOD</a>, and <a class="el" href="a06248.html#l00036">NL3D::TPSLod</a>.
+<p>
+<div class="fragment"><pre>00954 { <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep4">_LOD</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota28" doxytag="NL3D::CPSTailDot::getLODDegradation" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> float NL3D::CPSRibbonBase::getLODDegradation </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00095">95</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+<div class="fragment"><pre>00095 { <span class="keywordflow">return</span> _LODDegradation; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota29" doxytag="NL3D::CPSTailDot::getMaxNumFaces" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> NL3D::CPSTailDot::getMaxNumFaces </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+return the max number of faces needed for display. This is needed for LOD balancing
+<p>
+
+<p>
+Implements <a class="el" href="a03162.html#NL3D_1_1CPSRibbonBasea23">NL3D::CPSParticle</a>.
+<p>
+Definition at line <a class="el" href="a06283.html#l00365">365</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a06247.html#l00369">NL3D::CPSLocated::getMaxSize()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00366 {
+00367 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+00368 <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getMaxSize() * <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a>;
+00369 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea25" doxytag="NL3D::CPSTailDot::getName" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> std::string NL3D::CPSLocatedBindable::getName </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+get the located bindable name (edition purpose)
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00948">948</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+<div class="fragment"><pre>00948 { <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep5">_Name</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz766_1" doxytag="NL3D::CPSTailDot::getNumRibbonsInVB" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> NL3D::CPSTailDot::getNumRibbonsInVB </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+get the number of ribbons contained in a vb for a given length. (e.g the number of ribbons that can be batched)
+<p>
+approximation of the max number of vertices we want in a vb
+<p>
+Definition at line <a class="el" href="a06283.html#l00434">434</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00242">displayRibbons()</a>, and <a class="el" href="a06283.html#l00374">getVBnPB()</a>.
+<p>
+<div class="fragment"><pre>00435 {
+00437 <span class="keyword">const</span> <a class="code" href="a04558.html#a15">uint</a> vertexInVB = 256;
+00438 <span class="keywordflow">return</span> std::max(1u, (<a class="code" href="a04558.html#a15">uint</a>) (vertexInVB / (_UsedNbSegs + 1)));
+00439 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea28" doxytag="NL3D::CPSTailDot::getOwner" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const <a class="el" href="a03214.html">CPSLocated</a>* NL3D::CPSLocatedBindable::getOwner </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+get the located that owns this bindable (const version)
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00944">944</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+<div class="fragment"><pre>00944 { <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea29" doxytag="NL3D::CPSTailDot::getOwner" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03214.html">CPSLocated</a>* NL3D::CPSLocatedBindable::getOwner </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+get the located that owns this bindable
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00942">942</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+Referenced by <a class="el" href="a06246.html#l01051">NL3D::CPSLocated::deleteElement()</a>, <a class="el" href="a06144.html#l00208">NL3D::CParticleSystemInstanceUser::emit()</a>, <a class="el" href="a06234.html#l00122">NL3D::CPSFaceLookAt::CSecondSize::getSizeOwner()</a>, <a class="el" href="a06281.html#l00355">NL3D::CPSSound::newElement()</a>, <a class="el" href="a06246.html#l01836">NL3D::CPSLocated::registerIntegrableForce()</a>, <a class="el" href="a06142.html#l01081">NL3D::CParticleSystem::registerLocatedBindableExternID()</a>, <a class="el" href="a06144.html#l00236">NL3D::CParticleSystemInstanceUser::removeByID()</a>, <a class="el" href="a06281.html#l00415">NL3D::CPSSound::resize()</a>, <a class="el" href="a06244.html#l00337">NL3D::CPSLight::resize()</a>, <a class="el" href="a06281.html#l00109">NL3D::CPSSound::step()</a>, <a class="el" href="a06246.html#l01851">NL3D::CPSLocated::unregisterIntegrableForce()</a>, and <a class="el" href="a06142.html#l01096">NL3D::CParticleSystem::unregisterLocatedBindableExternID()</a>.
+<p>
+<div class="fragment"><pre>00942 { <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota33" doxytag="NL3D::CPSTailDot::getPriority" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual <a class="el" href="a04558.html#a11">uint32</a> NL3D::CPSParticle::getPriority </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+return priority
+<p>
+
+<p>
+Implements <a class="el" href="a02691.html#NL3D_1_1CPSTargetLocatedBindablea25">NL3D::CPSLocatedBindable</a>.
+<p>
+Definition at line <a class="el" href="a06258.html#l00066">66</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+References <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00066 { <span class="keywordflow">return</span> 1000; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb7" doxytag="NL3D::CPSTailDot::getRibbonIndex" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> NL3D::CPSRibbonBase::getRibbonIndex </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00131">131</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+References <a class="el" href="a06276.html#l00143">NL3D::CPSRibbonBase::_RibbonIndex</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00131 { <span class="keywordflow">return</span> _RibbonIndex; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz755_0" doxytag="NL3D::CPSTailDot::getRibbonLength" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> float NL3D::CPSRibbonBase::getRibbonLength </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00084">84</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+References <a class="el" href="a06276.html#l00150">NL3D::CPSRibbonBase::_RibbonLength</a>.
+<p>
+<div class="fragment"><pre>00084 { <span class="keywordflow">return</span> _RibbonLength; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz754_1" doxytag="NL3D::CPSTailDot::getRibbonMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">TRibbonMode</a> NL3D::CPSRibbonBase::getRibbonMode </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00062">62</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+References <a class="el" href="a06276.html#l00148">NL3D::CPSRibbonBase::_RibbonMode</a>, and <a class="el" href="a06276.html#l00048">NL3D::CPSRibbonBase::TRibbonMode</a>.
+<p>
+<div class="fragment"><pre>00062 { <span class="keywordflow">return</span> _RibbonMode; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb8" doxytag="NL3D::CPSTailDot::getSamplingDate" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const <a class="el" href="a03227.html#NL3D_1_1CPSTailDotx0">TFloatVect</a>&amp; NL3D::CPSRibbonBase::getSamplingDate </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00133">133</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+References <a class="el" href="a06276.html#l00142">NL3D::CPSRibbonBase::_SamplingDate</a>, and <a class="el" href="a06276.html#l00099">NL3D::CPSRibbonBase::TFloatVect</a>.
+<p>
+<div class="fragment"><pre>00133 { <span class="keywordflow">return</span> _SamplingDate; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz755_1" doxytag="NL3D::CPSTailDot::getSegDuration" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a05363.html#a366">TAnimationTime</a> NL3D::CPSRibbonBase::getSegDuration </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00077">77</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+References <a class="el" href="a06276.html#l00102">NL3D::CPSRibbonBase::_SegDuration</a>, and <a class="el" href="a05454.html#l00044">NL3D::TAnimationTime</a>.
+<p>
+<div class="fragment"><pre>00077 { <span class="keywordflow">return</span> <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp10">_SegDuration</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb9" doxytag="NL3D::CPSTailDot::getSizeOwner" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual <a class="el" href="a03214.html">CPSLocated</a>* NL3D::CPSTailDot::getSizeOwner </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06284.html#l00125">125</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>.
+<p>
+<div class="fragment"><pre>00125 { <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea32" doxytag="NL3D::CPSTailDot::getSysMat" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &amp; NL3D::CPSLocatedBindable::getSysMat </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+***************************************************************************************
+<p>
+
+<p>
+Definition at line <a class="el" href="a06246.html#l02108">2108</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06143.html#l00184">NL3D::CParticleSystem::getSysMat()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>02109 {
+02110 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+02111 <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner()-&gt;getSysMat();
+02112 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz755_2" doxytag="NL3D::CPSTailDot::getTailNbSeg" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> NL3D::CPSRibbonBase::getTailNbSeg </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+get the number of segments used with this particle
+<p>
+
+<p>
+Implements <a class="el" href="a03229.html#NL3D_1_1CPSTailParticlea1">NL3D::CPSTailParticle</a>.
+<p>
+Definition at line <a class="el" href="a06276.html#l00072">72</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+References <a class="el" href="a06276.html#l00101">NL3D::CPSRibbonBase::_NbSegs</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00072 { <span class="keywordflow">return</span> <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota35" doxytag="NL3D::CPSTailDot::getType" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> NL3D::CPSParticle::getType </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+return this bindable type
+<p>
+
+<p>
+Implements <a class="el" href="a02691.html#NL3D_1_1CPSTargetLocatedBindablea29">NL3D::CPSLocatedBindable</a>.
+<p>
+Definition at line <a class="el" href="a06258.html#l00063">63</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+References <a class="el" href="a06247.html#l00806">NL3D::PSParticle</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00063 { <span class="keywordflow">return</span> <a class="code" href="a05363.html#a255">PSParticle</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea36" doxytag="NL3D::CPSTailDot::getUserMatrixUsageCount" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NL3D::CPSLocatedBindable::getUserMatrixUsageCount </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03179.html#NL3D_1_1CPSSphericalEmittera46">NL3D::CPSEmitter</a>.
+<p>
+Definition at line <a class="el" href="a06247.html#l00974">974</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+Referenced by <a class="el" href="a06246.html#l01975">NL3D::CPSLocatedBindable::finalize()</a>, and <a class="el" href="a06246.html#l01948">NL3D::CPSLocatedBindable::setOwner()</a>.
+<p>
+<div class="fragment"><pre>00974 { <span class="keywordflow">return</span> 0; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz766_2" doxytag="NL3D::CPSTailDot::getVBnPB" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03241.html">CPSTailDot::CVBnPB</a> &amp; NL3D::CPSTailDot::getVBnPB </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+get a vertex buffer and a primitive suited for the current ribbon
+<p>
+choose the right vb<p>
+Setup the pb and vb parts. Not very fast but executed only once<p>
+add 1 line in the primitive block
+<p>
+set the vb format &amp; size In the case of a ribbon with color and fading, we encode the fading in a texture If the ribbon has fading, but only a global color, we encode it in the primary color
+<p>
+Definition at line <a class="el" href="a06283.html#l00374">374</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a06283.html#l00434">getNumRibbonsInVB()</a>, <a class="el" href="a06284.html#l00148">NL3D::CPSTailDot::CVBnPB::PB</a>, <a class="el" href="a06711.html#l00568">NL3D::CVertexBuffer::setColor()</a>, <a class="el" href="a06197.html#l00069">NL3D::CPrimitiveBlock::setLine()</a>, <a class="el" href="a06197.html#l00061">NL3D::CPrimitiveBlock::setNumLine()</a>, <a class="el" href="a06710.html#l00409">NL3D::CVertexBuffer::setNumVertices()</a>, <a class="el" href="a06711.html#l00600">NL3D::CVertexBuffer::setTexCoord()</a>, <a class="el" href="a06710.html#l00169">NL3D::CVertexBuffer::setVertexFormat()</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a06284.html#l00147">NL3D::CPSTailDot::CVBnPB::VB</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00242">displayRibbons()</a>.
+<p>
+<div class="fragment"><pre>00375 {
+00377 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotz766_0">TVBMap</a> &amp;map = <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a> ? (<a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a> ? <a class="code" href="a03240.html#NL3D_1_1CPSTailDotz766_4">_FadedColoredVBMap</a> : <a class="code" href="a03240.html#NL3D_1_1CPSTailDotz766_3">_ColoredVBMap</a>) <span class="comment">// per ribbon coloçr</span>
+00378 : (<a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a> ? <a class="code" href="a03240.html#NL3D_1_1CPSTailDotz766_5">_FadedVBMap</a> : <a class="code" href="a03240.html#NL3D_1_1CPSTailDotz766_6">_VBMap</a>); <span class="comment">// global color</span>
+00379 TVBMap::iterator it = map.find(_UsedNbSegs + 1);
+00380 <span class="keywordflow">if</span> (it != map.end())
+00381 {
+00382 <span class="keywordflow">return</span> it-&gt;second;
+00383 }
+00384 <span class="keywordflow">else</span> <span class="comment">// must create this vb, with few different size, it is still interseting, though they are only destroyed at exit</span>
+00385 {
+00386 <span class="keyword">const</span> <a class="code" href="a04558.html#a15">uint</a> numRibbonInVB = <a class="code" href="a03240.html#NL3D_1_1CPSTailDotz766_1">getNumRibbonsInVB</a>();
+00387 CVBnPB &amp;VBnPB = map[<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp11">_UsedNbSegs</a> + 1]; <span class="comment">// make an entry</span>
+00388
+00392 CVertexBuffer &amp;vb = VBnPB.VB;
+00393 vb.setVertexFormat(CVertexBuffer::PositionFlag
+00394 |(_ColorScheme || _ColorFading ? CVertexBuffer::PrimaryColorFlag : 0)
+00395 | (_ColorScheme &amp;&amp; _ColorFading ? CVertexBuffer::TexCoord0Flag : 0));
+00396
+00397 vb.setNumVertices((_UsedNbSegs + 1) * numRibbonInVB ); <span class="comment">// 1 seg = 1 line + terminal vertices</span>
+00398
+00399 <span class="comment">// set the primitive block size</span>
+00400 CPrimitiveBlock &amp;pb = VBnPB.PB;
+00401 pb.setNumLine(_UsedNbSegs * numRibbonInVB);
+00403 <a class="code" href="a04558.html#a15">uint</a> vbIndex = 0;
+00404 <a class="code" href="a04558.html#a15">uint</a> pbIndex = 0;
+00405 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> i = 0; i &lt; numRibbonInVB; ++i)
+00406 {
+00407 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> k = 0; k &lt; (<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp11">_UsedNbSegs</a> + 1); ++k)
+00408 {
+00409
+00410 <span class="keywordflow">if</span> (<a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a> &amp;&amp; <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>)
+00411 {
+00412 vb.setTexCoord(vbIndex, 0, 0.5f - 0.5f * ((<span class="keywordtype">float</span>) k / _UsedNbSegs), 0);
+00413 }
+00414 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>)
+00415 {
+00416 <a class="code" href="a04558.html#a7">uint8</a> intensity = (<a class="code" href="a04558.html#a7">uint8</a>) (255 * (1.f - ((<span class="keywordtype">float</span>) k / <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp11">_UsedNbSegs</a>)));
+00417 <a class="code" href="a03337.html">NLMISC::CRGBA</a> col(intensity, intensity, intensity, intensity);
+00418 vb.setColor(vbIndex, col);
+00419 }
+00420
+00422 <span class="keywordflow">if</span> (k != <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp11">_UsedNbSegs</a>)
+00423 {
+00424 pb.setLine(pbIndex ++, vbIndex, vbIndex + 1);
+00425 }
+00426 ++vbIndex;
+00427 }
+00428 }
+00429 <span class="keywordflow">return</span> VBnPB;
+00430 }
+00431 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea37" doxytag="NL3D::CPSTailDot::getViewMat" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &amp; NL3D::CPSLocatedBindable::getViewMat </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+shortcut to get the view matrix
+<p>
+
+<p>
+Definition at line <a class="el" href="a06246.html#l02125">2125</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06143.html#l00220">NL3D::CParticleSystem::getViewMat()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+Referenced by <a class="el" href="a06277.html#l00319">NL3D::CPSRibbonLookAt::displayRibbons()</a>, and <a class="el" href="a06233.html#l00379">NL3D::CPSFaceLookAtHelper::drawLookAt()</a>.
+<p>
+<div class="fragment"><pre>02126 {
+02127 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+02128 <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner()-&gt;getViewMat();
+02129 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea38" doxytag="NL3D::CPSTailDot::hasEmitters" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NL3D::CPSLocatedBindable::hasEmitters </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+tells wether there are alive emitters
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00958">958</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+<div class="fragment"><pre>00958 { <span class="keywordflow">return</span> <span class="keyword">false</span>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota39" doxytag="NL3D::CPSTailDot::hasLightableFaces" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NL3D::CPSTailDot::hasLightableFaces </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+from <a class="el" href="a03162.html">CPSParticle</a> : return true if there are lightable faces in the object
+<p>
+
+<p>
+Implements <a class="el" href="a03162.html#NL3D_1_1CPSRibbonBasea33">NL3D::CPSParticle</a>.
+<p>
+Definition at line <a class="el" href="a06284.html#l00105">105</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>.
+<p>
+<div class="fragment"><pre>00105 { <span class="keywordflow">return</span> <span class="keyword">false</span>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota40" doxytag="NL3D::CPSTailDot::hasOpaqueFaces" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NL3D::CPSTailDot::hasOpaqueFaces </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+return true if there are Opaque faces in the object
+<p>
+
+<p>
+Implements <a class="el" href="a03162.html#NL3D_1_1CPSRibbonBasea34">NL3D::CPSParticle</a>.
+<p>
+Definition at line <a class="el" href="a06283.html#l00359">359</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a06283.html#l00352">hasTransparentFaces()</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00165">step()</a>.
+<p>
+<div class="fragment"><pre>00360 {
+00361 <span class="keywordflow">return</span> !<a class="code" href="a03240.html#NL3D_1_1CPSTailDota42">hasTransparentFaces</a>();
+00362 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota41" doxytag="NL3D::CPSTailDot::hasParticles" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NL3D::CPSParticle::hasParticles </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+return true if this located bindable derived class holds alive particles
+<p>
+
+<p>
+Reimplemented from <a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea39">NL3D::CPSLocatedBindable</a>.
+<p>
+Definition at line <a class="el" href="a06258.html#l00069">69</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+References <a class="el" href="a06247.html#l00361">NL3D::CPSLocated::getSize()</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>00069 { <a class="code" href="a04199.html#a6">nlassert</a>(_Owner); <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getSize() != 0; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota42" doxytag="NL3D::CPSTailDot::hasTransparentFaces" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NL3D::CPSTailDot::hasTransparentFaces </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+return true if there are transparent faces in the object
+<p>
+
+<p>
+Implements <a class="el" href="a03162.html#NL3D_1_1CPSRibbonBasea36">NL3D::CPSParticle</a>.
+<p>
+Definition at line <a class="el" href="a06283.html#l00352">352</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a06257.html#l00551">NL3D::CPSMaterial::getBlendingMode()</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00359">hasOpaqueFaces()</a>, and <a class="el" href="a06283.html#l00165">step()</a>.
+<p>
+<div class="fragment"><pre>00353 {
+00354 <span class="keywordflow">return</span> <a class="code" href="a03178.html#NL3D_1_1CPSTailDota13">getBlendingMode</a>() != CPSMaterial::alphaTest ;
+00355 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb10" doxytag="NL3D::CPSTailDot::initDateVect" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::initDateVect </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06275.html#l00568">568</a> of file <a class="el" href="a06275.html">ps_ribbon_base.cpp</a>.
+<p>
+References <a class="el" href="a06276.html#l00101">NL3D::CPSRibbonBase::_NbSegs</a>, <a class="el" href="a06276.html#l00142">NL3D::CPSRibbonBase::_SamplingDate</a>, and <a class="el" href="a06275.html#l00075">NL3D::EndRibbonStorage</a>.
+<p>
+Referenced by <a class="el" href="a06275.html#l00079">NL3D::CPSRibbonBase::CPSRibbonBase()</a>, <a class="el" href="a06275.html#l00550">NL3D::CPSRibbonBase::motionTypeChanged()</a>, and <a class="el" href="a06275.html#l00118">NL3D::CPSRibbonBase::setTailNbSeg()</a>.
+<p>
+<div class="fragment"><pre>00569 {
+00570 _SamplingDate.resize( _NbSegs + 1 + EndRibbonStorage);
+00571 std::fill(_SamplingDate.begin(), _SamplingDate.begin() + (<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a> + 1 + <a class="code" href="a05363.html#a267">EndRibbonStorage</a>), 0.f);
+00572 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea40" doxytag="NL3D::CPSTailDot::isActive" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NL3D::CPSLocatedBindable::isActive </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00844">844</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06247.html#l01033">NL3D::CPSLocatedBindable::_Active</a>.
+<p>
+Referenced by <a class="el" href="a06142.html#l01738">NL3D::CParticleSystem::hasActiveEmitters()</a>.
+<p>
+<div class="fragment"><pre>00844 { <span class="keywordflow">return</span> <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep0">_Active</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota44" doxytag="NL3D::CPSTailDot::isAutoLODDisabled" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NL3D::CPSParticle::isAutoLODDisabled </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Test wether Auto-LOD is disabled.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00140">140</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+References <a class="el" href="a06258.html#l00183">NL3D::CPSParticle::_DisableAutoLOD</a>.
+<p>
+<div class="fragment"><pre>00140 { <span class="keywordflow">return</span> _DisableAutoLOD; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz764_1" doxytag="NL3D::CPSTailDot::isInSystemBasis" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NL3D::CPSTailDot::isInSystemBasis </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+return true if the tails are in the system basis
+<p>
+
+<p>
+Implements <a class="el" href="a03229.html#NL3D_1_1CPSTailParticlea2">NL3D::CPSTailParticle</a>.
+<p>
+Definition at line <a class="el" href="a06284.html#l00082">82</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>.
+<p>
+<div class="fragment"><pre>00082 { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota45" doxytag="NL3D::CPSTailDot::isZTestEnabled" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NL3D::CPSMaterial::isZTestEnabled </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+===================================================================================
+<p>
+
+<p>
+Definition at line <a class="el" href="a06257.html#l00514">514</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+References <a class="el" href="a05969.html#l00334">NL3D::CMaterial::getZFunc()</a>.
+<p>
+<div class="fragment"><pre>00515 {
+00516 <span class="keywordflow">return</span> <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.getZFunc() != CMaterial::always;
+00517 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb11" doxytag="NL3D::CPSTailDot::motionTypeChanged" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::motionTypeChanged </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>parametric</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+called when the motion type has changed, this allow us to draw smoother ribbons when parametric anim is used
+<p>
+
+<p>
+Reimplemented from <a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherea41">NL3D::CPSLocatedBindable</a>.
+<p>
+Definition at line <a class="el" href="a06275.html#l00550">550</a> of file <a class="el" href="a06275.html">ps_ribbon_base.cpp</a>.
+<p>
+References <a class="el" href="a06276.html#l00103">NL3D::CPSRibbonBase::_Parametric</a>, <a class="el" href="a06276.html#l00146">NL3D::CPSRibbonBase::_Ribbons</a>, <a class="el" href="a05587.html#l00141">NLMISC::contReset()</a>, <a class="el" href="a06247.html#l00369">NL3D::CPSLocated::getMaxSize()</a>, <a class="el" href="a06275.html#l00568">NL3D::CPSRibbonBase::initDateVect()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06275.html#l00538">NL3D::CPSRibbonBase::resetFromOwner()</a>, and <a class="el" href="a06275.html#l00518">NL3D::CPSRibbonBase::resize()</a>.
+<p>
+<div class="fragment"><pre>00551 {
+00552 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp9">_Parametric</a> = parametric;
+00553 <span class="keywordflow">if</span> (parametric)
+00554 {
+00555 <a class="code" href="a05378.html#a381">NLMISC::contReset</a>(_Ribbons); <span class="comment">// kill the vector </span>
+00556 }
+00557 <span class="keywordflow">else</span>
+00558 {
+00559 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+00560 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotb16">resize</a>(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getMaxSize());
+00561 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotb10">initDateVect</a>();
+00562 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotb15">resetFromOwner</a>();
+00563 }
+00564 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb12" doxytag="NL3D::CPSTailDot::newColorElement" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSColoredParticle::newColorElement </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03214.html">CPSLocated</a> *&nbsp;</td>
+ <td class="mdname" nowrap> <em>emitterLocated</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>emitterIndex</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline, protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00233">233</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+References <a class="el" href="a06214.html#l00282">NL3D::CPSAttribMaker&lt; CRGBA &gt;::hasMemory()</a>, <a class="el" href="a06214.html#l00290">NL3D::CPSAttribMaker&lt; CRGBA &gt;::newElement()</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00212">newElement()</a>, <a class="el" href="a06279.html#l00451">NL3D::CPSShockWave::newElement()</a>, <a class="el" href="a06277.html#l00163">NL3D::CPSRibbonLookAt::newElement()</a>, <a class="el" href="a06273.html#l00313">NL3D::CPSRibbon::newElement()</a>, <a class="el" href="a06263.html#l00097">NL3D::CPSQuad::newElement()</a>, <a class="el" href="a06250.html#l01855">NL3D::CPSConstraintMesh::newElement()</a>, <a class="el" href="a06235.html#l00264">NL3D::CPSFanLight::newElement()</a>, and <a class="el" href="a06226.html#l00233">NL3D::CPSDot::newElement()</a>.
+<p>
+<div class="fragment"><pre>00234 {
+00235 <span class="keywordflow">if</span> (<a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a> &amp;&amp; <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>-&gt;hasMemory()) <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>-&gt;newElement(emitterLocated, emitterIndex);
+00236 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb13" doxytag="NL3D::CPSTailDot::newElement" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSTailDot::newElement </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03214.html">CPSLocated</a> *&nbsp;</td>
+ <td class="mdname" nowrap> <em>emitterLocated</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>emitterIndex</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+inherited from <a class="el" href="a02691.html">CPSLocatedBindable</a>
+<p>
+
+<p>
+Reimplemented from <a class="el" href="a03227.html#NL3D_1_1CPSRibbonBaseb9">NL3D::CPSRibbonBase</a>.
+<p>
+Definition at line <a class="el" href="a06283.html#l00212">212</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a06258.html#l00233">NL3D::CPSColoredParticle::newColorElement()</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00213 {
+00214 CPSRibbonBase::newElement(emitterLocated, emitterIndex);
+00215 <a class="code" href="a03157.html#NL3D_1_1CPSTailDotb12">newColorElement</a>(emitterLocated, emitterIndex);
+00216 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz763_1" doxytag="NL3D::CPSTailDot::NLMISC_DECLARE_CLASS" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NL3D::CPSTailDot::NLMISC_DECLARE_CLASS </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03240.html">CPSTailDot</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+ctor
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb14" doxytag="NL3D::CPSTailDot::notifyOwnerMaxNumFacesChanged" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSParticle::notifyOwnerMaxNumFacesChanged </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Shortcut to notify that the max number of faces has changed This must be called when a geometric property of the particle has been modified This needn't to be called during <a class="el" href="a03162.html#NL3D_1_1CPSParticleb6">CPSParticle::resize</a> overrides
+<p>
+Definition at line <a class="el" href="a06258.html#l00151">151</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+References <a class="el" href="a06246.html#l00422">NL3D::CPSLocated::notifyMaxNumFacesChanged()</a>.
+<p>
+Referenced by <a class="el" href="a06235.html#l00422">NL3D::CPSFanLight::setNbFans()</a>, <a class="el" href="a06279.html#l00218">NL3D::CPSShockWave::setNbSegs()</a>, and <a class="el" href="a06250.html#l01134">NL3D::CPSConstraintMesh::update()</a>.
+<p>
+<div class="fragment"><pre>00152 {
+00153 <span class="keywordflow">if</span> (<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>)
+00154 {
+00155 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;notifyMaxNumFacesChanged();
+00156 }
+00157 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota46" doxytag="NL3D::CPSTailDot::notifyTargetRemoved" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSLocatedBindable::notifyTargetRemoved </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03214.html">CPSLocated</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>ptr</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+***************************************************************************************
+<p>
+Can be used by located bindable that have located as targets (emitter, collision zone, forces) to be notified that one of their target has been removed. To do this : The object that focus the target must call registerDTorObserver on the target, with himself as a parameter When the target is removed, this target will call this method for all registered <a class="el" href="a03214.html">CPSLocated</a> The default behaviour remove this object as an observer<p>
+<dl compact><dt><b>See also:</b></dt><dd>CPSLocated::registerDTorObserver()</dd></dl>
+
+<p>
+Reimplemented in <a class="el" href="a03179.html#NL3D_1_1CPSSphericalEmittera55">NL3D::CPSEmitter</a>, and <a class="el" href="a02689.html#NL3D_1_1CPSZoneSphereb5">NL3D::CPSTargetLocatedBindable</a>.
+<p>
+Definition at line <a class="el" href="a06246.html#l01996">1996</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a06246.html#l00834">NL3D::CPSLocated::unregisterDtorObserver()</a>.
+<p>
+Referenced by <a class="el" href="a06246.html#l00185">NL3D::CPSLocated::releaseRefTo()</a>.
+<p>
+<div class="fragment"><pre>01997 {
+01998 ptr-&gt;unregisterDtorObserver(<span class="keyword">this</span>);
+01999 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota47" doxytag="NL3D::CPSTailDot::releaseAllRef" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSLocatedBindable::releaseAllRef </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+***************************************************************************************
+<p>
+Release any reference this obj may have to other process of the system For example, this is used when detaching a located bindable from a system.
+<p>
+Reimplemented in <a class="el" href="a03179.html#NL3D_1_1CPSSphericalEmittera57">NL3D::CPSEmitter</a>, <a class="el" href="a03213.html#NL3D_1_1CPSLightb4">NL3D::CPSLight</a>, <a class="el" href="a02689.html#NL3D_1_1CPSZoneSpherea45">NL3D::CPSTargetLocatedBindable</a>, and <a class="el" href="a03218.html#NL3D_1_1CPSMeshb15">NL3D::CPSMesh</a>.
+<p>
+Definition at line <a class="el" href="a06246.html#l02170">2170</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+Referenced by <a class="el" href="a06246.html#l01948">NL3D::CPSLocatedBindable::setOwner()</a>.
+<p>
+<div class="fragment"><pre>02171 {
+02172 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota48" doxytag="NL3D::CPSTailDot::releaseRefTo" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NL3D::CPSLocatedBindable::releaseRefTo </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="a03054.html">CParticleSystemProcess</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>other</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Release any reference this obj may have on the given process. For example, this is used when detaching a located bindable from a system.
+<p>
+Reimplemented in <a class="el" href="a03179.html#NL3D_1_1CPSSphericalEmittera58">NL3D::CPSEmitter</a>, and <a class="el" href="a02689.html#NL3D_1_1CPSZoneSpherea46">NL3D::CPSTargetLocatedBindable</a>.
+<p>
+Definition at line <a class="el" href="a06247.html#l00871">871</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+<div class="fragment"><pre>00871 {}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb15" doxytag="NL3D::CPSTailDot::resetFromOwner" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::resetFromOwner </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06275.html#l00538">538</a> of file <a class="el" href="a06275.html">ps_ribbon_base.cpp</a>.
+<p>
+References <a class="el" href="a06276.html#l00103">NL3D::CPSRibbonBase::_Parametric</a>, <a class="el" href="a06213.html#l00353">NL3D::CPSAttrib&lt; T &gt;::begin()</a>, <a class="el" href="a06213.html#l00356">NL3D::CPSAttrib&lt; T &gt;::end()</a>, <a class="el" href="a06247.html#l00334">NL3D::CPSLocated::getPos()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06275.html#l00528">NL3D::CPSRibbonBase::resetSingleRibbon()</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+Referenced by <a class="el" href="a06275.html#l00550">NL3D::CPSRibbonBase::motionTypeChanged()</a>, and <a class="el" href="a06275.html#l00518">NL3D::CPSRibbonBase::resize()</a>.
+<p>
+<div class="fragment"><pre>00539 {
+00540 <a class="code" href="a04199.html#a6">nlassert</a>(!_Parametric);
+00541 TPSAttribVector::iterator posIt = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getPos().begin();
+00542 TPSAttribVector::iterator endPosIt = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getPos().end();
+00543 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> k = 0; posIt != endPosIt; ++posIt, ++k)
+00544 {
+00545 <a class="code" href="a03227.html#NL3D_1_1CPSRibbonBased5">resetSingleRibbon</a>(k, *posIt);
+00546 }
+00547 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb16" doxytag="NL3D::CPSTailDot::resize" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSTailDot::resize </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>size</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+inherited from <a class="el" href="a02691.html">CPSLocatedBindable</a>
+<p>
+
+<p>
+Reimplemented from <a class="el" href="a03227.html#NL3D_1_1CPSRibbonBaseb12">NL3D::CPSRibbonBase</a>.
+<p>
+Definition at line <a class="el" href="a06283.html#l00228">228</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06258.html#l00241">NL3D::CPSColoredParticle::resizeColor()</a>, <a class="el" href="a05646.html#l00645">size</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00229 {
+00230 <a class="code" href="a04199.html#a6">nlassert</a>(size &lt; (1 &lt;&lt; 16));
+00231 CPSRibbonBase::resize(size);
+00232 <a class="code" href="a03157.html#NL3D_1_1CPSTailDotb17">resizeColor</a>(size);
+00233 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb17" doxytag="NL3D::CPSTailDot::resizeColor" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSColoredParticle::resizeColor </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>size</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00241">241</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+References <a class="el" href="a03157.html#NL3D_1_1CPSColoredParticleb1">NL3D::CPSColoredParticle::getColorOwner()</a>, <a class="el" href="a06214.html#l00282">NL3D::CPSAttribMaker&lt; CRGBA &gt;::hasMemory()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06214.html#l00296">NL3D::CPSAttribMaker&lt; CRGBA &gt;::resize()</a>, <a class="el" href="a05646.html#l00645">size</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00228">resize()</a>, <a class="el" href="a06279.html#l00469">NL3D::CPSShockWave::resize()</a>, <a class="el" href="a06277.html#l00181">NL3D::CPSRibbonLookAt::resize()</a>, <a class="el" href="a06273.html#l00331">NL3D::CPSRibbon::resize()</a>, <a class="el" href="a06262.html#l00276">NL3D::CPSQuad::resize()</a>, <a class="el" href="a06250.html#l01889">NL3D::CPSConstraintMesh::resize()</a>, <a class="el" href="a06235.html#l00432">NL3D::CPSFanLight::resize()</a>, and <a class="el" href="a06226.html#l00262">NL3D::CPSDot::resize()</a>.
+<p>
+<div class="fragment"><pre>00242 {
+00243 <a class="code" href="a04199.html#a6">nlassert</a>(size &lt; (1 &lt;&lt; 16));
+00244 <span class="keywordflow">if</span> (<a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a> &amp;&amp; <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>-&gt;hasMemory()) <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>-&gt;resize(size, <a class="code" href="a03240.html#NL3D_1_1CPSTailDotb6">getColorOwner</a>()-&gt;getSize());
+00245 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz763_2" doxytag="NL3D::CPSTailDot::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSTailDot::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02270.html">NLMISC::IStream</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>f</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> throw (<a class="el" href="a03781.html">NLMISC::EStream</a>)<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+serialisation. Derivers must override this, and call their parent version
+<p>
+
+<p>
+we had CPSParticle::serial(f), but this is not the base class anymore, so we emulate this... version 2 : auto-lod saved
+<p>
+Reimplemented from <a class="el" href="a03227.html#NL3D_1_1CPSRibbonBasez753_1">NL3D::CPSRibbonBase</a>.
+<p>
+Definition at line <a class="el" href="a06283.html#l00084">84</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05981.html#l00104">sint</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00085 {
+00086
+00087 <a class="code" href="a04558.html#a14">sint</a> ver = f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion</a>(3);
+00088 <span class="keywordflow">if</span> (ver == 1)
+00089 {
+00090 <a class="code" href="a04199.html#a6">nlassert</a>(f.<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>());
+00091
+00094 <a class="code" href="a04558.html#a14">sint</a> ver2 = f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion</a>(2);
+00095
+00096 <span class="comment">// here is CPSLocatedBindable::serial(f)</span>
+00097 <a class="code" href="a04558.html#a14">sint</a> ver3 = f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion</a>(4);
+00098 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_7">serialPtr</a>(_Owner);
+00099 <span class="keywordflow">if</span> (ver3 &gt; 1) f.<a class="code" href="a02270.html#NLMISC_1_1IStreama7">serialEnum</a>(_LOD);
+00100 <span class="keywordflow">if</span> (ver3 &gt; 2) f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_Name);
+00101 <span class="keywordflow">if</span> (ver3 &gt; 3)
+00102 {
+00103 <span class="keywordflow">if</span> (f.<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00104 {
+00105 <a class="code" href="a04558.html#a11">uint32</a> <span class="keywordtype">id</span>;
+00106 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(<span class="keywordtype">id</span>);
+00107 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherea52">setExternID</a>(<span class="keywordtype">id</span>);
+00108 }
+00109 <span class="keywordflow">else</span>
+00110 {
+00111 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_ExternID);
+00112 }
+00113 }
+00114
+00115 <span class="keywordflow">if</span> (ver2 &gt;= 2)
+00116 {
+00117 <span class="keywordtype">bool</span> bDisableAutoLOD;
+00118 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(bDisableAutoLOD);
+00119 <a class="code" href="a03162.html#NL3D_1_1CPSTailDota5">disableAutoLOD</a>(bDisableAutoLOD);
+00120 }
+00121
+00122 <a class="code" href="a04558.html#a11">uint32</a> tailNbSegs;
+00123 <span class="keywordtype">bool</span> colorFading;
+00124 <span class="keywordtype">bool</span> systemBasisEnabled;
+00125
+00126 CPSColoredParticle::serialColorScheme(f);
+00127 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(tailNbSegs, colorFading, systemBasisEnabled);
+00128
+00129 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a> = colorFading;
+00130 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a> = tailNbSegs &gt;&gt; 1;
+00131 <span class="keywordflow">if</span> (<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a> &lt; 2) <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a> = 2;
+00132 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotz754_2">setInterpolationMode</a>(Linear);
+00133 <a class="code" href="a03178.html#NL3D_1_1CPSTailDota50">serialMaterial</a>(f);
+00134
+00135
+00136 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+00137 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotb16">resize</a>(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getMaxSize());
+00138 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotb10">initDateVect</a>();
+00139 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotb15">resetFromOwner</a>();
+00140 }
+00141
+00142 <span class="keywordflow">if</span> (ver &gt;= 2)
+00143 {
+00144 CPSRibbonBase::serial(f);
+00145 CPSColoredParticle::serialColorScheme(f);
+00146 CPSMaterial::serialMaterial(f);
+00147 <span class="keywordtype">bool</span> colorFading = <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>;
+00148 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(colorFading);
+00149 _ColorFading = colorFading;
+00150 <span class="keywordflow">if</span> (ver &gt;= 3)
+00151 {
+00152 <a class="code" href="a04558.html#a11">uint32</a> tailNbSegs = <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a>;
+00153 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(tailNbSegs);
+00154 }
+00155 <span class="keywordflow">if</span> (f.<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00156 {
+00157 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotz755_5">setTailNbSeg</a>(_NbSegs);
+00158 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotd2">touch</a>();
+00159 }
+00160 }
+00161 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota49" doxytag="NL3D::CPSTailDot::serialColorScheme" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSColoredParticle::serialColorScheme </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02270.html">NLMISC::IStream</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>f</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> throw (<a class="el" href="a03781.html">NLMISC::EStream</a>)<code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+serialization.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06257.html#l00155">155</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+<div class="fragment"><pre>00156 {
+00157 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion</a>(1);
+00158 <span class="keywordflow">if</span> (f.<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00159 {
+00160 <span class="keywordflow">if</span> (<a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>)
+00161 {
+00162 <span class="keyword">delete</span> <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>;
+00163 <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a> = NULL;
+00164 }
+00165 }
+00166 <span class="keywordtype">bool</span> useColorScheme = <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a> != NULL;
+00167 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(useColorScheme);
+00168 <span class="keywordflow">if</span> (useColorScheme)
+00169 {
+00170 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_6">serialPolyPtr</a>(_ColorScheme);
+00171 }
+00172 <span class="keywordflow">else</span>
+00173 {
+00174 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_Color);
+00175 }
+00176 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota50" doxytag="NL3D::CPSTailDot::serialMaterial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSMaterial::serialMaterial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02270.html">NLMISC::IStream</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>f</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> throw (<a class="el" href="a03781.html">NLMISC::EStream</a>)<code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+===================================================================================
+<p>
+
+<p>
+Definition at line <a class="el" href="a06257.html#l00493">493</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+References <a class="el" href="a05981.html#l00104">sint</a>.
+<p>
+<div class="fragment"><pre>00494 {
+00495 <a class="code" href="a04558.html#a14">sint</a> ver = f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion</a>(2);
+00496 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9">TBlendingMode</a> m = <a class="code" href="a03178.html#NL3D_1_1CPSTailDota13">getBlendingMode</a>();
+00497 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama7">serialEnum</a>(m);
+00498 <a class="code" href="a03178.html#NL3D_1_1CPSTailDota52">setBlendingMode</a>(m);
+00499 <span class="keywordflow">if</span> (ver &gt;= 2)
+00500 {
+00501 <span class="keywordtype">bool</span> zTest = <a class="code" href="a03178.html#NL3D_1_1CPSTailDota45">isZTestEnabled</a>();
+00502 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(zTest);
+00503 <a class="code" href="a03178.html#NL3D_1_1CPSTailDota9">enableZTest</a>(zTest);
+00504 }
+00505 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea49" doxytag="NL3D::CPSTailDot::setActive" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSLocatedBindable::setActive </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>active</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Activate / Deactivate this object. When not active, the owning system won't try to call the 'step' method.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00843">843</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06247.html#l01033">NL3D::CPSLocatedBindable::_Active</a>.
+<p>
+Referenced by <a class="el" href="a06142.html#l01718">NL3D::CParticleSystem::activateEmitters()</a>, and <a class="el" href="a06144.html#l00320">NL3D::CParticleSystemInstanceUser::setActive()</a>.
+<p>
+<div class="fragment"><pre>00843 { <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep0">_Active</a> = active; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota52" doxytag="NL3D::CPSTailDot::setBlendingMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSMaterial::setBlendingMode </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9">CPSMaterial::TBlendingMode</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>mode</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+===================================================================================
+<p>
+
+<p>
+Definition at line <a class="el" href="a06257.html#l00520">520</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+References <a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw1">NL3D::CPSMaterial::alphaBlend</a>, <a class="el" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw2">NL3D::CPSMaterial::alphaTest</a>, <a class="el" href="a05641.html#l00078">NL3D::CMaterial::setAlphaTest()</a>, <a class="el" href="a05641.html#l00064">NL3D::CMaterial::setBlend()</a>, <a class="el" href="a05641.html#l00091">NL3D::CMaterial::setBlendFunc()</a>, and <a class="el" href="a05641.html#l00105">NL3D::CMaterial::setZWrite()</a>.
+<p>
+<div class="fragment"><pre>00521 {
+00522 <span class="keywordflow">switch</span> (mode)
+00523 {
+00524 <span class="keywordflow">case</span> <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw0">add</a>:
+00525 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setBlend(<span class="keyword">true</span>);
+00526 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setBlendFunc(CMaterial::one, CMaterial::one);
+00527 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setZWrite(<span class="keyword">false</span>);
+00528 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setAlphaTest(<span class="keyword">false</span>);
+00529 <span class="keywordflow">break</span>;
+00530 <span class="keywordflow">case</span> <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw7">modulate</a>:
+00531 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setBlend(<span class="keyword">true</span>);
+00532 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setBlendFunc(CMaterial::zero, CMaterial::srccolor);
+00533 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setZWrite(<span class="keyword">false</span>);
+00534 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setAlphaTest(<span class="keyword">false</span>);
+00535 <span class="keywordflow">break</span>;
+00536 <span class="keywordflow">case</span> <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw1">alphaBlend</a>:
+00537 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setBlend(<span class="keyword">true</span>);
+00538 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setBlendFunc(CMaterial::srcalpha, CMaterial::invsrcalpha);
+00539 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setZWrite(<span class="keyword">false</span>);
+00540 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setAlphaTest(<span class="keyword">false</span>);
+00541 <span class="keywordflow">break</span>;
+00542 <span class="keywordflow">case</span> <a class="code" href="a03178.html#NL3D_1_1CPSTailDotw9NL3D_1_1CPSTailDotw2">alphaTest</a>:
+00543 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setBlend(<span class="keyword">false</span>);
+00544 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setZWrite(<span class="keyword">true</span>);
+00545 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setAlphaTest(<span class="keyword">true</span>);
+00546 <span class="keywordflow">break</span>;
+00547 }
+00548 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota53" doxytag="NL3D::CPSTailDot::setColor" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSColoredParticle::setColor </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03337.html">NLMISC::CRGBA</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>col</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set a constant color for the particles. remove any previous scheme.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06257.html#l00135">135</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+References <a class="el" href="a03157.html#NL3D_1_1CPSColoredParticleb4">NL3D::CPSColoredParticle::updateMatAndVbForColor()</a>.
+<p>
+<div class="fragment"><pre>00136 {
+00137 <span class="keyword">delete</span> <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>;
+00138 <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a> = NULL;
+00139 <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp1">_Color</a> = col;
+00140 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotd3">updateMatAndVbForColor</a>();
+00141 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz764_2" doxytag="NL3D::CPSTailDot::setColorFading" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NL3D::CPSTailDot::setColorFading </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>onOff</em> = true </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+(de)activate color fading when its done, colors fades to black along the tail.
+<p>
+Implements <a class="el" href="a03229.html#NL3D_1_1CPSTailParticlea3">NL3D::CPSTailParticle</a>.
+<p>
+Definition at line <a class="el" href="a06284.html#l00062">62</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>.
+<p>
+References <a class="el" href="a06284.html#l00172">touch()</a>.
+<p>
+<div class="fragment"><pre>00063 {
+00064 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a> = onOff;
+00065 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotd2">touch</a>();
+00066 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota54" doxytag="NL3D::CPSTailDot::setColorScheme" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSColoredParticle::setColorScheme </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03136.html">CPSAttribMaker</a>&lt; <a class="el" href="a03337.html">CRGBA</a> &gt; *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>col</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set an attribute maker that produce a color It must have been allocated by new It will be deleted by this object
+<p>
+Definition at line <a class="el" href="a06257.html#l00125">125</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+References <a class="el" href="a03157.html#NL3D_1_1CPSColoredParticleb1">NL3D::CPSColoredParticle::getColorOwner()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06214.html#l00296">NL3D::CPSAttribMaker&lt; T &gt;::resize()</a>, and <a class="el" href="a03157.html#NL3D_1_1CPSColoredParticleb4">NL3D::CPSColoredParticle::updateMatAndVbForColor()</a>.
+<p>
+<div class="fragment"><pre>00126 {
+00127 <a class="code" href="a04199.html#a6">nlassert</a>(col);
+00128 <span class="keyword">delete</span> <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>;
+00129 <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a> = col;
+00130 <span class="keywordflow">if</span> (<a class="code" href="a03240.html#NL3D_1_1CPSTailDotb6">getColorOwner</a>() &amp;&amp; col-&gt;hasMemory()) col-&gt;resize(<a class="code" href="a03240.html#NL3D_1_1CPSTailDotb6">getColorOwner</a>()-&gt;getMaxSize(), <a class="code" href="a03240.html#NL3D_1_1CPSTailDotb6">getColorOwner</a>()-&gt;getSize());
+00131 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotd3">updateMatAndVbForColor</a>();
+00132 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea52" doxytag="NL3D::CPSTailDot::setExternID" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSLocatedBindable::setExternID </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>id</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+***************************************************************************************
+<p>
+set the extern ID of this located bindable. 0 means no extern access. The map of ID-locatedBindable. Is in th particle system, so this located bindable must have been attached to a particle system, otherwise an assertion is raised
+<p>
+Definition at line <a class="el" href="a06246.html#l02149">2149</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a06247.html#l01027">NL3D::CPSLocatedBindable::_ExternID</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06142.html#l01081">NL3D::CParticleSystem::registerLocatedBindableExternID()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a06142.html#l01096">NL3D::CParticleSystem::unregisterLocatedBindableExternID()</a>.
+<p>
+<div class="fragment"><pre>02150 {
+02151 <span class="keywordflow">if</span> (<span class="keywordtype">id</span> == <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep3">_ExternID</a>) <span class="keywordflow">return</span>;
+02152 CParticleSystem *ps = NULL;
+02153 <span class="keywordflow">if</span> (<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a> &amp;&amp; <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner())
+02154 {
+02155 ps = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner();
+02156 }
+02157 <span class="keywordflow">if</span> (ps)
+02158 {
+02159 ps-&gt;unregisterLocatedBindableExternID(<span class="keyword">this</span>);
+02160 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep3">_ExternID</a> = 0;
+02161 }
+02162 <span class="keywordflow">if</span> (<span class="keywordtype">id</span> != 0)
+02163 {
+02164 <span class="keywordflow">if</span> (ps) ps-&gt;registerLocatedBindableExternID(<span class="keywordtype">id</span>, <span class="keyword">this</span>);
+02165 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep3">_ExternID</a> = <span class="keywordtype">id</span>;
+02166 }
+02167 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz754_2" doxytag="NL3D::CPSTailDot::setInterpolationMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::setInterpolationMode </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10">TInterpolationMode</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>mode</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06275.html#l00111">111</a> of file <a class="el" href="a06275.html">ps_ribbon_base.cpp</a>.
+<p>
+References <a class="el" href="a06276.html#l00149">NL3D::CPSRibbonBase::_InterpolationMode</a>, <a class="el" href="a03227.html#NL3D_1_1CPSTailDotw10NL3D_1_1CPSTailDotw5">NL3D::CPSRibbonBase::InterpModeLast</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+Referenced by <a class="el" href="a06273.html#l00233">NL3D::CPSRibbon::CPSRibbon()</a>, and <a class="el" href="a06283.html#l00066">CPSTailDot()</a>.
+<p>
+<div class="fragment"><pre>00112 {
+00113 <a class="code" href="a04199.html#a6">nlassert</a>(mode &lt; InterpModeLast);
+00114 _InterpolationMode = mode;
+00115 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea53" doxytag="NL3D::CPSTailDot::setLOD" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSLocatedBindable::setLOD </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a05363.html#a558">TPSLod</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>lod</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+set the LODs that apply to that object (warning : it is based on the position of the system, and don't act on a per instance basis ...) To have per instance precision, you must use an attribute maker that has LOD as its input
+<p>
+Definition at line <a class="el" href="a06247.html#l00952">952</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+References <a class="el" href="a06247.html#l01029">NL3D::CPSLocatedBindable::_LOD</a>.
+<p>
+<div class="fragment"><pre>00952 { <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep4">_LOD</a> = lod; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota57" doxytag="NL3D::CPSTailDot::setLODDegradation" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::setLODDegradation </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>percent</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Allow degradation of ribbons with distance of the system (may not be suited when theit paths have wicked angles) <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>percent</em>&nbsp;</td><td>1 mean no degradation, 0 mean nothing will be draw when the system is at its max dist. 1 is the default</td></tr>
+ </table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00090">90</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+References <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>00091 {
+00092 <a class="code" href="a04199.html#a6">nlassert</a>(percent &gt;= 0 &amp;&amp; percent &lt;= 1);
+00093 _LODDegradation = percent;
+00094 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea55" doxytag="NL3D::CPSTailDot::setName" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSLocatedBindable::setName </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>name</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+set the located bindable name (edition purpose)
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l00946">946</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+<div class="fragment"><pre>00946 { <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep5">_Name</a> = name; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSphereb7" doxytag="NL3D::CPSTailDot::setOwner" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSLocatedBindable::setOwner </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03214.html">CPSLocated</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>psl</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected, virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+***************************************************************************************
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03179.html#NL3D_1_1CPSSphericalEmittera76">NL3D::CPSEmitter</a>.
+<p>
+Definition at line <a class="el" href="a06246.html#l01948">1948</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a06142.html#l01894">NL3D::CParticleSystem::addRefForUserSysCoordInfo()</a>, <a class="el" href="a02691.html#NL3D_1_1CPSZoneb1">NL3D::CPSLocatedBindable::deleteElement()</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06247.html#l00361">NL3D::CPSLocated::getSize()</a>, <a class="el" href="a06247.html#l00974">NL3D::CPSLocatedBindable::getUserMatrixUsageCount()</a>, <a class="el" href="a06246.html#l02170">NL3D::CPSLocatedBindable::releaseAllRef()</a>, <a class="el" href="a06142.html#l01907">NL3D::CParticleSystem::releaseRefForUserSysCoordInfo()</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+Referenced by <a class="el" href="a06246.html#l00751">NL3D::CPSLocated::bind()</a>, and <a class="el" href="a06246.html#l01902">NL3D::CPSLocated::unbind()</a>.
+<p>
+<div class="fragment"><pre>01949 {
+01950 <span class="keywordflow">if</span> (psl == <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>) <span class="keywordflow">return</span>;
+01951 <span class="keywordflow">if</span> (psl == NULL)
+01952 {
+01953 <a class="code" href="a02691.html#NL3D_1_1CPSTailDota47">releaseAllRef</a>();
+01954 <span class="keywordflow">if</span> (<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>)
+01955 {
+01956 <span class="comment">// empty this located bindable. Need to be empty if it must be rebound to another located.</span>
+01957 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> k = 0; k &lt; <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getSize(); ++k)
+01958 {
+01959 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotb4">deleteElement</a>(0);
+01960 }
+01961 }
+01962 }
+01963 <span class="keywordflow">if</span> (<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a> &amp;&amp; <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner())
+01964 {
+01965 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner()-&gt;releaseRefForUserSysCoordInfo(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherea36">getUserMatrixUsageCount</a>());
+01966 }
+01967 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a> = psl;
+01968 <span class="keywordflow">if</span> (<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a> &amp;&amp; <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner())
+01969 {
+01970 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner()-&gt;addRefForUserSysCoordInfo(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherea36">getUserMatrixUsageCount</a>());
+01971 }
+01972 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz755_3" doxytag="NL3D::CPSTailDot::setRibbonLength" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::setRibbonLength </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>length</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+The the length in meter of the ribbon. This is used only if the ribbon mode is set to FixedSize. These kind of ribbon are usually slower than variable size ribbons. The default is one metter.
+<p>
+Definition at line <a class="el" href="a06275.html#l00095">95</a> of file <a class="el" href="a06275.html">ps_ribbon_base.cpp</a>.
+<p>
+References <a class="el" href="a06276.html#l00101">NL3D::CPSRibbonBase::_NbSegs</a>, <a class="el" href="a06276.html#l00150">NL3D::CPSRibbonBase::_RibbonLength</a>, <a class="el" href="a06276.html#l00151">NL3D::CPSRibbonBase::_SegLength</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>00096 {
+00097 <a class="code" href="a04199.html#a6">nlassert</a>(length &gt; 0.f);
+00098 _RibbonLength = length;
+00099 _SegLength = length / <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a>;
+00100 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz754_3" doxytag="NL3D::CPSTailDot::setRibbonMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::setRibbonMode </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11">TRibbonMode</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>mode</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+NB : a fixed size isn't applied with parametric motion.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06275.html#l00103">103</a> of file <a class="el" href="a06275.html">ps_ribbon_base.cpp</a>.
+<p>
+References <a class="el" href="a06276.html#l00148">NL3D::CPSRibbonBase::_RibbonMode</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a03227.html#NL3D_1_1CPSTailDotw11NL3D_1_1CPSTailDotw8">NL3D::CPSRibbonBase::RibbonModeLast</a>.
+<p>
+<div class="fragment"><pre>00104 {
+00105 <a class="code" href="a04199.html#a6">nlassert</a>(mode &lt; RibbonModeLast);
+00106 _RibbonMode = mode;
+00107 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz755_4" doxytag="NL3D::CPSTailDot::setSegDuration" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::setSegDuration </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a05363.html#a366">TAnimationTime</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>ellapsedTime</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set how many seconds need a seg to be traversed. Long times will create longer ribbons. Default is 0.02. It gives the sampling rate for each type of ribbon
+<p>
+Definition at line <a class="el" href="a06275.html#l00132">132</a> of file <a class="el" href="a06275.html">ps_ribbon_base.cpp</a>.
+<p>
+References <a class="el" href="a06276.html#l00102">NL3D::CPSRibbonBase::_SegDuration</a>, and <a class="el" href="a05454.html#l00044">NL3D::TAnimationTime</a>.
+<p>
+Referenced by <a class="el" href="a06273.html#l00233">NL3D::CPSRibbon::CPSRibbon()</a>, and <a class="el" href="a06283.html#l00066">CPSTailDot()</a>.
+<p>
+<div class="fragment"><pre>00133 {
+00134 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp10">_SegDuration</a> = ellapsedTime;
+00135
+00136 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz764_3" doxytag="NL3D::CPSTailDot::setSystemBasis" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NL3D::CPSTailDot::setSystemBasis </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>yes</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+tells in which basis is the tail It requires one transform per particle if it is not the same as the located that hold that particle The default is false. With that you can control if a rotation of the system will rotate the tail
+<p>
+Implements <a class="el" href="a03229.html#NL3D_1_1CPSTailParticlea4">NL3D::CPSTailParticle</a>.
+<p>
+Definition at line <a class="el" href="a06284.html#l00079">79</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>.
+<p>
+<div class="fragment"><pre>00079 {}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz755_5" doxytag="NL3D::CPSTailDot::setTailNbSeg" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::setTailNbSeg </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>nbSegs</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+set the number of segments used with this particle. In this case, it can't be lower than 2
+<p>
+
+<p>
+Implements <a class="el" href="a03229.html#NL3D_1_1CPSTailParticlea5">NL3D::CPSTailParticle</a>.
+<p>
+Definition at line <a class="el" href="a06275.html#l00118">118</a> of file <a class="el" href="a06275.html">ps_ribbon_base.cpp</a>.
+<p>
+References <a class="el" href="a06276.html#l00101">NL3D::CPSRibbonBase::_NbSegs</a>, <a class="el" href="a06276.html#l00143">NL3D::CPSRibbonBase::_RibbonIndex</a>, <a class="el" href="a06247.html#l00369">NL3D::CPSLocated::getMaxSize()</a>, <a class="el" href="a06275.html#l00568">NL3D::CPSRibbonBase::initDateVect()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06275.html#l00518">NL3D::CPSRibbonBase::resize()</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00119 {
+00120 <a class="code" href="a04199.html#a6">nlassert</a>(nbSegs &gt;= 1);
+00121 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a> = nbSegs;
+00122 _RibbonIndex = 0;
+00123 <span class="keywordflow">if</span> (<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>)
+00124 {
+00125 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotb16">resize</a>(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getMaxSize());
+00126 }
+00127 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotb10">initDateVect</a>();
+00128 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherea59" doxytag="NL3D::CPSTailDot::setupDriverModelMatrix" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSLocatedBindable::setupDriverModelMatrix </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+shortcut to setup the model matrix (system basis or world basis)
+<p>
+
+<p>
+Definition at line <a class="el" href="a06246.html#l02142">2142</a> of file <a class="el" href="a06246.html">ps_located.cpp</a>.
+<p>
+References <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a06246.html#l01775">NL3D::CPSLocated::setupDriverModelMatrix()</a>.
+<p>
+Referenced by <a class="el" href="a06246.html#l02038">NL3D::CPSLocatedBindable::displayIcon2d()</a>, <a class="el" href="a06283.html#l00242">displayRibbons()</a>, <a class="el" href="a06277.html#l00319">NL3D::CPSRibbonLookAt::displayRibbons()</a>, <a class="el" href="a06273.html#l00471">NL3D::CPSRibbon::displayRibbons()</a>, <a class="el" href="a06226.html#l00122">NL3D::CPSDot::draw()</a>, <a class="el" href="a06231.html#l00055">NL3D::CPSFaceHelper::drawFaces()</a>, <a class="el" href="a06235.html#l00072">NL3D::CPSFanLightHelper::drawFanLight()</a>, <a class="el" href="a06233.html#l00379">NL3D::CPSFaceLookAtHelper::drawLookAt()</a>, <a class="el" href="a06233.html#l00089">NL3D::CPSFaceLookAtHelper::drawLookAtAlignOnMotion()</a>, <a class="el" href="a06250.html#l00521">NL3D::CPSConstraintMeshHelper::drawMeshs()</a>, <a class="el" href="a06250.html#l00793">NL3D::CPSConstraintMeshHelper::drawPrerotatedMeshs()</a>, <a class="el" href="a06287.html#l01375">NL3D::CPSZoneRectangle::show()</a>, <a class="el" href="a06287.html#l01160">NL3D::CPSZoneCylinder::show()</a>, <a class="el" href="a06287.html#l00625">NL3D::CPSZoneDisc::show()</a>, <a class="el" href="a06287.html#l00448">NL3D::CPSZoneSphere::show()</a>, <a class="el" href="a06287.html#l00140">NL3D::CPSZonePlane::show()</a>, <a class="el" href="a06239.html#l00900">NL3D::CPSCylindricVortex::show()</a>, <a class="el" href="a06239.html#l00295">NL3D::CPSDirectionnalForce::show()</a>, <a class="el" href="a06229.html#l02491">NL3D::CPSSphericalEmitter::showTool()</a>, <a class="el" href="a06229.html#l02391">NL3D::CPSEmitterRectangle::showTool()</a>, and <a class="el" href="a06229.html#l00447">NL3D::CPSEmitter::showTool()</a>.
+<p>
+<div class="fragment"><pre>02143 {
+02144 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+02145 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;setupDriverModelMatrix();
+02146 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotd1" doxytag="NL3D::CPSTailDot::setupGlobalColor" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSTailDot::setupGlobalColor </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+setup the global color if it is used
+<p>
+Definition at line <a class="el" href="a06283.html#l00508">508</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a06143.html#l00657">NL3D::CParticleSystem::getColorAttenuationScheme()</a>, <a class="el" href="a06143.html#l00679">NL3D::CParticleSystem::getForceGlobalColorLightingFlag()</a>, <a class="el" href="a06143.html#l00674">NL3D::CParticleSystem::getGlobalColor()</a>, <a class="el" href="a06143.html#l00677">NL3D::CParticleSystem::getGlobalColorLighted()</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06143.html#l00669">NL3D::CParticleSystem::isUserColorUsed()</a>, <a class="el" href="a06340.html#l00133">NLMISC::CRGBA::modulateFromColor()</a>, <a class="el" href="a05641.html#l00118">NL3D::CMaterial::setColor()</a>, <a class="el" href="a05641.html#l00268">NL3D::CMaterial::texConstantColor()</a>, and <a class="el" href="a06258.html#l00103">NL3D::CPSParticle::usesGlobalColorLighting()</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00242">displayRibbons()</a>.
+<p>
+<div class="fragment"><pre>00509 {
+00511 CParticleSystem &amp;ps = *(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner());
+00512 <span class="keywordflow">if</span> (<a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>)
+00513 {
+00514 <span class="keywordflow">if</span> (ps.getForceGlobalColorLightingFlag() || <a class="code" href="a03162.html#NL3D_1_1CPSTailDota64">usesGlobalColorLighting</a>())
+00515 {
+00516 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texConstantColor(0, ps.getGlobalColorLighted());
+00517 }
+00518 <span class="keywordflow">else</span>
+00519 {
+00520 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texConstantColor(0, ps.getGlobalColor());
+00521 }
+00522 }
+00523 <span class="keywordflow">else</span> <span class="comment">// GLOBAL COLOR with / without fading</span>
+00524 {
+00525 <span class="keywordflow">if</span> (ps.getForceGlobalColorLightingFlag() || <a class="code" href="a03162.html#NL3D_1_1CPSTailDota64">usesGlobalColorLighting</a>())
+00526 {
+00527 <a class="code" href="a03337.html">NLMISC::CRGBA</a> col;
+00528 col.<a class="code" href="a03337.html#NLMISC_1_1CRGBAa8">modulateFromColor</a>(ps.getGlobalColorLighted(), <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp1">_Color</a>);
+00529 <span class="keywordflow">if</span> (<a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>)
+00530 {
+00531 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texConstantColor(0, col);
+00532 }
+00533 <span class="keywordflow">else</span> <span class="comment">// color attenuation, no fading : </span>
+00534 {
+00535 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setColor(col);
+00536 }
+00537 }
+00538 <span class="keywordflow">else</span>
+00539 <span class="keywordflow">if</span> (ps.getColorAttenuationScheme() || ps.isUserColorUsed())
+00540 {
+00541 <a class="code" href="a03337.html">NLMISC::CRGBA</a> col;
+00542 col.<a class="code" href="a03337.html#NLMISC_1_1CRGBAa8">modulateFromColor</a>(ps.getGlobalColor(), <a class="code" href="a03157.html#NL3D_1_1CPSTailDotp1">_Color</a>);
+00543 <span class="keywordflow">if</span> (<a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>)
+00544 {
+00545 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texConstantColor(0, col);
+00546 }
+00547 <span class="keywordflow">else</span> <span class="comment">// color attenuation, no fading : </span>
+00548 {
+00549 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setColor(col);
+00550 }
+00551 }
+00552 <span class="keywordflow">else</span>
+00553 {
+00554 <span class="keywordflow">if</span> (<a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>)
+00555 {
+00556 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.texConstantColor(0, _Color);
+00557 }
+00558 <span class="keywordflow">else</span> <span class="comment">// constant color</span>
+00559 {
+00560 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setColor(_Color);
+00561 }
+00562 }
+00563 }
+00564 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota60" doxytag="NL3D::CPSTailDot::setZBias" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NL3D::CPSTailDot::setZBias </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>value</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented from <a class="el" href="a03178.html#NL3D_1_1CPSMateriala8">NL3D::CPSMaterial</a>.
+<p>
+Definition at line <a class="el" href="a06284.html#l00110">110</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>.
+<p>
+References <a class="el" href="a05646.html#l01132">value</a>.
+<p>
+<div class="fragment"><pre>00110 { CPSMaterial::setZBias(value); }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota61" doxytag="NL3D::CPSTailDot::showTool" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSParticle::showTool </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+draw the particles for edition mode. The default behaviour just draw a wireframe model
+<p>
+
+<p>
+Definition at line <a class="el" href="a06257.html#l00055">55</a> of file <a class="el" href="a06257.html">ps_particle_basic.cpp</a>.
+<p>
+References <a class="el" href="a06246.html#l02038">NL3D::CPSLocatedBindable::displayIcon2d()</a>, <a class="el" href="a06152.html#l00060">PARTICLES_CHECK_MEM</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+Referenced by <a class="el" href="a06258.html#l00074">NL3D::CPSParticle::step()</a>, <a class="el" href="a06250.html#l01614">NL3D::CPSConstraintMesh::step()</a>, <a class="el" href="a06250.html#l00280">NL3D::CPSMesh::step()</a>, and <a class="el" href="a06231.html#l00212">NL3D::CPSFace::step()</a>.
+<p>
+<div class="fragment"><pre>00056 {
+00057 <a class="code" href="a04729.html#a0">PARTICLES_CHECK_MEM</a>;
+00058
+00059 CVector I = CVector::I;
+00060 CVector J = CVector::J;
+00061
+00062 <span class="keyword">const</span> CVector tab[] = { 2 * J, I + J
+00063 , I + J, 2 * I + J
+00064 , 2 * I + J, I
+00065 , I, 2 * I - J
+00066 , 2 * I - J, - .5f * J
+00067 , - .5f * J, -2 * I - J
+00068 , -2 * I - J, - I
+00069 , - I, -2 * I + J
+00070 , -2 * I + J, - I + J
+00071 , - I + J, 2 * J
+00072 };
+00073 <span class="keyword">const</span> <a class="code" href="a04558.html#a15">uint</a> tabSize = <span class="keyword">sizeof</span>(tab) / (2 * <span class="keyword">sizeof</span>(CVector));
+00074
+00075 <span class="keyword">const</span> <span class="keywordtype">float</span> sSize = 0.1f;
+00076 <a class="code" href="a02691.html#NL3D_1_1CPSZoneSphereb3">displayIcon2d</a>(tab, tabSize, sSize);
+00077
+00078 <a class="code" href="a04729.html#a0">PARTICLES_CHECK_MEM</a>;
+00079 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota62" doxytag="NL3D::CPSTailDot::step" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSTailDot::step </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a05363.html#a556">TPSProcessPass</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>pass</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a05363.html#a366">TAnimationTime</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>ellapsedTime</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a05363.html#a366">TAnimationTime</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>realEt</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+inherited from <a class="el" href="a03162.html">CPSParticle</a>
+<p>
+return true if the ribbon light persist after death <dl compact><dt><b>See also:</b></dt><dd>_PersistAfterDeath()</dd></dl>
+
+<p>
+We support Auto-LOD for ribbons, although there is a built-in LOD (that change the geometry rather than the number of ribbons) that gives better result (both can be used simultaneously)
+<p>
+Reimplemented from <a class="el" href="a03162.html#NL3D_1_1CPSShockWavea100">NL3D::CPSParticle</a>.
+<p>
+Definition at line <a class="el" href="a06283.html#l00165">165</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a06257.html#l00082">NL3D::CPSParticle::computeSrcStep()</a>, <a class="el" href="a06283.html#l00242">displayRibbons()</a>, <a class="el" href="a06143.html#l00679">NL3D::CParticleSystem::getForceGlobalColorLightingFlag()</a>, <a class="el" href="a06143.html#l00674">NL3D::CParticleSystem::getGlobalColor()</a>, <a class="el" href="a06143.html#l00677">NL3D::CParticleSystem::getGlobalColorLighted()</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06283.html#l00359">hasOpaqueFaces()</a>, <a class="el" href="a06283.html#l00352">hasTransparentFaces()</a>, <a class="el" href="a05363.html#a556a216">NL3D::PSBlendRender</a>, <a class="el" href="a05363.html#a556a214">NL3D::PSMotion</a>, <a class="el" href="a05363.html#a556a215">NL3D::PSSolidRender</a>, <a class="el" href="a05363.html#a556a217">NL3D::PSToolRender</a>, <a class="el" href="a05641.html#l00118">NL3D::CMaterial::setColor()</a>, <a class="el" href="a05454.html#l00044">NL3D::TAnimationTime</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a06275.html#l00139">NL3D::CPSRibbonBase::updateGlobals()</a>, and <a class="el" href="a06258.html#l00103">NL3D::CPSParticle::usesGlobalColorLighting()</a>.
+<p>
+<div class="fragment"><pre>00166 {
+00167 <span class="keywordflow">if</span> (pass == <a class="code" href="a05363.html#a556a214">PSMotion</a>)
+00168 {
+00169 <span class="keywordflow">if</span> (!<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp9">_Parametric</a>)
+00170 {
+00171 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotb19">updateGlobals</a>(realET);
+00172 }
+00173 }
+00174 <span class="keywordflow">else</span>
+00175 <span class="keywordflow">if</span> (
+00176 (pass == <a class="code" href="a05363.html#a556a216">PSBlendRender</a> &amp;&amp; <a class="code" href="a03240.html#NL3D_1_1CPSTailDota42">hasTransparentFaces</a>())
+00177 || (pass == <a class="code" href="a05363.html#a556a215">PSSolidRender</a> &amp;&amp; <a class="code" href="a03240.html#NL3D_1_1CPSTailDota40">hasOpaqueFaces</a>())
+00178 )
+00179 {
+00180 <a class="code" href="a04558.html#a11">uint32</a> <a class="code" href="a03240.html#NL3D_1_1CPSTailDota62">step</a>;
+00181 <a class="code" href="a04558.html#a15">uint</a> numToProcess;
+00182 <a class="code" href="a03162.html#NL3D_1_1CPSTailDotb2">computeSrcStep</a>(step, numToProcess);
+00183 <span class="keywordflow">if</span> (!numToProcess) <span class="keywordflow">return</span>;
+00184
+00186 CParticleSystem &amp;ps = *(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner());
+00187 <span class="keywordflow">if</span> (ps.getForceGlobalColorLightingFlag() || <a class="code" href="a03162.html#NL3D_1_1CPSTailDota64">usesGlobalColorLighting</a>())
+00188 {
+00189 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setColor(ps.getGlobalColorLighted());
+00190 }
+00191 <span class="keywordflow">else</span>
+00192 {
+00193 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setColor(ps.getGlobalColor());
+00194 }
+00195
+00200 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotd0">displayRibbons</a>(numToProcess, step);
+00201
+00202 }
+00203 <span class="keywordflow">else</span>
+00204 <span class="keywordflow">if</span> (pass == <a class="code" href="a05363.html#a556a217">PSToolRender</a>) <span class="comment">// edition mode only</span>
+00205 {
+00206 <span class="comment">//showTool();</span>
+00207 }
+00208 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota63" doxytag="NL3D::CPSTailDot::supportGlobalColorLighting" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NL3D::CPSTailDot::supportGlobalColorLighting </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Implements <a class="el" href="a03162.html#NL3D_1_1CPSRibbonBasea54">NL3D::CPSParticle</a>.
+<p>
+Definition at line <a class="el" href="a06284.html#l00107">107</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>.
+<p>
+<div class="fragment"><pre>00107 { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotd2" doxytag="NL3D::CPSTailDot::touch" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSTailDot::touch </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06284.html#l00172">172</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00242">displayRibbons()</a>, <a class="el" href="a06284.html#l00062">setColorFading()</a>, and <a class="el" href="a06283.html#l00236">updateMatAndVbForColor()</a>.
+<p>
+<div class="fragment"><pre>00172 { <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr4">_Touch</a> = <span class="keyword">true</span>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb19" doxytag="NL3D::CPSTailDot::updateGlobals" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::updateGlobals </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>realET</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Called each time the time of the system change in order to update the ribbons positions.
+<p>
+decal date<p>
+save current date<p>
+updating ribbons positions
+<p>
+Definition at line <a class="el" href="a06275.html#l00139">139</a> of file <a class="el" href="a06275.html">ps_ribbon_base.cpp</a>.
+<p>
+References <a class="el" href="a06276.html#l00101">NL3D::CPSRibbonBase::_NbSegs</a>, <a class="el" href="a06276.html#l00103">NL3D::CPSRibbonBase::_Parametric</a>, <a class="el" href="a06276.html#l00143">NL3D::CPSRibbonBase::_RibbonIndex</a>, <a class="el" href="a06276.html#l00146">NL3D::CPSRibbonBase::_Ribbons</a>, <a class="el" href="a06276.html#l00142">NL3D::CPSRibbonBase::_SamplingDate</a>, <a class="el" href="a06276.html#l00102">NL3D::CPSRibbonBase::_SegDuration</a>, <a class="el" href="a06213.html#l00353">NL3D::CPSAttrib&lt; T &gt;::begin()</a>, <a class="el" href="a06275.html#l00075">NL3D::EndRibbonStorage</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06247.html#l00334">NL3D::CPSLocated::getPos()</a>, <a class="el" href="a06247.html#l00361">NL3D::CPSLocated::getSize()</a>, <a class="el" href="a06143.html#l00311">NL3D::CParticleSystem::getSystemDate()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05646.html#l00645">size</a>, <a class="el" href="a05454.html#l00044">NL3D::TAnimationTime</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00165">step()</a>, <a class="el" href="a06277.html#l00119">NL3D::CPSRibbonLookAt::step()</a>, and <a class="el" href="a06273.html#l00266">NL3D::CPSRibbon::step()</a>.
+<p>
+<div class="fragment"><pre>00140 {
+00141 <a class="code" href="a04199.html#a6">nlassert</a>(!_Parametric);
+00142 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+00143 <span class="keyword">const</span> <a class="code" href="a04558.html#a15">uint</a> <a class="code" href="a04223.html#a587">size</a> = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getSize();
+00144 <span class="keywordflow">if</span> (!<a class="code" href="a04223.html#a587">size</a>) <span class="keywordflow">return</span>;
+00145 <span class="keyword">const</span> <a class="code" href="a05363.html#a366">TAnimationTime</a> currDate = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner()-&gt;getSystemDate() + realET;
+00146 <span class="keywordflow">if</span> (currDate - _LastUpdateDate &gt;= <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp10">_SegDuration</a>)
+00147 {
+00148 <span class="keywordflow">if</span> (_RibbonIndex == 0) _RibbonIndex = <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a> + <a class="code" href="a05363.html#a267">EndRibbonStorage</a>;
+00149 <span class="keywordflow">else</span> --_RibbonIndex;
+00150
+00152 ::memmove(&amp;_SamplingDate[1], &amp;_SamplingDate[0], <span class="keyword">sizeof</span>(<span class="keywordtype">float</span>) * (<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a> + <a class="code" href="a05363.html#a267">EndRibbonStorage</a>));
+00153 _LastUpdateDate = currDate;
+00154 }
+00155
+00157 _SamplingDate[0] = currDate;
+00158
+00160 TPSAttribVector::iterator posIt = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getPos().begin();
+00161 <a class="code" href="a03128.html">NLMISC::CVector</a> *currIt = &amp;_Ribbons[_RibbonIndex];
+00162 <a class="code" href="a04558.html#a15">uint</a> k = <a class="code" href="a04223.html#a587">size</a>;
+00163 <span class="keywordflow">for</span> (;;)
+00164 {
+00165 *currIt = *posIt;
+00166 --k;
+00167 <span class="keywordflow">if</span> (!k) <span class="keywordflow">break</span>;
+00168 ++posIt;
+00169 currIt += (<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a> + 1 + <a class="code" href="a05363.html#a267">EndRibbonStorage</a>);
+00170 }
+00171 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotb20" doxytag="NL3D::CPSTailDot::updateLOD" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSRibbonBase::updateLOD </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+must be called for the lod to apply (updates UsedNbSegs)
+<p>
+
+<p>
+Definition at line <a class="el" href="a06275.html#l00610">610</a> of file <a class="el" href="a06275.html">ps_ribbon_base.cpp</a>.
+<p>
+References <a class="el" href="a06276.html#l00101">NL3D::CPSRibbonBase::_NbSegs</a>, <a class="el" href="a06276.html#l00102">NL3D::CPSRibbonBase::_SegDuration</a>, <a class="el" href="a06276.html#l00151">NL3D::CPSRibbonBase::_SegLength</a>, <a class="el" href="a06276.html#l00136">NL3D::CPSRibbonBase::_UsedNbSegs</a>, <a class="el" href="a06276.html#l00137">NL3D::CPSRibbonBase::_UsedSegDuration</a>, <a class="el" href="a06276.html#l00138">NL3D::CPSRibbonBase::_UsedSegLength</a>, <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a06143.html#l00596">NL3D::CParticleSystem::getOneMinusCurrentLODRatio()</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+<div class="fragment"><pre>00611 {
+00612 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner);
+00613 <span class="keywordtype">float</span> ratio = <a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner()-&gt;getOneMinusCurrentLODRatio();
+00614 <span class="keywordtype">float</span> squaredRatio = ratio * ratio;
+00615 <span class="keywordtype">float</span> lodRatio = _LODDegradation + (1.f - _LODDegradation ) * squaredRatio * squaredRatio * squaredRatio;
+00616
+00617 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp11">_UsedNbSegs</a> = (<a class="code" href="a04558.html#a15">uint</a>) (<a class="code" href="a03227.html#NL3D_1_1CPSTailDotp7">_NbSegs</a> * lodRatio);
+00618 <a class="code" href="a05378.html#a374">NLMISC::clamp</a>(_UsedNbSegs, 0u, _NbSegs);
+00619 <span class="keyword">const</span> <span class="keywordtype">float</span> epsilon = 10E-4f;
+00620 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp12">_UsedSegDuration</a> = <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp10">_SegDuration</a> / std::max(epsilon, lodRatio);
+00621 <a class="code" href="a03227.html#NL3D_1_1CPSTailDotp13">_UsedSegLength</a> = _SegLength / std::max(epsilon, lodRatio);
+00622
+00623 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotd3" doxytag="NL3D::CPSTailDot::updateMatAndVbForColor" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSTailDot::updateMatAndVbForColor </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [private, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+update the material and the vb so that they match the color scheme. Inherited from <a class="el" href="a03157.html">CPSColoredParticle</a>
+<p>
+
+<p>
+Implements <a class="el" href="a03157.html#NL3D_1_1CPSColoredParticleb4">NL3D::CPSColoredParticle</a>.
+<p>
+Definition at line <a class="el" href="a06283.html#l00236">236</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a06284.html#l00172">touch()</a>.
+<p>
+<div class="fragment"><pre>00237 {
+00238 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotd2">touch</a>();
+00239 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotd4" doxytag="NL3D::CPSTailDot::updateMaterial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CPSTailDot::updateMaterial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06283.html#l00443">443</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>.
+<p>
+References <a class="el" href="a06273.html#l00042">NL3D::CreateGradientTexture()</a>, <a class="el" href="a06143.html#l00657">NL3D::CParticleSystem::getColorAttenuationScheme()</a>, <a class="el" href="a06143.html#l00679">NL3D::CParticleSystem::getForceGlobalColorLightingFlag()</a>, <a class="el" href="a06151.html#l00111">NL3D::CParticleSystemProcess::getOwner()</a>, <a class="el" href="a06143.html#l00669">NL3D::CParticleSystem::isUserColorUsed()</a>, <a class="el" href="a05968.html#l00322">NL3D::CMaterial::setTexture()</a>, <a class="el" href="a06258.html#l00850">NL3D::SetupModulatedStage()</a>, and <a class="el" href="a06258.html#l00103">NL3D::CPSParticle::usesGlobalColorLighting()</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00242">displayRibbons()</a>.
+<p>
+<div class="fragment"><pre>00444 {
+00445 <span class="keywordflow">if</span> (!<a class="code" href="a03240.html#NL3D_1_1CPSTailDotr4">_Touch</a>) <span class="keywordflow">return</span>;
+00446
+00447 <span class="keyword">static</span> <a class="code" href="a03321.html">NLMISC::CRefPtr&lt;ITexture&gt;</a> ptGradTexture;
+00448
+00449 CParticleSystem &amp;ps = *(<a class="code" href="a02691.html#NL3D_1_1CPSZoneSpherep6">_Owner</a>-&gt;getOwner());
+00450 <span class="keywordflow">if</span> (<a class="code" href="a03157.html#NL3D_1_1CPSTailDotp2">_ColorScheme</a>)
+00451 { <span class="comment">// PER RIBBON COLOR</span>
+00452 <span class="keywordflow">if</span> (ps.getForceGlobalColorLightingFlag() || <a class="code" href="a03162.html#NL3D_1_1CPSTailDota64">usesGlobalColorLighting</a>() || ps.getColorAttenuationScheme() || ps.isUserColorUsed())
+00453 {
+00454 <span class="keywordflow">if</span> (<a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>) <span class="comment">// global color + fading + per ribbon color</span>
+00455 {
+00456 <span class="comment">// the first stage is used to get fading * global color</span>
+00457 <span class="comment">// the second stage multiply the result by the diffuse colot</span>
+00458 <span class="keywordflow">if</span> (ptGradTexture == NULL) <span class="comment">// have we got a gradient texture ?</span>
+00459 {
+00460 ptGradTexture = <a class="code" href="a05363.html#a509">CreateGradientTexture</a>();
+00461 }
+00462 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setTexture(0, ptGradTexture);
+00463 CPSMaterial::forceTexturedMaterialStages(2); <span class="comment">// use constant color 0 * diffuse, 1 stage needed </span>
+00464 <a class="code" href="a05363.html#a503">SetupModulatedStage</a>(_Mat, 0, CMaterial::Texture, CMaterial::Constant);
+00465 <a class="code" href="a05363.html#a503">SetupModulatedStage</a>(_Mat, 1, CMaterial::Previous, CMaterial::Diffuse);
+00466 }
+00467 <span class="keywordflow">else</span> <span class="comment">// per ribbon color with global color </span>
+00468 {
+00469 CPSMaterial::forceTexturedMaterialStages(1); <span class="comment">// use constant color 0 * diffuse, 1 stage needed </span>
+00470 <a class="code" href="a05363.html#a503">SetupModulatedStage</a>(_Mat, 0, CMaterial::Diffuse, CMaterial::Constant);
+00471 }
+00472 }
+00473 <span class="keywordflow">else</span>
+00474 {
+00475 <span class="keywordflow">if</span> (<a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>) <span class="comment">// per ribbon color, fading</span>
+00476 {
+00477 <span class="keywordflow">if</span> (ptGradTexture == NULL) <span class="comment">// have we got a gradient texture ?</span>
+00478 {
+00479 ptGradTexture = <a class="code" href="a05363.html#a509">CreateGradientTexture</a>();
+00480 }
+00481 <a class="code" href="a03178.html#NL3D_1_1CPSTailDotp5">_Mat</a>.setTexture(0, ptGradTexture);
+00482 CPSMaterial::forceTexturedMaterialStages(1);
+00483 <a class="code" href="a05363.html#a503">SetupModulatedStage</a>(_Mat, 0, CMaterial::Texture, CMaterial::Diffuse);
+00484 }
+00485 <span class="keywordflow">else</span> <span class="comment">// per color ribbon with no fading, and no global color</span>
+00486 {
+00487 CPSMaterial::forceTexturedMaterialStages(0); <span class="comment">// no texture use constant diffuse only</span>
+00488 }
+00489 }
+00490 }
+00491 <span class="keywordflow">else</span> <span class="comment">// GLOBAL COLOR</span>
+00492 {
+00493 <span class="keywordflow">if</span> (<a class="code" href="a03240.html#NL3D_1_1CPSTailDotr0">_ColorFading</a>)
+00494 {
+00495 CPSMaterial::forceTexturedMaterialStages(1); <span class="comment">// use constant color 0 * diffuse, 1 stage needed</span>
+00496 <a class="code" href="a05363.html#a503">SetupModulatedStage</a>(_Mat, 0, CMaterial::Diffuse, CMaterial::Constant);
+00497 }
+00498 <span class="keywordflow">else</span> <span class="comment">// constant color</span>
+00499 {
+00500 CPSMaterial::forceTexturedMaterialStages(0); <span class="comment">// no texture use constant diffuse only </span>
+00501 }
+00502 }
+00503
+00504 <a class="code" href="a03240.html#NL3D_1_1CPSTailDotr4">_Touch</a> = <span class="keyword">false</span>;
+00505 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDota64" doxytag="NL3D::CPSTailDot::usesGlobalColorLighting" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NL3D::CPSParticle::usesGlobalColorLighting </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, inherited]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns true if the object can use global lighting color. (example : 'lookat' particle do not have normals, so they use global lighting color instead
+<p>
+Definition at line <a class="el" href="a06258.html#l00103">103</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+References <a class="el" href="a06258.html#l00184">NL3D::CPSParticle::_UsesGlobalColorLighting</a>.
+<p>
+Referenced by <a class="el" href="a06283.html#l00242">displayRibbons()</a>, <a class="el" href="a06277.html#l00319">NL3D::CPSRibbonLookAt::displayRibbons()</a>, <a class="el" href="a06273.html#l00471">NL3D::CPSRibbon::displayRibbons()</a>, <a class="el" href="a06279.html#l00286">NL3D::CPSShockWave::draw()</a>, <a class="el" href="a06226.html#l00122">NL3D::CPSDot::draw()</a>, <a class="el" href="a06283.html#l00508">setupGlobalColor()</a>, <a class="el" href="a06235.html#l00286">NL3D::CPSFanLight::setupMaterial()</a>, <a class="el" href="a06273.html#l01026">NL3D::CPSRibbon::setupTexturedGlobalColor()</a>, <a class="el" href="a06273.html#l00984">NL3D::CPSRibbon::setupUntexturedGlobalColor()</a>, <a class="el" href="a06283.html#l00165">step()</a>, <a class="el" href="a06277.html#l00119">NL3D::CPSRibbonLookAt::step()</a>, <a class="el" href="a06273.html#l00266">NL3D::CPSRibbon::step()</a>, <a class="el" href="a06262.html#l00520">NL3D::CPSQuad::updateMatBeforeRendering()</a>, <a class="el" href="a06283.html#l00443">updateMaterial()</a>, <a class="el" href="a06273.html#l00890">NL3D::CPSRibbon::updateTexturedMaterial()</a>, and <a class="el" href="a06273.html#l00824">NL3D::CPSRibbon::updateUntexturedMaterial()</a>.
+<p>
+<div class="fragment"><pre>00103 { <span class="keywordflow">return</span> _UsesGlobalColorLighting; }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Friends And Related Function Documentation</h2>
+<a class="anchor" name="NL3D_1_1CPSZoneSpheren0" doxytag="NL3D::CPSTailDot::CPSLocated" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> friend class <a class="el" href="a03214.html">CPSLocated</a><code> [friend, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02690.html#NL3D_1_1CPSTurbuln1">NL3D::CPSForce</a>.
+<p>
+Definition at line <a class="el" href="a06247.html#l00986">986</a> of file <a class="el" href="a06247.html">ps_located.h</a>. </td>
+ </tr>
+</table>
+<hr><h2>Field Documentation</h2>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherep0" doxytag="NL3D::CPSTailDot::_Active" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherep0">NL3D::CPSLocatedBindable::_Active</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l01033">1033</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+Referenced by <a class="el" href="a06247.html#l00844">NL3D::CPSLocatedBindable::isActive()</a>, and <a class="el" href="a06247.html#l00843">NL3D::CPSLocatedBindable::setActive()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotp1" doxytag="NL3D::CPSTailDot::_Color" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03337.html">CRGBA</a> <a class="el" href="a03157.html#NL3D_1_1CPSTailDotp1">NL3D::CPSColoredParticle::_Color</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00226">226</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz766_3" doxytag="NL3D::CPSTailDot::_ColoredVBMap" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_0">CPSTailDot::TVBMap</a> <a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_3">NL3D::CPSTailDot::_ColoredVBMap</a><code> [static, private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06283.html#l00062">62</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotr0" doxytag="NL3D::CPSTailDot::_ColorFading" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a03240.html#NL3D_1_1CPSTailDotr0">NL3D::CPSTailDot::_ColorFading</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06284.html#l00166">166</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotp2" doxytag="NL3D::CPSTailDot::_ColorScheme" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03136.html">CPSAttribMaker</a>&lt;<a class="el" href="a03337.html">CRGBA</a>&gt;* <a class="el" href="a03157.html#NL3D_1_1CPSTailDotp2">NL3D::CPSColoredParticle::_ColorScheme</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00228">228</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+Referenced by <a class="el" href="a06235.html#l00072">NL3D::CPSFanLightHelper::drawFanLight()</a>, <a class="el" href="a06250.html#l00521">NL3D::CPSConstraintMeshHelper::drawMeshs()</a>, and <a class="el" href="a06250.html#l00793">NL3D::CPSConstraintMeshHelper::drawPrerotatedMeshs()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherep3" doxytag="NL3D::CPSTailDot::_ExternID" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherep3">NL3D::CPSLocatedBindable::_ExternID</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l01027">1027</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+Referenced by <a class="el" href="a06247.html#l00964">NL3D::CPSLocatedBindable::getExternID()</a>, <a class="el" href="a06246.html#l02149">NL3D::CPSLocatedBindable::setExternID()</a>, and <a class="el" href="a06246.html#l01984">NL3D::CPSLocatedBindable::~CPSLocatedBindable()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz766_4" doxytag="NL3D::CPSTailDot::_FadedColoredVBMap" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_0">CPSTailDot::TVBMap</a> <a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_4">NL3D::CPSTailDot::_FadedColoredVBMap</a><code> [static, private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06283.html#l00063">63</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz766_5" doxytag="NL3D::CPSTailDot::_FadedVBMap" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_0">CPSTailDot::TVBMap</a> <a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_5">NL3D::CPSTailDot::_FadedVBMap</a><code> [static, private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06283.html#l00061">61</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotr1" doxytag="NL3D::CPSTailDot::_ForceLighted" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a03240.html#NL3D_1_1CPSTailDotr1">NL3D::CPSTailDot::_ForceLighted</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06284.html#l00169">169</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotr2" doxytag="NL3D::CPSTailDot::_GlobalColor" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a03240.html#NL3D_1_1CPSTailDotr2">NL3D::CPSTailDot::_GlobalColor</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06284.html#l00167">167</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotr3" doxytag="NL3D::CPSTailDot::_Lighted" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a03240.html#NL3D_1_1CPSTailDotr3">NL3D::CPSTailDot::_Lighted</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06284.html#l00168">168</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherep4" doxytag="NL3D::CPSTailDot::_LOD" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a05363.html#a558">TPSLod</a> <a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherep4">NL3D::CPSLocatedBindable::_LOD</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+tells when this object must be dealt with
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l01029">1029</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+Referenced by <a class="el" href="a06247.html#l00954">NL3D::CPSLocatedBindable::getLOD()</a>, and <a class="el" href="a06247.html#l00952">NL3D::CPSLocatedBindable::setLOD()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotp5" doxytag="NL3D::CPSTailDot::_Mat" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a02839.html">CMaterial</a> <a class="el" href="a03178.html#NL3D_1_1CPSTailDotp5">NL3D::CPSMaterial::_Mat</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06258.html#l00844">844</a> of file <a class="el" href="a06258.html">ps_particle_basic.h</a>.
+<p>
+Referenced by <a class="el" href="a06231.html#l00055">NL3D::CPSFaceHelper::drawFaces()</a>, <a class="el" href="a06235.html#l00072">NL3D::CPSFanLightHelper::drawFanLight()</a>, <a class="el" href="a06233.html#l00379">NL3D::CPSFaceLookAtHelper::drawLookAt()</a>, and <a class="el" href="a06233.html#l00089">NL3D::CPSFaceLookAtHelper::drawLookAtAlignOnMotion()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherep5" doxytag="NL3D::CPSTailDot::_Name" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> std::string <a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherep5">NL3D::CPSLocatedBindable::_Name</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l01031">1031</a> of file <a class="el" href="a06247.html">ps_located.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotp7" doxytag="NL3D::CPSTailDot::_NbSegs" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a03227.html#NL3D_1_1CPSTailDotp7">NL3D::CPSRibbonBase::_NbSegs</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00101">101</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+Referenced by <a class="el" href="a06275.html#l00382">NL3D::CPSRibbonBase::computeHermitteCstSizeRibbon()</a>, <a class="el" href="a06275.html#l00175">NL3D::CPSRibbonBase::computeHermitteRibbon()</a>, <a class="el" href="a06275.html#l00315">NL3D::CPSRibbonBase::computeLinearCstSizeRibbon()</a>, <a class="el" href="a06275.html#l00249">NL3D::CPSRibbonBase::computeLinearRibbon()</a>, <a class="el" href="a06275.html#l00489">NL3D::CPSRibbonBase::dupRibbon()</a>, <a class="el" href="a06276.html#l00072">NL3D::CPSRibbonBase::getTailNbSeg()</a>, <a class="el" href="a06275.html#l00568">NL3D::CPSRibbonBase::initDateVect()</a>, <a class="el" href="a06275.html#l00528">NL3D::CPSRibbonBase::resetSingleRibbon()</a>, <a class="el" href="a06275.html#l00518">NL3D::CPSRibbonBase::resize()</a>, <a class="el" href="a06275.html#l00095">NL3D::CPSRibbonBase::setRibbonLength()</a>, <a class="el" href="a06275.html#l00118">NL3D::CPSRibbonBase::setTailNbSeg()</a>, <a class="el" href="a06275.html#l00139">NL3D::CPSRibbonBase::updateGlobals()</a>, and <a class="el" href="a06275.html#l00610">NL3D::CPSRibbonBase::updateLOD()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSZoneSpherep6" doxytag="NL3D::CPSTailDot::_Owner" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03214.html">CPSLocated</a>* <a class="el" href="a02691.html#NL3D_1_1CPSZoneSpherep6">NL3D::CPSLocatedBindable::_Owner</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06247.html#l01026">1026</a> of file <a class="el" href="a06247.html">ps_located.h</a>.
+<p>
+Referenced by <a class="el" href="a06231.html#l00055">NL3D::CPSFaceHelper::drawFaces()</a>, <a class="el" href="a06235.html#l00072">NL3D::CPSFanLightHelper::drawFanLight()</a>, <a class="el" href="a06233.html#l00379">NL3D::CPSFaceLookAtHelper::drawLookAt()</a>, <a class="el" href="a06233.html#l00089">NL3D::CPSFaceLookAtHelper::drawLookAtAlignOnMotion()</a>, <a class="el" href="a06250.html#l00521">NL3D::CPSConstraintMeshHelper::drawMeshs()</a>, and <a class="el" href="a06250.html#l00793">NL3D::CPSConstraintMeshHelper::drawPrerotatedMeshs()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotp9" doxytag="NL3D::CPSTailDot::_Parametric" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a03227.html#NL3D_1_1CPSTailDotp9">NL3D::CPSRibbonBase::_Parametric</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00103">103</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+Referenced by <a class="el" href="a06275.html#l00382">NL3D::CPSRibbonBase::computeHermitteCstSizeRibbon()</a>, <a class="el" href="a06275.html#l00175">NL3D::CPSRibbonBase::computeHermitteRibbon()</a>, <a class="el" href="a06275.html#l00315">NL3D::CPSRibbonBase::computeLinearCstSizeRibbon()</a>, <a class="el" href="a06275.html#l00249">NL3D::CPSRibbonBase::computeLinearRibbon()</a>, <a class="el" href="a06275.html#l00509">NL3D::CPSRibbonBase::deleteElement()</a>, <a class="el" href="a06275.html#l00489">NL3D::CPSRibbonBase::dupRibbon()</a>, <a class="el" href="a06275.html#l00550">NL3D::CPSRibbonBase::motionTypeChanged()</a>, <a class="el" href="a06275.html#l00499">NL3D::CPSRibbonBase::newElement()</a>, <a class="el" href="a06275.html#l00538">NL3D::CPSRibbonBase::resetFromOwner()</a>, <a class="el" href="a06275.html#l00528">NL3D::CPSRibbonBase::resetSingleRibbon()</a>, <a class="el" href="a06275.html#l00518">NL3D::CPSRibbonBase::resize()</a>, and <a class="el" href="a06275.html#l00139">NL3D::CPSRibbonBase::updateGlobals()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotp10" doxytag="NL3D::CPSTailDot::_SegDuration" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a05363.html#a366">TAnimationTime</a> <a class="el" href="a03227.html#NL3D_1_1CPSTailDotp10">NL3D::CPSRibbonBase::_SegDuration</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00102">102</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+Referenced by <a class="el" href="a06276.html#l00077">NL3D::CPSRibbonBase::getSegDuration()</a>, <a class="el" href="a06275.html#l00132">NL3D::CPSRibbonBase::setSegDuration()</a>, <a class="el" href="a06275.html#l00139">NL3D::CPSRibbonBase::updateGlobals()</a>, and <a class="el" href="a06275.html#l00610">NL3D::CPSRibbonBase::updateLOD()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotr4" doxytag="NL3D::CPSTailDot::_Touch" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a03240.html#NL3D_1_1CPSTailDotr4">NL3D::CPSTailDot::_Touch</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06284.html#l00170">170</a> of file <a class="el" href="a06284.html">ps_tail_dot.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotp11" doxytag="NL3D::CPSTailDot::_UsedNbSegs" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a03227.html#NL3D_1_1CPSTailDotp11">NL3D::CPSRibbonBase::_UsedNbSegs</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+value to use after lod computation
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00136">136</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+Referenced by <a class="el" href="a06275.html#l00382">NL3D::CPSRibbonBase::computeHermitteCstSizeRibbon()</a>, <a class="el" href="a06275.html#l00175">NL3D::CPSRibbonBase::computeHermitteRibbon()</a>, <a class="el" href="a06275.html#l00315">NL3D::CPSRibbonBase::computeLinearCstSizeRibbon()</a>, <a class="el" href="a06275.html#l00249">NL3D::CPSRibbonBase::computeLinearRibbon()</a>, and <a class="el" href="a06275.html#l00610">NL3D::CPSRibbonBase::updateLOD()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotp12" doxytag="NL3D::CPSTailDot::_UsedSegDuration" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a05363.html#a366">TAnimationTime</a> <a class="el" href="a03227.html#NL3D_1_1CPSTailDotp12">NL3D::CPSRibbonBase::_UsedSegDuration</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00137">137</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+Referenced by <a class="el" href="a06275.html#l00175">NL3D::CPSRibbonBase::computeHermitteRibbon()</a>, <a class="el" href="a06275.html#l00249">NL3D::CPSRibbonBase::computeLinearRibbon()</a>, and <a class="el" href="a06275.html#l00610">NL3D::CPSRibbonBase::updateLOD()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotp13" doxytag="NL3D::CPSTailDot::_UsedSegLength" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> float <a class="el" href="a03227.html#NL3D_1_1CPSTailDotp13">NL3D::CPSRibbonBase::_UsedSegLength</a><code> [protected, inherited]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06276.html#l00138">138</a> of file <a class="el" href="a06276.html">ps_ribbon_base.h</a>.
+<p>
+Referenced by <a class="el" href="a06275.html#l00382">NL3D::CPSRibbonBase::computeHermitteCstSizeRibbon()</a>, <a class="el" href="a06275.html#l00315">NL3D::CPSRibbonBase::computeLinearCstSizeRibbon()</a>, and <a class="el" href="a06275.html#l00610">NL3D::CPSRibbonBase::updateLOD()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CPSTailDotz766_6" doxytag="NL3D::CPSTailDot::_VBMap" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_0">CPSTailDot::TVBMap</a> <a class="el" href="a03240.html#NL3D_1_1CPSTailDotz766_6">NL3D::CPSTailDot::_VBMap</a><code> [static, private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06283.html#l00060">60</a> of file <a class="el" href="a06283.html">ps_tail_dot.cpp</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="a06284.html">ps_tail_dot.h</a><li><a class="el" href="a06283.html">ps_tail_dot.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 07:27:58 2004 for NeL by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
+</a>1.3.6 </small></address>
+</body>
+</html>