aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/a02357.html
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--docs/doxygen/nel/a02357.html2061
1 files changed, 2061 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02357.html b/docs/doxygen/nel/a02357.html
new file mode 100644
index 00000000..79e8fc3c
--- /dev/null
+++ b/docs/doxygen/nel/a02357.html
@@ -0,0 +1,2061 @@
+<!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::CCloudScape 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::CCloudScape Class Reference</h1><code>#include &lt;<a class="el" href="a05560.html">cloud_scape.h</a>&gt;</code>
+<p>
+<table border=0 cellpadding=0 cellspacing=0>
+<tr><td></td></tr>
+<tr><td colspan=2><br><h2>Public 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="a02357.html#NL3D_1_1CCloudScapea0">anim</a> (double dt, <a class="el" href="a02315.html">NL3D::CCamera</a> *pCamera)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScapea1">CCloudScape</a> (<a class="el" href="a02434.html">NL3D::IDriver</a> *pDriver)</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="a02357.html#NL3D_1_1CCloudScapea2">getMemSize</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScapea3">init</a> (<a class="el" href="a03892.html">SCloudScapeSetup</a> *pCSS=NULL, <a class="el" href="a02315.html">NL3D::CCamera</a> *pCamera=NULL)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScapea4">isDebugQuadEnabled</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScapea5">render</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScapea6">set</a> (<a class="el" href="a03892.html">SCloudScapeSetup</a> &amp;css)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScapea7">setDebugQuad</a> (bool b)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScapea8">setNbCloudToUpdateIn80ms</a> (<a class="el" href="a04558.html#a11">uint32</a> n)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScapea9">setQuality</a> (float threshold)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScapea10">~CCloudScape</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="a02357.html#NL3D_1_1CCloudScaped0">makeHalfCloud</a> ()</td></tr>
+
+<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="a02356.html">CCloud</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper0">_AllClouds</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03642.html">NLMISC::CValueSmoother</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper1">_AverageFrameRate</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="a04558.html#a7">uint8</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>std::list&lt; <a class="el" href="a02359.html">SCloudSchedulerEntry</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="a02358.html">SCloudSchedulerAccel</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</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="a02357.html#NL3D_1_1CCloudScaper5">_CloudSchedulerSize</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02356.html">CCloud</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper6">_CurrentCloudInProcess</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>double&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper7">_CurrentCloudInProcessFuturTime</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03892.html">SCloudScapeSetup</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper9">_DebugQuad</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>double&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper10">_DeltaTime</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02434.html">NL3D::IDriver</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper11">_Driver</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>double&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper12">_DTRest</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; float &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper13">_ExtrapolatedPriorities</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="a02357.html#NL3D_1_1CCloudScaper14">_FrameCounter</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper15">_Generate</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>double&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper16">_GlobalTime</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03892.html">SCloudScapeSetup</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper17">_IncomingCSS</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper18">_IsIncomingCSS</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper19">_LODQualityThreshold</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02839.html">NL3D::CMaterial</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02839.html">NL3D::CMaterial</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper21">_MatClear</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="a02357.html#NL3D_1_1CCloudScaper22">_NbHalfCloudToUpdate</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03892.html">SCloudScapeSetup</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02988.html">CNoise3d</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper24">_Noise3D</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03892.html">SCloudScapeSetup</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; bool &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper26">_ShouldProcessCloud</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="a02360.html">SSortedCloudEntry</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper27">_SortedClouds</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>double&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03692.html">NL3D::CVertexBuffer</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper29">_VertexBuffer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02315.html">NL3D::CCamera</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper30">_ViewerCam</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03893.html">SCloudTexture3D</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper31">Tex3DTemp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03894.html">SCloudTextureClamp</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02357.html#NL3D_1_1CCloudScaper32">TexClamp</a></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="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a></td></tr>
+
+</table>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="NL3D_1_1CCloudScapea1" doxytag="NL3D::CCloudScape::CCloudScape" ></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::CCloudScape::CCloudScape </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02434.html">NL3D::IDriver</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>pDriver</em> </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>
+
+<p>
+Definition at line <a class="el" href="a05559.html#l00217">217</a> of file <a class="el" href="a05559.html">cloud_scape.cpp</a>.
+<p>
+References <a class="el" href="a05560.html#l00112">_CurrentCloudInProcess</a>, <a class="el" href="a05560.html#l00174">_DebugQuad</a>, <a class="el" href="a05560.html#l00123">_IsIncomingCSS</a>, <a class="el" href="a05560.html#l00173">_LODQualityThreshold</a>, <a class="el" href="a05560.html#l00179">_MatBill</a>, <a class="el" href="a05560.html#l00178">_MatClear</a>, <a class="el" href="a05560.html#l00106">_NbHalfCloudToUpdate</a>, <a class="el" href="a05560.html#l00177">_VertexBuffer</a>, <a class="el" href="a05968.html#l00059">NL3D::CMaterial::initUnlit()</a>, <a class="el" href="a05641.html#l00078">NL3D::CMaterial::setAlphaTest()</a>, <a class="el" href="a05641.html#l00085">NL3D::CMaterial::setAlphaTestThreshold()</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#l00071">NL3D::CMaterial::setDoubleSided()</a>, <a class="el" href="a06710.html#l00409">NL3D::CVertexBuffer::setNumVertices()</a>, <a class="el" href="a05968.html#l00282">NL3D::CMaterial::setShader()</a>, <a class="el" href="a06710.html#l00169">NL3D::CVertexBuffer::setVertexFormat()</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="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>
+<div class="fragment"><pre>00217 : <a class="code" href="a02357.html#NL3D_1_1CCloudScaper24">_Noise3D</a> (pDriver)
+00218 {
+00219 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper11">_Driver</a> = pDriver;
+00220 <span class="comment">// Misc purpose VB</span>
+00221 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper29">_VertexBuffer</a>.<a class="code" href="a03692.html#NL3D_1_1CVertexBufferz1143_30">setVertexFormat</a> (CVertexBuffer::PositionFlag | CVertexBuffer::TexCoord0Flag | CVertexBuffer::TexCoord1Flag);
+00222 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper29">_VertexBuffer</a>.<a class="code" href="a03692.html#NL3D_1_1CVertexBuffera13">setNumVertices</a> (4);
+00223
+00224 <span class="comment">// Material used for cleaning</span>
+00225 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper21">_MatClear</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz384_1">initUnlit</a>();
+00226 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper21">_MatClear</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz370_1">setDoubleSided</a> (<span class="keyword">true</span>);
+00227 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper21">_MatClear</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz374_4">setZFunc</a> (CMaterial::always);
+00228 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper21">_MatClear</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz374_5">setZWrite</a> (<span class="keyword">false</span>);
+00229 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper21">_MatClear</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz366_3">setBlend</a> (<span class="keyword">false</span>);
+00230
+00231 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz384_1">initUnlit</a>();
+00232 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMateriala8">setShader</a> (CMaterial::Normal); <span class="comment">// not needed</span>
+00233
+00234 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz378_18">texEnvOpRGB</a> (0, CMaterial::Replace);
+00235 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz378_14">texEnvArg0RGB</a> (0, CMaterial::Texture, CMaterial::SrcColor);
+00236
+00237 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz378_17">texEnvOpAlpha</a> (0, CMaterial::Replace);
+00238 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz378_13">texEnvArg0Alpha</a> (0, CMaterial::Texture, CMaterial::SrcAlpha);
+00239
+00240 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz378_18">texEnvOpRGB</a> (1, CMaterial::InterpolateDiffuse);
+00241 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz378_14">texEnvArg0RGB</a> (1, CMaterial::Texture, CMaterial::SrcColor);
+00242 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz378_16">texEnvArg1RGB</a> (1, CMaterial::Previous, CMaterial::SrcColor);
+00243
+00244 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz378_17">texEnvOpAlpha</a> (1, CMaterial::InterpolateDiffuse);
+00245 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz378_13">texEnvArg0Alpha</a> (1, CMaterial::Texture, CMaterial::SrcAlpha);
+00246 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz378_15">texEnvArg1Alpha</a> (1, CMaterial::Previous, CMaterial::SrcAlpha);
+00247
+00248 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz366_3">setBlend</a> (<span class="keyword">true</span>);
+00249 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz366_4">setBlendFunc</a>(CMaterial::one, CMaterial::invsrcalpha);
+00250 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz374_4">setZFunc</a> (CMaterial::always);
+00251 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz374_5">setZWrite</a> (<span class="keyword">false</span>);
+00252 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz370_1">setDoubleSided</a> (<span class="keyword">true</span>);
+00253 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz372_2">setAlphaTest</a>(<span class="keyword">true</span>);
+00254 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper20">_MatBill</a>.<a class="code" href="a02839.html#NL3D_1_1CMaterialz372_3">setAlphaTestThreshold</a>(2.0f/256.0f);
+00255
+00256 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper19">_LODQualityThreshold</a> = 160.0f;
+00257 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper18">_IsIncomingCSS</a> = <span class="keyword">false</span>;
+00258 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper9">_DebugQuad</a> = <span class="keyword">false</span>;
+00259 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper22">_NbHalfCloudToUpdate</a> = 1;
+00260 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper6">_CurrentCloudInProcess</a> = NULL;
+00261 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScapea10" doxytag="NL3D::CCloudScape::~CCloudScape" ></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::CCloudScape::~<a class="el" href="a02357.html">CCloudScape</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>
+
+<p>
+Definition at line <a class="el" href="a05559.html#l00264">264</a> of file <a class="el" href="a05559.html">cloud_scape.cpp</a>.
+<p>
+<div class="fragment"><pre>00265 {
+00266 }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="NL3D_1_1CCloudScapea0" doxytag="NL3D::CCloudScape::anim" ></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::CCloudScape::anim </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">double&nbsp;</td>
+ <td class="mdname" nowrap> <em>dt</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a02315.html">NL3D::CCamera</a> *&nbsp;</td>
+ <td class="mdname" nowrap> <em>pCamera</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></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="a05559.html#l00424">424</a> of file <a class="el" href="a05559.html">cloud_scape.cpp</a>.
+<p>
+References <a class="el" href="a05560.html#l00128">_AllClouds</a>, <a class="el" href="a05560.html#l00110">_AverageFrameRate</a>, <a class="el" href="a05560.html#l00115">_CloudPower</a>, <a class="el" href="a05560.html#l00118">_CurrentCSS</a>, <a class="el" href="a05560.html#l00108">_DeltaTime</a>, <a class="el" href="a05560.html#l00109">_DTRest</a>, <a class="el" href="a05560.html#l00107">_GlobalTime</a>, <a class="el" href="a05560.html#l00124">_IncomingCSS</a>, <a class="el" href="a05560.html#l00123">_IsIncomingCSS</a>, <a class="el" href="a05560.html#l00106">_NbHalfCloudToUpdate</a>, <a class="el" href="a05560.html#l00119">_NewCSS</a>, <a class="el" href="a05560.html#l00120">_OldCSS</a>, <a class="el" href="a05560.html#l00116">_ShouldProcessCloud</a>, <a class="el" href="a05560.html#l00121">_TimeNewCSS</a>, <a class="el" href="a05560.html#l00181">_ViewerCam</a>, <a class="el" href="a06340.html#l00340">NLMISC::CRGBA::A</a>, <a class="el" href="a06657.html#l00080">NLMISC::CValueSmootherTemplate&lt; float &gt;::addValue()</a>, <a class="el" href="a06597.html#l00051">NL3D::SCloudScapeSetup::Ambient</a>, <a class="el" href="a06340.html#l00338">NLMISC::CRGBA::B</a>, <a class="el" href="a05558.html#l00112">NL3D::CCloud::CloudPower</a>, <a class="el" href="a06597.html#l00049">NL3D::SCloudScapeSetup::CloudSpeed</a>, <a class="el" href="a06597.html#l00052">NL3D::SCloudScapeSetup::Diffuse</a>, <a class="el" href="a06340.html#l00336">NLMISC::CRGBA::G</a>, <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>, <a class="el" href="a05559.html#l00042">MAX_CLOUDS</a>, <a class="el" href="a06597.html#l00050">NL3D::SCloudScapeSetup::NbCloud</a>, <a class="el" href="a06340.html#l00334">NLMISC::CRGBA::R</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05558.html#l00108">NL3D::CCloud::Time</a>, <a class="el" href="a06597.html#l00047">NL3D::SCloudScapeSetup::TimeToChange</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a06597.html#l00048">NL3D::SCloudScapeSetup::WindSpeed</a>.
+<p>
+Referenced by <a class="el" href="a05561.html#l00065">NL3D::CCloudScapeUser::anim()</a>, and <a class="el" href="a05559.html#l00269">init()</a>.
+<p>
+<div class="fragment"><pre>00425 {
+00426 <a class="code" href="a04558.html#a10">sint32</a> i;
+00427
+00428 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper30">_ViewerCam</a> = pCamera;
+00429
+00430 <span class="comment">// 10 fps -&gt; 200 fps</span>
+00431 <span class="keywordflow">if</span> (dt &gt; 0.1) dt = 0.1;
+00432 <span class="keywordflow">if</span> (dt &lt; 0.005) dt = 0.005;
+00433
+00434 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper10">_DeltaTime</a> = dt;
+00435 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper16">_GlobalTime</a> += <a class="code" href="a02357.html#NL3D_1_1CCloudScaper10">_DeltaTime</a>;
+00436 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper1">_AverageFrameRate</a>.<a class="code" href="a03643.html#NLMISC_1_1CValueSmootherTemplatea0">addValue</a> ((<span class="keywordtype">float</span>)_DeltaTime);
+00437
+00438 <span class="comment">// Animate the CSS</span>
+00439 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a> &gt; <a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.TimeToChange)
+00440 {
+00441 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a> = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>;
+00442 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a> = _NewCSS;
+00443 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper18">_IsIncomingCSS</a>)
+00444 {
+00445 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper18">_IsIncomingCSS</a> = <span class="keyword">false</span>;
+00446 _NewCSS = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper17">_IncomingCSS</a>;
+00447 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a> = 0;
+00448 <span class="keywordflow">if</span> (_NewCSS.NbCloud &gt; <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud)
+00449 <span class="keywordflow">for</span> (i = 0; i &lt; (<a class="code" href="a04558.html#a10">sint32</a>)(_NewCSS.NbCloud-<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud); ++i)
+00450 {
+00451 <a class="code" href="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a> &amp;c = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper0">_AllClouds</a>[<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud+i];
+00452 c.CloudPower = 0;
+00453 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>[<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud+i] = 0;
+00454 }
+00455 }
+00456 }
+00457 <span class="keywordflow">else</span>
+00458 {
+00459 <span class="keywordtype">float</span> inter = (<span class="keywordtype">float</span>)(<a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a> / <a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.TimeToChange);
+00460 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.WindSpeed = (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.WindSpeed - <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.WindSpeed)*inter + <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.WindSpeed;
+00461 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.CloudSpeed = (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.CloudSpeed - <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.CloudSpeed)*inter + <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.CloudSpeed;
+00462
+00463 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Ambient.R = (<a class="code" href="a04558.html#a7">uint8</a>)((<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.Ambient.R - <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Ambient.R)*inter + <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Ambient.R);
+00464 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Ambient.G = (<a class="code" href="a04558.html#a7">uint8</a>)((<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.Ambient.G - <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Ambient.G)*inter + <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Ambient.G);
+00465 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Ambient.B = (<a class="code" href="a04558.html#a7">uint8</a>)((<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.Ambient.B - <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Ambient.B)*inter + <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Ambient.B);
+00466 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Ambient.A = (<a class="code" href="a04558.html#a7">uint8</a>)((<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.Ambient.A - <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Ambient.A)*inter + <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Ambient.A);
+00467
+00468 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Diffuse.R = (<a class="code" href="a04558.html#a7">uint8</a>)((<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.Diffuse.R - <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Diffuse.R)*inter + <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Diffuse.R);
+00469 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Diffuse.G = (<a class="code" href="a04558.html#a7">uint8</a>)((<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.Diffuse.G - <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Diffuse.G)*inter + <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Diffuse.G);
+00470 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Diffuse.B = (<a class="code" href="a04558.html#a7">uint8</a>)((<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.Diffuse.B - <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Diffuse.B)*inter + <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Diffuse.B);
+00471 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Diffuse.A = (<a class="code" href="a04558.html#a7">uint8</a>)((<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.Diffuse.A - <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Diffuse.A)*inter + <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.Diffuse.A);
+00472
+00473 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.NbCloud &gt; <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud)
+00474 {
+00475 <span class="comment">// Add some clouds</span>
+00476 <span class="keywordtype">float</span> slice = (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.TimeToChange/4) / (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.NbCloud-<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud);
+00477 <a class="code" href="a04558.html#a10">sint32</a> diffCloud = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.NbCloud-<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud;
+00478
+00479 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud + (1+(<a class="code" href="a04558.html#a11">uint32</a>)(<a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a>/slice));
+00480 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud &gt; <a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.NbCloud)
+00481 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.NbCloud;
+00482
+00483 <span class="keywordflow">for</span> (i = 0; i &lt; diffCloud; ++i)
+00484 {
+00485 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper26">_ShouldProcessCloud</a>[<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud+i] = <span class="keyword">true</span>;
+00486 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a> &lt; i*slice)
+00487 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>[<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud+i] = 1;
+00488 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a> &gt; (i*slice+3*<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.TimeToChange/4))
+00489 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>[<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud+i] = 255;
+00490 <span class="keywordflow">else</span>
+00491 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>[<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud+i] = (<a class="code" href="a04558.html#a7">uint8</a>)(255*(<a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a>-i*slice)/(3*<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.TimeToChange/4));
+00492 }
+00493 }
+00494 <span class="keywordflow">else</span>
+00495 {
+00496 <span class="comment">// Remove some clouds</span>
+00497 <a class="code" href="a04558.html#a10">sint32</a> diffCloud = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud-<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.NbCloud;
+00498 <span class="keywordflow">if</span> (diffCloud)
+00499 {
+00500 <span class="keywordtype">float</span> slice = (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.TimeToChange/4) / (<span class="keywordtype">float</span>)diffCloud;
+00501 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud;
+00502
+00503 <span class="keywordflow">for</span> (i = 0; i &lt; diffCloud; ++i)
+00504 {
+00505 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a> &lt; i*slice)
+00506 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>[<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud-i-1] = 255;
+00507 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a> &gt; (i*slice+3*<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.TimeToChange/4))
+00508 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>[<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud-i-1] = 0;
+00509 <span class="keywordflow">else</span>
+00510 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>[<a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a>.NbCloud-i-1] = (<a class="code" href="a04558.html#a7">uint8</a>)(255-255*(<a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a>-i*slice)/(3*<a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a>.TimeToChange/4));
+00511 }
+00512 }
+00513 }
+00514 }
+00515
+00516 <span class="comment">// Make the right number of half cloud</span>
+00517 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper12">_DTRest</a> += dt;
+00518
+00519 <span class="keywordflow">while</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper12">_DTRest</a> &gt; (0.04/<a class="code" href="a02357.html#NL3D_1_1CCloudScaper22">_NbHalfCloudToUpdate</a>))
+00520 {
+00521 <a class="code" href="a02357.html#NL3D_1_1CCloudScaped0">makeHalfCloud</a> ();
+00522 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper12">_DTRest</a> -= 0.04/<a class="code" href="a02357.html#NL3D_1_1CCloudScaper22">_NbHalfCloudToUpdate</a>;
+00523
+00524 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04136.html#a2">MAX_CLOUDS</a>; ++i)
+00525 {
+00526 <a class="code" href="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a> &amp;c = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper0">_AllClouds</a>[i];
+00527 c.Time += 0.04/<a class="code" href="a02357.html#NL3D_1_1CCloudScaper22">_NbHalfCloudToUpdate</a>;
+00528 }
+00529
+00530 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a> += 0.04/<a class="code" href="a02357.html#NL3D_1_1CCloudScaper22">_NbHalfCloudToUpdate</a>;
+00531 }
+00532 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScapea2" doxytag="NL3D::CCloudScape::getMemSize" ></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::CCloudScape::getMemSize </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>
+
+<p>
+Definition at line <a class="el" href="a05559.html#l00829">829</a> of file <a class="el" href="a05559.html">cloud_scape.cpp</a>.
+<p>
+References <a class="el" href="a05560.html#l00128">_AllClouds</a>, <a class="el" href="a05558.html#l00102">NL3D::CCloud::getMemSize()</a>, <a class="el" href="a05559.html#l00042">MAX_CLOUDS</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+Referenced by <a class="el" href="a05561.html#l00077">NL3D::CCloudScapeUser::getMemSize()</a>.
+<p>
+<div class="fragment"><pre>00830 {
+00831 <a class="code" href="a04558.html#a11">uint32</a> nMemSize = 0;
+00832 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a11">uint32</a> i = 0; i &lt; <a class="code" href="a04136.html#a2">MAX_CLOUDS</a>; ++i)
+00833 {
+00834 <a class="code" href="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a> &amp;c = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper0">_AllClouds</a>[i];
+00835 nMemSize += c.getMemSize();
+00836 }
+00837 <span class="keywordflow">return</span> nMemSize;
+00838 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScapea3" doxytag="NL3D::CCloudScape::init" ></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::CCloudScape::init </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03892.html">SCloudScapeSetup</a> *&nbsp;</td>
+ <td class="mdname" nowrap> <em>pCSS</em> = NULL, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a02315.html">NL3D::CCamera</a> *&nbsp;</td>
+ <td class="mdname" nowrap> <em>pCamera</em> = NULL</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></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="a05559.html#l00269">269</a> of file <a class="el" href="a05559.html">cloud_scape.cpp</a>.
+<p>
+References <a class="el" href="a05560.html#l00128">_AllClouds</a>, <a class="el" href="a05560.html#l00110">_AverageFrameRate</a>, <a class="el" href="a05560.html#l00115">_CloudPower</a>, <a class="el" href="a05560.html#l00156">_CloudScheduler</a>, <a class="el" href="a05560.html#l00158">_CloudSchedulerLastAdded</a>, <a class="el" href="a05560.html#l00157">_CloudSchedulerSize</a>, <a class="el" href="a05560.html#l00118">_CurrentCSS</a>, <a class="el" href="a05560.html#l00109">_DTRest</a>, <a class="el" href="a05560.html#l00160">_ExtrapolatedPriorities</a>, <a class="el" href="a05560.html#l00159">_FrameCounter</a>, <a class="el" href="a05560.html#l00111">_Generate</a>, <a class="el" href="a05560.html#l00107">_GlobalTime</a>, <a class="el" href="a05560.html#l00123">_IsIncomingCSS</a>, <a class="el" href="a05560.html#l00106">_NbHalfCloudToUpdate</a>, <a class="el" href="a05560.html#l00119">_NewCSS</a>, <a class="el" href="a05560.html#l00126">_Noise3D</a>, <a class="el" href="a05560.html#l00120">_OldCSS</a>, <a class="el" href="a05560.html#l00116">_ShouldProcessCloud</a>, <a class="el" href="a05560.html#l00169">_SortedClouds</a>, <a class="el" href="a05560.html#l00121">_TimeNewCSS</a>, <a class="el" href="a05560.html#l00181">_ViewerCam</a>, <a class="el" href="a06657.html#l00080">NLMISC::CValueSmootherTemplate&lt; float &gt;::addValue()</a>, <a class="el" href="a06597.html#l00051">NL3D::SCloudScapeSetup::Ambient</a>, <a class="el" href="a05560.html#l00136">NL3D::CCloudScape::SCloudSchedulerEntry::Ambient</a>, <a class="el" href="a05559.html#l00424">anim()</a>, <a class="el" href="a05560.html#l00186">CCloud</a>, <a class="el" href="a05560.html#l00133">NL3D::CCloudScape::SCloudSchedulerEntry::CloudIndex</a>, <a class="el" href="a05560.html#l00134">NL3D::CCloudScape::SCloudSchedulerEntry::DeltaNextCalc</a>, <a class="el" href="a06597.html#l00052">NL3D::SCloudScapeSetup::Diffuse</a>, <a class="el" href="a05560.html#l00137">NL3D::CCloudScape::SCloudSchedulerEntry::Diffuse</a>, <a class="el" href="a05560.html#l00135">NL3D::CCloudScape::SCloudSchedulerEntry::Frame</a>, <a class="el" href="a05558.html#l00108">NL3D::CCloud::FuturTime</a>, <a class="el" href="a05558.html#l00083">NL3D::CCloud::getSizeX()</a>, <a class="el" href="a05558.html#l00084">NL3D::CCloud::getSizeY()</a>, <a class="el" href="a05558.html#l00085">NL3D::CCloud::getSizeZ()</a>, <a class="el" href="a05558.html#l00078">NL3D::CCloud::getX()</a>, <a class="el" href="a05558.html#l00080">NL3D::CCloud::getY()</a>, <a class="el" href="a05558.html#l00081">NL3D::CCloud::getZ()</a>, <a class="el" href="a06657.html#l00056">NLMISC::CValueSmootherTemplate&lt; float &gt;::init()</a>, <a class="el" href="a05557.html#l00065">NL3D::CCloud::init()</a>, <a class="el" href="a05559.html#l00143">NL3D::SCloudTextureClamp::init()</a>, <a class="el" href="a05559.html#l00091">NL3D::SCloudTexture3D::init()</a>, <a class="el" href="a06103.html#l00055">NL3D::CNoise3d::init()</a>, <a class="el" href="a05559.html#l00042">MAX_CLOUDS</a>, <a class="el" href="a05559.html#l00041">MAX_DIST</a>, <a class="el" href="a06597.html#l00050">NL3D::SCloudScapeSetup::NbCloud</a>, <a class="el" href="a05560.html#l00138">NL3D::CCloudScape::SCloudSchedulerEntry::Power</a>, <a class="el" href="a05559.html#l00044">QUEUE_SIZE</a>, <a class="el" href="a05558.html#l00091">NL3D::CCloud::setSizeX()</a>, <a class="el" href="a05558.html#l00092">NL3D::CCloud::setSizeY()</a>, <a class="el" href="a05558.html#l00093">NL3D::CCloud::setSizeZ()</a>, <a class="el" href="a05558.html#l00096">NL3D::CCloud::setTex3DTemp()</a>, <a class="el" href="a05558.html#l00095">NL3D::CCloud::setTexClamp()</a>, <a class="el" href="a05558.html#l00087">NL3D::CCloud::setX()</a>, <a class="el" href="a05558.html#l00088">NL3D::CCloud::setY()</a>, <a class="el" href="a05558.html#l00089">NL3D::CCloud::setZ()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05559.html#l00039">SQR</a>, <a class="el" href="a05560.html#l00183">Tex3DTemp</a>, <a class="el" href="a05560.html#l00184">TexClamp</a>, <a class="el" href="a05558.html#l00108">NL3D::CCloud::Time</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+Referenced by <a class="el" href="a05561.html#l00053">NL3D::CCloudScapeUser::init()</a>.
+<p>
+<div class="fragment"><pre>00270 {
+00271 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper30">_ViewerCam</a> = pCamera;
+00272
+00273 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper24">_Noise3D</a>.init();
+00274
+00275 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper0">_AllClouds</a>.resize (MAX_CLOUDS, <a class="code" href="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a>(<span class="keyword">this</span>));
+00276 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>.resize (MAX_CLOUDS);
+00277 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper26">_ShouldProcessCloud</a>.resize (MAX_CLOUDS);
+00278
+00279 <span class="comment">// For the moment only one clamp texture (generated)</span>
+00280 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper31">Tex3DTemp</a>.init (64, 32, 32);
+00281 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper32">TexClamp</a>.init (64, 32, 32,<span class="stringliteral">""</span>);
+00282
+00283 <span class="keywordflow">if</span> (pCSS != NULL)
+00284 {
+00285 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a> = *pCSS;
+00286 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper23">_NewCSS</a> = *pCSS;
+00287 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper25">_OldCSS</a> = *pCSS;
+00288 }
+00289 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper18">_IsIncomingCSS</a> = <span class="keyword">false</span>;
+00290 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper28">_TimeNewCSS</a> = 60.0*60.0;
+00291
+00292 <a class="code" href="a04558.html#a11">uint32</a> i;
+00293 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04136.html#a2">MAX_CLOUDS</a>; ++i)
+00294 {
+00295 <span class="keywordtype">float</span> newX, newY, newZ, newSizeX, newSizeY, newSizeZ;
+00296
+00297 <a class="code" href="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a> &amp;c = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper0">_AllClouds</a>[i];
+00298
+00299 c.setTex3DTemp (Tex3DTemp);
+00300 c.setTexClamp (TexClamp);
+00301
+00302 <span class="keywordflow">while</span> (<span class="keyword">true</span>)
+00303 {
+00304 <span class="keywordtype">bool</span> bRecalc = <span class="keyword">false</span>;
+00305 newX = <a class="code" href="a04136.html#a1">MAX_DIST</a>*(1.0f-2.0f*(((<span class="keywordtype">float</span>)rand())/RAND_MAX));
+00306 newY = <a class="code" href="a04136.html#a1">MAX_DIST</a>*(1.0f-2.0f*(((<span class="keywordtype">float</span>)rand())/RAND_MAX));
+00307 newZ = 85.0f+40.0f*(1.0f-2.0f*(((<span class="keywordtype">float</span>)rand())/RAND_MAX));
+00308
+00309 newSizeX = 60.0f+10.0f*(1.0f-2.0f*(((<span class="keywordtype">float</span>)rand())/RAND_MAX));
+00310 newSizeY = 30.0f+10.0f*(1.0f-2.0f*(((<span class="keywordtype">float</span>)rand())/RAND_MAX));
+00311 newSizeZ = 30.0f+10.0f*(1.0f-2.0f*(((<span class="keywordtype">float</span>)rand())/RAND_MAX));
+00312 <span class="keywordtype">float</span> f = 0.7f+0.3f*((<span class="keywordtype">float</span>)rand())/RAND_MAX;
+00313 newSizeX *= 1.5f*f;
+00314 newSizeY *= 1.5f*f;
+00315 newSizeZ *= 1.5f*f;
+00316
+00317 <span class="keywordtype">float</span> d = sqrtf(<a class="code" href="a04136.html#a0">SQR</a>(newX)+<a class="code" href="a04136.html#a0">SQR</a>(newY));
+00318 <span class="keywordflow">if</span> (d &gt; <a class="code" href="a04136.html#a1">MAX_DIST</a>) bRecalc = <span class="keyword">true</span>;
+00319
+00320 <span class="keywordtype">float</span> r1 = sqrtf(<a class="code" href="a04136.html#a0">SQR</a>(newSizeX/2)+<a class="code" href="a04136.html#a0">SQR</a>(newSizeY/2)+<a class="code" href="a04136.html#a0">SQR</a>(newSizeZ/2));
+00321 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a11">uint32</a> k = 0;k &lt; i; ++k)
+00322 {
+00323 <a class="code" href="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a> &amp;c2 = _AllClouds[k];
+00324
+00325 <span class="keywordflow">if</span> ((fabs(newX-c2.getX()) &lt; (newSizeX/2+c2.getSizeX()/2)) &amp;&amp;
+00326 (fabs(newY-c2.getY()) &lt; (newSizeY/2+c2.getSizeY()/2)) &amp;&amp;
+00327 (fabs(newZ-c2.getZ()) &lt; (newSizeZ/2+c2.getSizeZ()/2)))
+00328 bRecalc = <span class="keyword">true</span>;
+00329 }
+00330 <span class="keywordflow">if</span> (!bRecalc) <span class="keywordflow">break</span>;
+00331 }
+00332
+00333 c.init (64, 32, 32, 0.122f, 4);
+00334 c.setX (newX-newSizeX/2);
+00335 c.setY (newY-newSizeY/2);
+00336 c.setZ (newZ-newSizeZ/2);
+00337
+00338 c.setSizeX (newSizeX);
+00339 c.setSizeY (newSizeY);
+00340 c.setSizeZ (newSizeZ);
+00341
+00342 c.Time = 0;
+00343 c.FuturTime = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud * 2 * (0.04/<a class="code" href="a02357.html#NL3D_1_1CCloudScaper22">_NbHalfCloudToUpdate</a>);
+00344 <span class="keywordflow">if</span> (i &lt; <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud)
+00345 {
+00346 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>[i] = 255;
+00347 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper26">_ShouldProcessCloud</a>[i] = <span class="keyword">true</span>;
+00348 }
+00349 <span class="keywordflow">else</span>
+00350 {
+00351 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>[i] = 0;
+00352 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper26">_ShouldProcessCloud</a>[i] = <span class="keyword">false</span>;
+00353 }
+00354 }
+00355
+00356 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper27">_SortedClouds</a>.resize (MAX_CLOUDS);
+00357
+00358 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper5">_CloudSchedulerSize</a> = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud;
+00359 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>.resize (MAX_CLOUDS);
+00360 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper14">_FrameCounter</a> = 0;
+00361 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.clear();
+00362 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04136.html#a2">MAX_CLOUDS</a>; ++i)
+00363 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[i].ValidPos = <span class="keyword">false</span>;
+00364
+00365 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud == 0)
+00366 {
+00367 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04136.html#a3">QUEUE_SIZE</a>; ++i)
+00368 {
+00369 SCloudSchedulerEntry cse;
+00370 cse.CloudIndex = -1;
+00371 cse.Frame = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper14">_FrameCounter</a>;
+00372 cse.Ambient = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Ambient;
+00373 cse.Diffuse = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Diffuse;
+00374 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.insert(<a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.end(), cse);
+00375 ++<a class="code" href="a02357.html#NL3D_1_1CCloudScaper14">_FrameCounter</a>;
+00376 }
+00377 }
+00378 <span class="keywordflow">else</span>
+00379 {
+00380 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04136.html#a3">QUEUE_SIZE</a>; ++i)
+00381 {
+00382 <a class="code" href="a04558.html#a10">sint32</a> nCloudNb;
+00383 nCloudNb = i%<a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud;
+00384 SCloudSchedulerEntry cse;
+00385 cse.CloudIndex = nCloudNb;
+00386 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[nCloudNb].ValidPos == <span class="keyword">true</span>)
+00387 {
+00388 SCloudSchedulerEntry &amp;lastCSE = *<a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[nCloudNb].Pos;
+00389 <a class="code" href="a04558.html#a10">sint32</a> delta = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper14">_FrameCounter</a> - lastCSE.Frame;
+00390 lastCSE.DeltaNextCalc = delta;
+00391 }
+00392 cse.Frame = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper14">_FrameCounter</a>;
+00393 cse.Ambient = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Ambient;
+00394 cse.Diffuse = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Diffuse;
+00395 cse.Power = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>[cse.CloudIndex];
+00396 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[cse.CloudIndex].Pos = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.insert(<a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.end(), cse);
+00397 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[cse.CloudIndex].ValidPos = <span class="keyword">true</span>;
+00398 <span class="comment">//_CloudSchedulerLastAdded[cse.CloudIndex].Pos = _CloudScheduler.end()-1;</span>
+00399 ++<a class="code" href="a02357.html#NL3D_1_1CCloudScaper14">_FrameCounter</a>;
+00400 }
+00401 }
+00402
+00403 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper16">_GlobalTime</a> = 0.0f;
+00404 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper12">_DTRest</a> = 0.0f;
+00405 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper15">_Generate</a> = <span class="keyword">true</span>;
+00406 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper1">_AverageFrameRate</a>.<a class="code" href="a03643.html#NLMISC_1_1CValueSmootherTemplatea5">init</a>(16);
+00407 <span class="keywordflow">for</span> (i = 0; i &lt; 16; ++i)
+00408 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper1">_AverageFrameRate</a>.<a class="code" href="a03643.html#NLMISC_1_1CValueSmootherTemplatea0">addValue</a> (40.0f/1000.0f);
+00409
+00410 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper13">_ExtrapolatedPriorities</a>.resize (MAX_CLOUDS);
+00411
+00412 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04136.html#a3">QUEUE_SIZE</a>; ++i)
+00413 <a class="code" href="a02357.html#NL3D_1_1CCloudScapea0">anim</a> (41.0/1000.0, _ViewerCam);
+00414 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScapea4" doxytag="NL3D::CCloudScape::isDebugQuadEnabled" ></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::CCloudScape::isDebugQuadEnabled </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]</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="a05560.html#l00097">97</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+References <a class="el" href="a05560.html#l00174">_DebugQuad</a>.
+<p>
+Referenced by <a class="el" href="a05557.html#l00606">NL3D::CCloud::dispBill()</a>, and <a class="el" href="a05561.html#l00095">NL3D::CCloudScapeUser::isDebugQuadEnabled()</a>.
+<p>
+<div class="fragment"><pre>00097 { <span class="keywordflow">return</span> <a class="code" href="a02357.html#NL3D_1_1CCloudScaper9">_DebugQuad</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaped0" doxytag="NL3D::CCloudScape::makeHalfCloud" ></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::CCloudScape::makeHalfCloud </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="a05559.html#l00535">535</a> of file <a class="el" href="a05559.html">cloud_scape.cpp</a>.
+<p>
+References <a class="el" href="a05560.html#l00128">_AllClouds</a>, <a class="el" href="a05560.html#l00115">_CloudPower</a>, <a class="el" href="a05560.html#l00156">_CloudScheduler</a>, <a class="el" href="a05560.html#l00158">_CloudSchedulerLastAdded</a>, <a class="el" href="a05560.html#l00112">_CurrentCloudInProcess</a>, <a class="el" href="a05560.html#l00113">_CurrentCloudInProcessFuturTime</a>, <a class="el" href="a05560.html#l00118">_CurrentCSS</a>, <a class="el" href="a05560.html#l00160">_ExtrapolatedPriorities</a>, <a class="el" href="a05560.html#l00159">_FrameCounter</a>, <a class="el" href="a05560.html#l00111">_Generate</a>, <a class="el" href="a05560.html#l00173">_LODQualityThreshold</a>, <a class="el" href="a05560.html#l00106">_NbHalfCloudToUpdate</a>, <a class="el" href="a05560.html#l00126">_Noise3D</a>, <a class="el" href="a05560.html#l00116">_ShouldProcessCloud</a>, <a class="el" href="a05560.html#l00181">_ViewerCam</a>, <a class="el" href="a06597.html#l00051">NL3D::SCloudScapeSetup::Ambient</a>, <a class="el" href="a05560.html#l00136">NL3D::CCloudScape::SCloudSchedulerEntry::Ambient</a>, <a class="el" href="a05557.html#l00315">NL3D::CCloud::anim()</a>, <a class="el" href="a05558.html#l00111">NL3D::CCloud::CloudAmbient</a>, <a class="el" href="a05558.html#l00110">NL3D::CCloud::CloudDiffuse</a>, <a class="el" href="a05558.html#l00113">NL3D::CCloud::CloudDistAtt</a>, <a class="el" href="a05560.html#l00133">NL3D::CCloudScape::SCloudSchedulerEntry::CloudIndex</a>, <a class="el" href="a05558.html#l00112">NL3D::CCloud::CloudPower</a>, <a class="el" href="a06597.html#l00049">NL3D::SCloudScapeSetup::CloudSpeed</a>, <a class="el" href="a05560.html#l00134">NL3D::CCloudScape::SCloudSchedulerEntry::DeltaNextCalc</a>, <a class="el" href="a06597.html#l00052">NL3D::SCloudScapeSetup::Diffuse</a>, <a class="el" href="a05560.html#l00137">NL3D::CCloudScape::SCloudSchedulerEntry::Diffuse</a>, <a class="el" href="a05560.html#l00135">NL3D::CCloudScape::SCloudSchedulerEntry::Frame</a>, <a class="el" href="a05558.html#l00108">NL3D::CCloud::FuturTime</a>, <a class="el" href="a05557.html#l00509">NL3D::CCloud::genBill()</a>, <a class="el" href="a05557.html#l00110">NL3D::CCloud::generate()</a>, <a class="el" href="a05558.html#l00079">NL3D::CCloud::getLastX()</a>, <a class="el" href="a05558.html#l00083">NL3D::CCloud::getSizeX()</a>, <a class="el" href="a05558.html#l00084">NL3D::CCloud::getSizeY()</a>, <a class="el" href="a05558.html#l00085">NL3D::CCloud::getSizeZ()</a>, <a class="el" href="a05558.html#l00078">NL3D::CCloud::getX()</a>, <a class="el" href="a05558.html#l00080">NL3D::CCloud::getY()</a>, <a class="el" href="a05558.html#l00081">NL3D::CCloud::getZ()</a>, <a class="el" href="a05558.html#l00115">NL3D::CCloud::LastCloudPower</a>, <a class="el" href="a05557.html#l00182">NL3D::CCloud::light()</a>, <a class="el" href="a05559.html#l00042">MAX_CLOUDS</a>, <a class="el" href="a05559.html#l00041">MAX_DIST</a>, <a class="el" href="a06597.html#l00050">NL3D::SCloudScapeSetup::NbCloud</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05560.html#l00138">NL3D::CCloudScape::SCloudSchedulerEntry::Power</a>, <a class="el" href="a05559.html#l00044">QUEUE_SIZE</a>, <a class="el" href="a05646.html#l00993">r</a>, <a class="el" href="a05586.html#l00349">NLMISC::raiseToNextPowerOf2()</a>, <a class="el" href="a05558.html#l00098">NL3D::CCloud::setLooping()</a>, <a class="el" href="a05558.html#l00087">NL3D::CCloud::setX()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05559.html#l00039">SQR</a>, <a class="el" href="a05558.html#l00108">NL3D::CCloud::Time</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05981.html#l00096">uint8</a>, <a class="el" href="a06597.html#l00048">NL3D::SCloudScapeSetup::WindSpeed</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::x</a>, <a class="el" href="a05646.html#l00236">x</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::y</a>, and <a class="el" href="a06673.html#l00051">NLMISC::CVector::z</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>.
+<p>
+<div class="fragment"><pre>00536 {
+00537 CVector Viewer = CVector(0,0,0); <span class="comment">//_ViewerCam-&gt;getMatrix().getPos();</span>
+00538
+00539 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper15">_Generate</a>)
+00540 {
+00541 <span class="comment">// Find the next cloud in the list</span>
+00542 SCloudSchedulerEntry FrontCSE;
+00543
+00544 FrontCSE = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.front();
+00545
+00546 <span class="comment">// Is the cloud do not have another reference in the list add it now because it should be processed</span>
+00547 <a class="code" href="a04558.html#a10">sint32</a> CloudIndexToAdd = -1;
+00548
+00549 <span class="keywordflow">if</span> ((FrontCSE.CloudIndex != -1) &amp;&amp;
+00550 (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper26">_ShouldProcessCloud</a>[FrontCSE.CloudIndex] == <span class="keyword">true</span>) &amp;&amp;
+00551 ( (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[FrontCSE.CloudIndex].ValidPos == <span class="keyword">false</span>) ||
+00552 ((<a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[FrontCSE.CloudIndex].ValidPos == <span class="keyword">true</span>) &amp;&amp;
+00553 (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[FrontCSE.CloudIndex].Pos == <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.begin()))
+00554 ))
+00555 {
+00556 <span class="comment">// It should be added now !</span>
+00557 CloudIndexToAdd = FrontCSE.CloudIndex;
+00558 FrontCSE.DeltaNextCalc = <a class="code" href="a04136.html#a3">QUEUE_SIZE</a>;
+00559 }
+00560 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud != 0)
+00561 {
+00562 <span class="comment">// Choose a Cloud Index To Add at the end of the list</span>
+00563 <a class="code" href="a04558.html#a11">uint32</a> nPeriodeMax = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud+<a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.NbCloud/10;
+00564 <a class="code" href="a04558.html#a10">sint32</a> Priority = -10000;
+00565 <a class="code" href="a04558.html#a11">uint32</a> i;
+00566
+00567 <span class="keywordtype">float</span> sumPrior = 0.0f;
+00568 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04136.html#a2">MAX_CLOUDS</a>; ++i)
+00569 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper26">_ShouldProcessCloud</a>[i])
+00570 {
+00571 <a class="code" href="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a> &amp;rC = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper0">_AllClouds</a>[i];
+00572 <span class="keywordtype">float</span> ExtrapolatedTime = ((0.04f/<a class="code" href="a02357.html#NL3D_1_1CCloudScaper22">_NbHalfCloudToUpdate</a>) * <a class="code" href="a04136.html#a3">QUEUE_SIZE</a> * 2);
+00573 <span class="keywordtype">float</span> <a class="code" href="a04223.html#a572">x</a> = rC.getLastX () + ExtrapolatedTime * <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.WindSpeed;
+00574 <span class="comment">//float d = sqrtf(SQR(x+rC.getSizeX()/2-Viewer.x)+SQR(rC.getY()+rC.getSizeY()/2-Viewer.y)+</span>
+00575 <span class="comment">// SQR(rC.getZ()+rC.getSizeZ()/2-Viewer.z));</span>
+00576 <span class="keywordtype">float</span> d = <a class="code" href="a04136.html#a0">SQR</a>(x+rC.getSizeX()/2-Viewer.x)+<a class="code" href="a04136.html#a0">SQR</a>(rC.getY()+rC.getSizeY()/2-Viewer.y)+
+00577 <a class="code" href="a04136.html#a0">SQR</a>(rC.getZ()+rC.getSizeZ()/2-Viewer.z);
+00578 <span class="keywordtype">float</span> d05 = sqrtf(d);
+00579 <span class="keywordtype">float</span> d025 = sqrtf(d05);
+00580 <span class="keywordtype">float</span> d075 = d05*d025;
+00581
+00582 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper13">_ExtrapolatedPriorities</a>[i] = 1.0f / d075;
+00583 sumPrior += <a class="code" href="a02357.html#NL3D_1_1CCloudScaper13">_ExtrapolatedPriorities</a>[i];
+00584 }
+00585
+00586 <a class="code" href="a04558.html#a10">sint32</a> sumJeton = 0;
+00587 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04136.html#a2">MAX_CLOUDS</a>; ++i)
+00588 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper26">_ShouldProcessCloud</a>[i])
+00589 {
+00590 <span class="comment">// Normalize priorities</span>
+00591 <span class="keywordtype">float</span> factor = ((<span class="keywordtype">float</span>)<a class="code" href="a04136.html#a3">QUEUE_SIZE</a>) / sumPrior;
+00592 <a class="code" href="a04558.html#a10">sint32</a> nbJeton = (<a class="code" href="a04558.html#a10">sint32</a>)(0.5f+(factor * <a class="code" href="a02357.html#NL3D_1_1CCloudScaper13">_ExtrapolatedPriorities</a>[i]));
+00593
+00594 <span class="keywordflow">if</span> (nbJeton &lt; 1)
+00595 nbJeton = 1;
+00596
+00597 _ExtrapolatedPriorities[i] = (<span class="keywordtype">float</span>)nbJeton;
+00598 sumJeton += nbJeton;
+00599 }
+00600
+00601 <span class="keywordflow">if</span> (sumJeton &gt; <a class="code" href="a04136.html#a3">QUEUE_SIZE</a>)
+00602 {
+00603 <span class="keywordflow">do</span>
+00604 {
+00605 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04136.html#a2">MAX_CLOUDS</a>; ++i)
+00606 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper26">_ShouldProcessCloud</a>[i])
+00607 {
+00608 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper13">_ExtrapolatedPriorities</a>[i] &gt; 1)
+00609 {
+00610 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper13">_ExtrapolatedPriorities</a>[i] -= 1;
+00611 --sumJeton;
+00612 <span class="keywordflow">if</span> (sumJeton == <a class="code" href="a04136.html#a3">QUEUE_SIZE</a>) <span class="keywordflow">break</span>;
+00613 }
+00614 }
+00615 }
+00616 <span class="keywordflow">while</span> (sumJeton &gt; <a class="code" href="a04136.html#a3">QUEUE_SIZE</a>);
+00617 }
+00618
+00619 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04136.html#a2">MAX_CLOUDS</a>; ++i)
+00620 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper26">_ShouldProcessCloud</a>[i])
+00621 {
+00622 <span class="comment">// Cloud Period</span>
+00623 <a class="code" href="a04558.html#a10">sint32</a> newPriority = nPeriodeMax;
+00624 <span class="comment">// Is there a last entry in array ?</span>
+00625 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[i].ValidPos == <span class="keyword">true</span>)
+00626 {
+00627 SCloudSchedulerEntry &amp;rLastCSE = *<a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[i].Pos;
+00628 newPriority = (<a class="code" href="a04558.html#a10">sint32</a>)(<a class="code" href="a04136.html#a3">QUEUE_SIZE</a>/<a class="code" href="a02357.html#NL3D_1_1CCloudScaper13">_ExtrapolatedPriorities</a>[i]);
+00629 newPriority = (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper14">_FrameCounter</a> - rLastCSE.Frame) - newPriority;
+00630 }
+00631 <span class="keywordflow">else</span>
+00632 {
+00633 newPriority = 10000;
+00634 }
+00635 <span class="keywordflow">if</span> (newPriority &gt; Priority)
+00636 {
+00637 Priority = newPriority;
+00638 CloudIndexToAdd = i;
+00639 }
+00640 }
+00641 <a class="code" href="a04199.html#a6">nlassert</a> (CloudIndexToAdd != -1);
+00642 }
+00643
+00644 <span class="comment">// Ok now we have a good cloud index to add so make the new cloud entry</span>
+00645 SCloudSchedulerEntry newCSE;
+00646
+00647 newCSE.CloudIndex = CloudIndexToAdd;
+00648 newCSE.Frame = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper14">_FrameCounter</a>;
+00649 newCSE.Ambient = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Ambient;
+00650 newCSE.Diffuse = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.Diffuse;
+00651 <span class="keywordflow">if</span> (CloudIndexToAdd != -1)
+00652 {
+00653 newCSE.Power = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper2">_CloudPower</a>[CloudIndexToAdd];
+00654
+00655 <span class="comment">// If the cloud where added previously to the list</span>
+00656 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[CloudIndexToAdd].ValidPos == <span class="keyword">true</span>)
+00657 {
+00658 <span class="comment">// This means that the cloud were added from a long time ago</span>
+00659 SCloudSchedulerEntry &amp;lastCSE = *<a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[CloudIndexToAdd].Pos;
+00660 <a class="code" href="a04558.html#a10">sint32</a> delta = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper14">_FrameCounter</a> - lastCSE.Frame;
+00661 lastCSE.DeltaNextCalc = delta;
+00662
+00663 <span class="comment">// But the cloud can be removed (if so we have to not process it anymore)</span>
+00664 <span class="keywordflow">if</span> (newCSE.Power == 0)
+00665 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper26">_ShouldProcessCloud</a>[CloudIndexToAdd] = <span class="keyword">false</span>;
+00666 }
+00667 <span class="keywordflow">else</span>
+00668 {
+00669 <span class="comment">// No the cloud do not appear previously in the list... So its a new one</span>
+00670 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper0">_AllClouds</a>[CloudIndexToAdd].reset (_ViewerCam);
+00671 }
+00672
+00673 <span class="comment">// If the last cloud occurence of the cloud appear at beginning so no more occurence in list</span>
+00674 <span class="keywordflow">if</span> (<a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[FrontCSE.CloudIndex].Pos == <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.begin())
+00675 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[FrontCSE.CloudIndex].ValidPos = <span class="keyword">false</span>;
+00676
+00677 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[CloudIndexToAdd].Pos = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.insert(<a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.end(), newCSE);
+00678 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper4">_CloudSchedulerLastAdded</a>[CloudIndexToAdd].ValidPos = <span class="keyword">true</span>;
+00679 <span class="comment">//_CloudSchedulerLastAdded[CloudIndexToAdd].Pos = _CloudScheduler.end()-1;</span>
+00680 }
+00681 <span class="keywordflow">else</span>
+00682 {
+00683 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.insert(<a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.end(), newCSE);
+00684 }
+00685 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.pop_front ();
+00686 ++<a class="code" href="a02357.html#NL3D_1_1CCloudScaper14">_FrameCounter</a>;
+00687 <span class="comment">// End of scheduling</span>
+00688
+00689 <span class="comment">// Get the cloud to process (this must be the next occurence of front cloud)</span>
+00690 std::list&lt;SCloudSchedulerEntry&gt;::iterator it = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.begin();
+00691 <span class="keywordflow">while</span> (it != <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.end())
+00692 {
+00693 SCloudSchedulerEntry &amp;rCSE = *it;
+00694 <span class="keywordflow">if</span> (rCSE.CloudIndex == FrontCSE.CloudIndex)
+00695 <span class="keywordflow">break</span>;
+00696 ++it;
+00697 }
+00698
+00699 SCloudSchedulerEntry CSEToCalc;
+00700 <span class="comment">// The cloud is no more present in the list</span>
+00701 <span class="keywordflow">if</span> (it == <a class="code" href="a02357.html#NL3D_1_1CCloudScaper3">_CloudScheduler</a>.end())
+00702 {
+00703 FrontCSE.DeltaNextCalc = 1;
+00704 CSEToCalc = FrontCSE;
+00705 }
+00706 <span class="keywordflow">else</span>
+00707 {
+00708 CSEToCalc = *it;
+00709 }
+00710
+00711 <span class="comment">// Is the cloud to calc is a real cloud</span>
+00712 <span class="keywordflow">if</span> (CSEToCalc.CloudIndex == -1)
+00713 {
+00714 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper6">_CurrentCloudInProcess</a> = NULL;
+00715 }
+00716 <span class="keywordflow">else</span>
+00717 {
+00718 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper6">_CurrentCloudInProcess</a> = &amp;<a class="code" href="a02357.html#NL3D_1_1CCloudScaper0">_AllClouds</a>[CSEToCalc.CloudIndex];
+00719 <a class="code" href="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a> &amp;c = *<a class="code" href="a02357.html#NL3D_1_1CCloudScaper6">_CurrentCloudInProcess</a>;
+00720
+00721 <span class="comment">// To go from Front cloud to CSEToCalc cloud we should take the front DeltaNextCalc</span>
+00722
+00723 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper7">_CurrentCloudInProcessFuturTime</a> = ((0.04/<a class="code" href="a02357.html#NL3D_1_1CCloudScaper22">_NbHalfCloudToUpdate</a>) * FrontCSE.DeltaNextCalc * 2);
+00724 c.setX ((<span class="keywordtype">float</span>)(c.getLastX() + <a class="code" href="a02357.html#NL3D_1_1CCloudScaper7">_CurrentCloudInProcessFuturTime</a> * <a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.WindSpeed));
+00725
+00726 <span class="keywordtype">float</span> d2D = sqrtf(<a class="code" href="a04136.html#a0">SQR</a>(c.getX()+c.getSizeX()/2-Viewer.x)+<a class="code" href="a04136.html#a0">SQR</a>(c.getY()+c.getSizeY()/2-Viewer.y));
+00727
+00728 <span class="keywordflow">if</span> (d2D &gt; <a class="code" href="a04136.html#a1">MAX_DIST</a>)
+00729 c.CloudDistAtt = 255;
+00730 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (d2D &gt; (<a class="code" href="a04136.html#a1">MAX_DIST</a>-100.0f))
+00731 c.CloudDistAtt = (<a class="code" href="a04558.html#a7">uint8</a>)(255*((d2D-(<a class="code" href="a04136.html#a1">MAX_DIST</a>-100.0f))/100.0f));
+00732 <span class="keywordflow">else</span>
+00733 c.CloudDistAtt = 0;
+00734
+00735 c.LastCloudPower = c.CloudPower;
+00736 c.CloudPower = CSEToCalc.Power;
+00737 c.CloudDiffuse = CSEToCalc.Diffuse;
+00738 c.CloudAmbient = CSEToCalc.Ambient;
+00739
+00740 c.anim (_CurrentCloudInProcessFuturTime*<a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.CloudSpeed,
+00741 _CurrentCloudInProcessFuturTime*<a class="code" href="a02357.html#NL3D_1_1CCloudScaper8">_CurrentCSS</a>.WindSpeed);
+00742
+00743 c.generate (_Noise3D);
+00744 }
+00745 }
+00746 <span class="keywordflow">else</span>
+00747 {
+00748 <span class="keywordflow">if</span> (_CurrentCloudInProcess != NULL)
+00749 {
+00750 <a class="code" href="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a> &amp;c = *_CurrentCloudInProcess;
+00751
+00752 c.Time = 0;
+00753 c.FuturTime = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper7">_CurrentCloudInProcessFuturTime</a>;
+00754 c.light();
+00755
+00756 <span class="keywordflow">if</span> (c.getX() &gt; <a class="code" href="a04136.html#a1">MAX_DIST</a>)
+00757 {
+00758 c.setX (c.getX() - (2 * <a class="code" href="a04136.html#a1">MAX_DIST</a>));
+00759 c.setLooping ();
+00760 }
+00761
+00762 <span class="keywordtype">float</span> <a class="code" href="a04223.html#a628">r</a> = sqrtf(<a class="code" href="a04136.html#a0">SQR</a>(c.getSizeX()/2)+<a class="code" href="a04136.html#a0">SQR</a>(c.getSizeY()/2)+<a class="code" href="a04136.html#a0">SQR</a>(c.getSizeZ()/2));
+00763 <span class="keywordtype">float</span> d2D = sqrtf(<a class="code" href="a04136.html#a0">SQR</a>(c.getX()+c.getSizeX()/2-Viewer.x)+<a class="code" href="a04136.html#a0">SQR</a>(c.getY()+c.getSizeY()/2-Viewer.y));
+00764 <span class="keywordtype">float</span> d = sqrtf(<a class="code" href="a04136.html#a0">SQR</a>(c.getX()+c.getSizeX()/2-Viewer.x)+<a class="code" href="a04136.html#a0">SQR</a>(c.getY()+c.getSizeY()/2-Viewer.y)+
+00765 <a class="code" href="a04136.html#a0">SQR</a>(c.getZ()+c.getSizeZ()/2-Viewer.z));
+00766 <a class="code" href="a04558.html#a11">uint32</a> lookAtSize = (<a class="code" href="a04558.html#a11">uint32</a>)(<a class="code" href="a02357.html#NL3D_1_1CCloudScaper19">_LODQualityThreshold</a>*<a class="code" href="a04223.html#a628">r</a>/d);
+00767 lookAtSize = <a class="code" href="a05378.html#a262">raiseToNextPowerOf2</a> (lookAtSize);
+00768 <span class="keywordflow">if</span> (lookAtSize &gt; 128) lookAtSize = 128;
+00769
+00770 c.genBill (_ViewerCam, lookAtSize);
+00771 }
+00772 }
+00773 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper15">_Generate</a> = !<a class="code" href="a02357.html#NL3D_1_1CCloudScaper15">_Generate</a>;
+00774 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScapea5" doxytag="NL3D::CCloudScape::render" ></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::CCloudScape::render </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>
+
+<p>
+Definition at line <a class="el" href="a05559.html#l00777">777</a> of file <a class="el" href="a05559.html">cloud_scape.cpp</a>.
+<p>
+References <a class="el" href="a05560.html#l00128">_AllClouds</a>, <a class="el" href="a05560.html#l00169">_SortedClouds</a>, <a class="el" href="a05560.html#l00181">_ViewerCam</a>, <a class="el" href="a05733.html#l00051">NL3D::CFrustum::Bottom</a>, <a class="el" href="a05560.html#l00166">NL3D::CCloudScape::SSortedCloudEntry::Cloud</a>, <a class="el" href="a05558.html#l00112">NL3D::CCloud::CloudPower</a>, <a class="el" href="a05557.html#l00606">NL3D::CCloud::dispBill()</a>, <a class="el" href="a05560.html#l00167">NL3D::CCloudScape::SSortedCloudEntry::Distance</a>, <a class="el" href="a05733.html#l00051">NL3D::CFrustum::Far</a>, <a class="el" href="a05531.html#l00092">NL3D::CCamera::getFrustum()</a>, <a class="el" href="a06575.html#l00076">NL3D::ITransformable::getMatrix()</a>, <a class="el" href="a05558.html#l00083">NL3D::CCloud::getSizeX()</a>, <a class="el" href="a05558.html#l00084">NL3D::CCloud::getSizeY()</a>, <a class="el" href="a05558.html#l00085">NL3D::CCloud::getSizeZ()</a>, <a class="el" href="a05558.html#l00078">NL3D::CCloud::getX()</a>, <a class="el" href="a05558.html#l00080">NL3D::CCloud::getY()</a>, <a class="el" href="a05558.html#l00081">NL3D::CCloud::getZ()</a>, <a class="el" href="a05972.html#l00914">NLMISC::CMatrix::invert()</a>, <a class="el" href="a05558.html#l00115">NL3D::CCloud::LastCloudPower</a>, <a class="el" href="a05733.html#l00051">NL3D::CFrustum::Left</a>, <a class="el" href="a05559.html#l00042">MAX_CLOUDS</a>, <a class="el" href="a05733.html#l00051">NL3D::CFrustum::Near</a>, <a class="el" href="a05733.html#l00052">NL3D::CFrustum::Perspective</a>, <a class="el" href="a05733.html#l00051">NL3D::CFrustum::Right</a>, <a class="el" href="a05646.html#l00977">s</a>, <a class="el" href="a02434.html#NL3D_1_1IDrivera60">NL3D::IDriver::setFrustum()</a>, <a class="el" href="a05972.html#l00267">NLMISC::CMatrix::setPos()</a>, <a class="el" href="a02434.html#NL3D_1_1IDrivera68">NL3D::IDriver::setupModelMatrix()</a>, <a class="el" href="a02434.html#NL3D_1_1IDrivera69">NL3D::IDriver::setupScissor()</a>, <a class="el" href="a02434.html#NL3D_1_1IDrivera72">NL3D::IDriver::setupViewMatrix()</a>, <a class="el" href="a02434.html#NL3D_1_1IDrivera74">NL3D::IDriver::setupViewport()</a>, <a class="el" href="a05559.html#l00039">SQR</a>, <a class="el" href="a05733.html#l00051">NL3D::CFrustum::Top</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05646.html#l00237">v</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::x</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::y</a>, and <a class="el" href="a06673.html#l00051">NLMISC::CVector::z</a>.
+<p>
+Referenced by <a class="el" href="a05561.html#l00071">NL3D::CCloudScapeUser::render()</a>.
+<p>
+<div class="fragment"><pre>00778 {
+00779 <a class="code" href="a04558.html#a11">uint32</a> i, j;
+00780
+00781 CVector Viewer = CVector (0,0,0);
+00782
+00783 CMatrix viewMat;
+00784 viewMat = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper30">_ViewerCam</a>-&gt;<a class="code" href="a02278.html#NL3D_1_1ITransformablea1">getMatrix</a> ();
+00785 viewMat.setPos(CVector(0,0,0));
+00786 viewMat.invert ();
+00787 CScissor <a class="code" href="a04223.html#a626">s</a>;
+00788 <a class="code" href="a04223.html#a626">s</a>.initFullScreen ();
+00789 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper11">_Driver</a>-&gt;<a class="code" href="a02434.html#NL3D_1_1IDrivera69">setupScissor</a> (s);
+00790 CViewport <a class="code" href="a04223.html#a576">v</a>;
+00791 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper11">_Driver</a>-&gt;<a class="code" href="a02434.html#NL3D_1_1IDrivera74">setupViewport</a> (v);
+00792 CFrustum f = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper30">_ViewerCam</a>-&gt;<a class="code" href="a02315.html#NL3D_1_1CCameraa13">getFrustum</a>();
+00793 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper11">_Driver</a>-&gt;<a class="code" href="a02434.html#NL3D_1_1IDrivera60">setFrustum</a> (f.Left, f.Right, f.Bottom, f.Top, f.Near, f.Far, f.Perspective);
+00794 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper11">_Driver</a>-&gt;<a class="code" href="a02434.html#NL3D_1_1IDrivera72">setupViewMatrix</a> (viewMat);
+00795 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper11">_Driver</a>-&gt;<a class="code" href="a02434.html#NL3D_1_1IDrivera68">setupModelMatrix</a> (CMatrix::Identity);
+00796
+00797 <a class="code" href="a04558.html#a11">uint32</a> nNbCloudToRender = 0;
+00798
+00799 <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="a04136.html#a2">MAX_CLOUDS</a>; ++i)
+00800 {
+00801 <a class="code" href="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a> &amp;c = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper0">_AllClouds</a>[i];
+00802 SSortedCloudEntry &amp;sce = <a class="code" href="a02357.html#NL3D_1_1CCloudScaper27">_SortedClouds</a>[nNbCloudToRender];
+00803 sce.Cloud = &amp;c;
+00804 sce.Distance = sqrtf(<a class="code" href="a04136.html#a0">SQR</a>(c.getX()+c.getSizeX()/2-Viewer.x)+<a class="code" href="a04136.html#a0">SQR</a>(c.getY()+c.getSizeY()/2-Viewer.y)+
+00805 <a class="code" href="a04136.html#a0">SQR</a>(c.getZ()+c.getSizeZ()/2-Viewer.z));
+00806 nNbCloudToRender++;
+00807 }
+00808
+00809 <span class="keywordflow">for</span> (i = 0; i &lt; nNbCloudToRender-1; ++i)
+00810 <span class="keywordflow">for</span> (j = i+1; j &lt; nNbCloudToRender; ++j)
+00811 {
+00812 <span class="keywordflow">if</span> (_SortedClouds[i].Distance &lt; _SortedClouds[j].Distance)
+00813 {
+00814 SSortedCloudEntry sceTmp = _SortedClouds[i];
+00815 _SortedClouds[i] = _SortedClouds[j];
+00816 _SortedClouds[j] = sceTmp;
+00817 }
+00818 }
+00819
+00820 <span class="keywordflow">for</span> (i = 0; i &lt; nNbCloudToRender; ++i)
+00821 {
+00822 <a class="code" href="a02357.html#NL3D_1_1CCloudScapen0">CCloud</a> *pC = _SortedClouds[i].Cloud;
+00823 <span class="keywordflow">if</span> ((pC-&gt;CloudPower &gt; 0) || (pC-&gt;LastCloudPower &gt; 0))
+00824 pC-&gt;dispBill (_ViewerCam);
+00825 }
+00826 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScapea6" doxytag="NL3D::CCloudScape::set" ></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::CCloudScape::set </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03892.html">SCloudScapeSetup</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>css</em> </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>
+
+<p>
+Definition at line <a class="el" href="a05559.html#l00417">417</a> of file <a class="el" href="a05559.html">cloud_scape.cpp</a>.
+<p>
+References <a class="el" href="a05560.html#l00124">_IncomingCSS</a>, and <a class="el" href="a05560.html#l00123">_IsIncomingCSS</a>.
+<p>
+Referenced by <a class="el" href="a05561.html#l00059">NL3D::CCloudScapeUser::set()</a>.
+<p>
+<div class="fragment"><pre>00418 {
+00419 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper17">_IncomingCSS</a> = css;
+00420 <a class="code" href="a02357.html#NL3D_1_1CCloudScaper18">_IsIncomingCSS</a> = <span class="keyword">true</span>;
+00421 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScapea7" doxytag="NL3D::CCloudScape::setDebugQuad" ></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::CCloudScape::setDebugQuad </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</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="a05560.html#l00098">98</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+References <a class="el" href="a05560.html#l00174">_DebugQuad</a>.
+<p>
+Referenced by <a class="el" href="a05561.html#l00101">NL3D::CCloudScapeUser::setDebugQuad()</a>.
+<p>
+<div class="fragment"><pre>00098 { <a class="code" href="a02357.html#NL3D_1_1CCloudScaper9">_DebugQuad</a> = b; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScapea8" doxytag="NL3D::CCloudScape::setNbCloudToUpdateIn80ms" ></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::CCloudScape::setNbCloudToUpdateIn80ms </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>n</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</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="a05560.html#l00095">95</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+References <a class="el" href="a05560.html#l00106">_NbHalfCloudToUpdate</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+Referenced by <a class="el" href="a05561.html#l00089">NL3D::CCloudScapeUser::setNbCloudToUpdateIn80ms()</a>.
+<p>
+<div class="fragment"><pre>00095 { <a class="code" href="a02357.html#NL3D_1_1CCloudScaper22">_NbHalfCloudToUpdate</a> = n; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScapea9" doxytag="NL3D::CCloudScape::setQuality" ></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::CCloudScape::setQuality </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>threshold</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</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="a05560.html#l00093">93</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+References <a class="el" href="a05560.html#l00173">_LODQualityThreshold</a>.
+<p>
+Referenced by <a class="el" href="a05561.html#l00083">NL3D::CCloudScapeUser::setQuality()</a>.
+<p>
+<div class="fragment"><pre>00093 { <a class="code" href="a02357.html#NL3D_1_1CCloudScaper19">_LODQualityThreshold</a> = threshold; }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Friends And Related Function Documentation</h2>
+<a class="anchor" name="NL3D_1_1CCloudScapen0" doxytag="NL3D::CCloudScape::CCloud" ></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="a02356.html">CCloud</a><code> [friend]</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="a05560.html#l00186">186</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00269">init()</a>. </td>
+ </tr>
+</table>
+<hr><h2>Field Documentation</h2>
+<a class="anchor" name="NL3D_1_1CCloudScaper0" doxytag="NL3D::CCloudScape::_AllClouds" ></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::vector&lt;<a class="el" href="a02356.html">CCloud</a>&gt; <a class="el" href="a02357.html#NL3D_1_1CCloudScaper0">NL3D::CCloudScape::_AllClouds</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="a05560.html#l00128">128</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, <a class="el" href="a05559.html#l00829">getMemSize()</a>, <a class="el" href="a05559.html#l00269">init()</a>, <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>, and <a class="el" href="a05559.html#l00777">render()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper1" doxytag="NL3D::CCloudScape::_AverageFrameRate" ></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="a03642.html">NLMISC::CValueSmoother</a> <a class="el" href="a02357.html#NL3D_1_1CCloudScaper1">NL3D::CCloudScape::_AverageFrameRate</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="a05560.html#l00110">110</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, and <a class="el" href="a05559.html#l00269">init()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper2" doxytag="NL3D::CCloudScape::_CloudPower" ></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::vector&lt;<a class="el" href="a04558.html#a7">uint8</a>&gt; <a class="el" href="a02357.html#NL3D_1_1CCloudScaper2">NL3D::CCloudScape::_CloudPower</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="a05560.html#l00115">115</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, <a class="el" href="a05559.html#l00269">init()</a>, and <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper3" doxytag="NL3D::CCloudScape::_CloudScheduler" ></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::list&lt;<a class="el" href="a02359.html">SCloudSchedulerEntry</a>&gt; <a class="el" href="a02357.html#NL3D_1_1CCloudScaper3">NL3D::CCloudScape::_CloudScheduler</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="a05560.html#l00156">156</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00269">init()</a>, and <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper4" doxytag="NL3D::CCloudScape::_CloudSchedulerLastAdded" ></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::vector&lt;<a class="el" href="a02358.html">SCloudSchedulerAccel</a>&gt; <a class="el" href="a02357.html#NL3D_1_1CCloudScaper4">NL3D::CCloudScape::_CloudSchedulerLastAdded</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="a05560.html#l00158">158</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00269">init()</a>, and <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper5" doxytag="NL3D::CCloudScape::_CloudSchedulerSize" ></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="a02357.html#NL3D_1_1CCloudScaper5">NL3D::CCloudScape::_CloudSchedulerSize</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="a05560.html#l00157">157</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00269">init()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper6" doxytag="NL3D::CCloudScape::_CurrentCloudInProcess" ></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="a02356.html">CCloud</a>* <a class="el" href="a02357.html#NL3D_1_1CCloudScaper6">NL3D::CCloudScape::_CurrentCloudInProcess</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="a05560.html#l00112">112</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00217">CCloudScape()</a>, and <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper7" doxytag="NL3D::CCloudScape::_CurrentCloudInProcessFuturTime" ></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"> double <a class="el" href="a02357.html#NL3D_1_1CCloudScaper7">NL3D::CCloudScape::_CurrentCloudInProcessFuturTime</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="a05560.html#l00113">113</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper8" doxytag="NL3D::CCloudScape::_CurrentCSS" ></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="a03892.html">SCloudScapeSetup</a> <a class="el" href="a02357.html#NL3D_1_1CCloudScaper8">NL3D::CCloudScape::_CurrentCSS</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="a05560.html#l00118">118</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, <a class="el" href="a05559.html#l00269">init()</a>, and <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper9" doxytag="NL3D::CCloudScape::_DebugQuad" ></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="a02357.html#NL3D_1_1CCloudScaper9">NL3D::CCloudScape::_DebugQuad</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="a05560.html#l00174">174</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00217">CCloudScape()</a>, <a class="el" href="a05560.html#l00097">isDebugQuadEnabled()</a>, and <a class="el" href="a05560.html#l00098">setDebugQuad()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper10" doxytag="NL3D::CCloudScape::_DeltaTime" ></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"> double <a class="el" href="a02357.html#NL3D_1_1CCloudScaper10">NL3D::CCloudScape::_DeltaTime</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="a05560.html#l00108">108</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper11" doxytag="NL3D::CCloudScape::_Driver" ></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">NL3D::IDriver</a>* <a class="el" href="a02357.html#NL3D_1_1CCloudScaper11">NL3D::CCloudScape::_Driver</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="a05560.html#l00176">176</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05557.html#l00041">NL3D::CCloud::CCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper12" doxytag="NL3D::CCloudScape::_DTRest" ></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"> double <a class="el" href="a02357.html#NL3D_1_1CCloudScaper12">NL3D::CCloudScape::_DTRest</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="a05560.html#l00109">109</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, and <a class="el" href="a05559.html#l00269">init()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper13" doxytag="NL3D::CCloudScape::_ExtrapolatedPriorities" ></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::vector&lt;float&gt; <a class="el" href="a02357.html#NL3D_1_1CCloudScaper13">NL3D::CCloudScape::_ExtrapolatedPriorities</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="a05560.html#l00160">160</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00269">init()</a>, and <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper14" doxytag="NL3D::CCloudScape::_FrameCounter" ></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="a02357.html#NL3D_1_1CCloudScaper14">NL3D::CCloudScape::_FrameCounter</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="a05560.html#l00159">159</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00269">init()</a>, and <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper15" doxytag="NL3D::CCloudScape::_Generate" ></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="a02357.html#NL3D_1_1CCloudScaper15">NL3D::CCloudScape::_Generate</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="a05560.html#l00111">111</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00269">init()</a>, and <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper16" doxytag="NL3D::CCloudScape::_GlobalTime" ></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"> double <a class="el" href="a02357.html#NL3D_1_1CCloudScaper16">NL3D::CCloudScape::_GlobalTime</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="a05560.html#l00107">107</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, and <a class="el" href="a05559.html#l00269">init()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper17" doxytag="NL3D::CCloudScape::_IncomingCSS" ></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="a03892.html">SCloudScapeSetup</a> <a class="el" href="a02357.html#NL3D_1_1CCloudScaper17">NL3D::CCloudScape::_IncomingCSS</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="a05560.html#l00124">124</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, and <a class="el" href="a05559.html#l00417">set()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper18" doxytag="NL3D::CCloudScape::_IsIncomingCSS" ></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="a02357.html#NL3D_1_1CCloudScaper18">NL3D::CCloudScape::_IsIncomingCSS</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="a05560.html#l00123">123</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, <a class="el" href="a05559.html#l00217">CCloudScape()</a>, <a class="el" href="a05559.html#l00269">init()</a>, and <a class="el" href="a05559.html#l00417">set()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper19" doxytag="NL3D::CCloudScape::_LODQualityThreshold" ></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="a02357.html#NL3D_1_1CCloudScaper19">NL3D::CCloudScape::_LODQualityThreshold</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="a05560.html#l00173">173</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00217">CCloudScape()</a>, <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>, and <a class="el" href="a05560.html#l00093">setQuality()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper20" doxytag="NL3D::CCloudScape::_MatBill" ></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">NL3D::CMaterial</a> <a class="el" href="a02357.html#NL3D_1_1CCloudScaper20">NL3D::CCloudScape::_MatBill</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="a05560.html#l00179">179</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00217">CCloudScape()</a>, and <a class="el" href="a05557.html#l00606">NL3D::CCloud::dispBill()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper21" doxytag="NL3D::CCloudScape::_MatClear" ></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">NL3D::CMaterial</a> <a class="el" href="a02357.html#NL3D_1_1CCloudScaper21">NL3D::CCloudScape::_MatClear</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="a05560.html#l00178">178</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00217">CCloudScape()</a>, <a class="el" href="a05557.html#l00509">NL3D::CCloud::genBill()</a>, <a class="el" href="a05557.html#l00110">NL3D::CCloud::generate()</a>, <a class="el" href="a05557.html#l00182">NL3D::CCloud::light()</a>, and <a class="el" href="a05557.html#l00251">NL3D::CCloud::reset()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper22" doxytag="NL3D::CCloudScape::_NbHalfCloudToUpdate" ></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="a02357.html#NL3D_1_1CCloudScaper22">NL3D::CCloudScape::_NbHalfCloudToUpdate</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="a05560.html#l00106">106</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, <a class="el" href="a05559.html#l00217">CCloudScape()</a>, <a class="el" href="a05559.html#l00269">init()</a>, <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>, and <a class="el" href="a05560.html#l00095">setNbCloudToUpdateIn80ms()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper23" doxytag="NL3D::CCloudScape::_NewCSS" ></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="a03892.html">SCloudScapeSetup</a> <a class="el" href="a02357.html#NL3D_1_1CCloudScaper23">NL3D::CCloudScape::_NewCSS</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="a05560.html#l00119">119</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, and <a class="el" href="a05559.html#l00269">init()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper24" doxytag="NL3D::CCloudScape::_Noise3D" ></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="a02988.html">CNoise3d</a> <a class="el" href="a02357.html#NL3D_1_1CCloudScaper24">NL3D::CCloudScape::_Noise3D</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="a05560.html#l00126">126</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00269">init()</a>, and <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper25" doxytag="NL3D::CCloudScape::_OldCSS" ></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="a03892.html">SCloudScapeSetup</a> <a class="el" href="a02357.html#NL3D_1_1CCloudScaper25">NL3D::CCloudScape::_OldCSS</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="a05560.html#l00120">120</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, and <a class="el" href="a05559.html#l00269">init()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper26" doxytag="NL3D::CCloudScape::_ShouldProcessCloud" ></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::vector&lt;bool&gt; <a class="el" href="a02357.html#NL3D_1_1CCloudScaper26">NL3D::CCloudScape::_ShouldProcessCloud</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="a05560.html#l00116">116</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, <a class="el" href="a05559.html#l00269">init()</a>, and <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper27" doxytag="NL3D::CCloudScape::_SortedClouds" ></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::vector&lt;<a class="el" href="a02360.html">SSortedCloudEntry</a>&gt; <a class="el" href="a02357.html#NL3D_1_1CCloudScaper27">NL3D::CCloudScape::_SortedClouds</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="a05560.html#l00169">169</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00269">init()</a>, and <a class="el" href="a05559.html#l00777">render()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper28" doxytag="NL3D::CCloudScape::_TimeNewCSS" ></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"> double <a class="el" href="a02357.html#NL3D_1_1CCloudScaper28">NL3D::CCloudScape::_TimeNewCSS</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="a05560.html#l00121">121</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, and <a class="el" href="a05559.html#l00269">init()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper29" doxytag="NL3D::CCloudScape::_VertexBuffer" ></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="a03692.html">NL3D::CVertexBuffer</a> <a class="el" href="a02357.html#NL3D_1_1CCloudScaper29">NL3D::CCloudScape::_VertexBuffer</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="a05560.html#l00177">177</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00217">CCloudScape()</a>, <a class="el" href="a05557.html#l00328">NL3D::CCloud::disp()</a>, <a class="el" href="a05557.html#l00606">NL3D::CCloud::dispBill()</a>, <a class="el" href="a05557.html#l00388">NL3D::CCloud::dispXYZ()</a>, <a class="el" href="a05557.html#l00509">NL3D::CCloud::genBill()</a>, <a class="el" href="a05557.html#l00110">NL3D::CCloud::generate()</a>, <a class="el" href="a05557.html#l00182">NL3D::CCloud::light()</a>, and <a class="el" href="a05557.html#l00251">NL3D::CCloud::reset()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper30" doxytag="NL3D::CCloudScape::_ViewerCam" ></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="a02315.html">NL3D::CCamera</a>* <a class="el" href="a02357.html#NL3D_1_1CCloudScaper30">NL3D::CCloudScape::_ViewerCam</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="a05560.html#l00181">181</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00424">anim()</a>, <a class="el" href="a05559.html#l00269">init()</a>, <a class="el" href="a05559.html#l00535">makeHalfCloud()</a>, and <a class="el" href="a05559.html#l00777">render()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper31" doxytag="NL3D::CCloudScape::Tex3DTemp" ></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="a03893.html">SCloudTexture3D</a> <a class="el" href="a02357.html#NL3D_1_1CCloudScaper31">NL3D::CCloudScape::Tex3DTemp</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="a05560.html#l00183">183</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00269">init()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CCloudScaper32" doxytag="NL3D::CCloudScape::TexClamp" ></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="a03894.html">SCloudTextureClamp</a> <a class="el" href="a02357.html#NL3D_1_1CCloudScaper32">NL3D::CCloudScape::TexClamp</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="a05560.html#l00184">184</a> of file <a class="el" href="a05560.html">cloud_scape.h</a>.
+<p>
+Referenced by <a class="el" href="a05559.html#l00269">init()</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="a05560.html">cloud_scape.h</a><li><a class="el" href="a05559.html">cloud_scape.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 06:45:08 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>