diff options
Diffstat (limited to 'docs/doxygen/nel/a02654.html')
-rw-r--r-- | docs/doxygen/nel/a02654.html | 737 |
1 files changed, 737 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02654.html b/docs/doxygen/nel/a02654.html new file mode 100644 index 00000000..e6a991c8 --- /dev/null +++ b/docs/doxygen/nel/a02654.html @@ -0,0 +1,737 @@ +<!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::CIGSurfaceLight 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 Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div> +<h1>NL3D::CIGSurfaceLight Class Reference</h1><code>#include <<a class="el" href="a05807.html">ig_surface_light.h</a>></code> +<p> +<hr><a name="_details"></a><h2>Detailed Description</h2> +Class owned by <a class="el" href="a02671.html">CInstanceGroup</a> to get StaticLightSetup for dynamic models. It owns a map of SurfaceIdent -> <a class="el" href="a03464.html">CSurfaceLightGrid</a> <dl compact><dt><b>Author:</b></dt><dd>Lionel Berenguier <p> +Nevrax France </dd></dl> +<dl compact><dt><b>Date:</b></dt><dd>2002 </dd></dl> + +<p> + +<p> +Definition at line <a class="el" href="a05807.html#l00048">48</a> of file <a class="el" href="a05807.html">ig_surface_light.h</a>.<table border=0 cellpadding=0 cellspacing=0> +<tr><td></td></tr> +<tr><td colspan=2><br><h2>Public Types</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>typedef TRetrieverGridMap::iterator </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightw0">ItRetrieverGridMap</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::map< <a class="el" href="a04558.html#a11">uint32</a>,<br> + <a class="el" href="a02655.html">CRetrieverLightGrid</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightw1">TRetrieverGridMap</a></td></tr> + +<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLighta0">build</a> (const <a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightw1">TRetrieverGridMap</a> &retrieverGridMap, float cellSize, const std::vector< <a class="el" href="a04558.html#a15">uint</a> > &plRemap)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLighta1">CIGSurfaceLight</a> ()</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. A <a class="el" href="a02654.html">CIGSurfaceLight</a> MUST be owned by an <a class="el" href="a02671.html">CInstanceGroup</a> (nlassert(_Owner!=NULL));. <a href="#NL3D_1_1CIGSurfaceLighta1"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLighta2">clear</a> ()</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">clear. <a href="#NL3D_1_1CIGSurfaceLighta2"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>float </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLighta3">getCellSize</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>float </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLighta4">getOOCellSize</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightw1">TRetrieverGridMap</a> & </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLighta5">getRetrieverGridMap</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLighta6">getStaticLightSetup</a> (<a class="el" href="a04558.html#a15">uint</a> retrieverIdentifier, <a class="el" href="a04558.html#a14">sint</a> surfaceId, const <a class="el" href="a03128.html">CVector</a> &localPos, std::vector< <a class="el" href="a03092.html">CPointLightInfluence</a> > &pointLightList, <a class="el" href="a04558.html#a7">uint8</a> &sunContribution, <a class="el" href="a03337.html">NLMISC::CRGBA</a> &localAmbient)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLighta7">serial</a> (<a class="el" href="a02270.html">NLMISC::IStream</a> &f)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLighta8">setOwner</a> (<a class="el" href="a02671.html">CInstanceGroup</a> *owner)</td></tr> + +<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>float </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightr0">_CellSize</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>float </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightr1">_OOCellSize</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02671.html">CInstanceGroup</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightr2">_Owner</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightw1">TRetrieverGridMap</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightr3">_RetrieverGridMap</a></td></tr> + +<tr><td colspan=2><br><h2>Friends</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>class </td><td class="memItemRight" valign=bottom><a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightn0">CSurfaceLightGrid</a></td></tr> + +</table> +<hr><h2>Member Typedef Documentation</h2> +<a class="anchor" name="NL3D_1_1CIGSurfaceLightw0" doxytag="NL3D::CIGSurfaceLight::ItRetrieverGridMap" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> typedef TRetrieverGridMap::iterator <a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightw0">NL3D::CIGSurfaceLight::ItRetrieverGridMap</a> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05807.html#l00063">63</a> of file <a class="el" href="a05807.html">ig_surface_light.h</a>. +<p> +Referenced by <a class="el" href="a05806.html#l00050">build()</a>, and <a class="el" href="a05806.html#l00121">getStaticLightSetup()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CIGSurfaceLightw1" doxytag="NL3D::CIGSurfaceLight::TRetrieverGridMap" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> typedef std::map<<a class="el" href="a04558.html#a11">uint32</a>, <a class="el" href="a02655.html">CRetrieverLightGrid</a>> <a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightw1">NL3D::CIGSurfaceLight::TRetrieverGridMap</a> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05807.html#l00062">62</a> of file <a class="el" href="a05807.html">ig_surface_light.h</a>. +<p> +Referenced by <a class="el" href="a06350.html#l00266">NL3D::CInstanceGroup::build()</a>, <a class="el" href="a05806.html#l00050">build()</a>, and <a class="el" href="a05807.html#l00102">getRetrieverGridMap()</a>. </td> + </tr> +</table> +<hr><h2>Constructor & Destructor Documentation</h2> +<a class="anchor" name="NL3D_1_1CIGSurfaceLighta1" doxytag="NL3D::CIGSurfaceLight::CIGSurfaceLight" ></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::CIGSurfaceLight::CIGSurfaceLight </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Constructor. A <a class="el" href="a02654.html">CIGSurfaceLight</a> MUST be owned by an <a class="el" href="a02671.html">CInstanceGroup</a> (nlassert(_Owner!=NULL));. +<p> + +<p> +Definition at line <a class="el" href="a05806.html#l00035">35</a> of file <a class="el" href="a05806.html">ig_surface_light.cpp</a>. +<p> +References <a class="el" href="a05807.html#l00110">_CellSize</a>, and <a class="el" href="a05807.html#l00111">_OOCellSize</a>. +<p> +<div class="fragment"><pre>00036 { +00037 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr2">_Owner</a>= NULL; +00038 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr0">_CellSize</a>= 1; +00039 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr1">_OOCellSize</a>= 1; +00040 } +</pre></div> </td> + </tr> +</table> +<hr><h2>Member Function Documentation</h2> +<a class="anchor" name="NL3D_1_1CIGSurfaceLighta0" doxytag="NL3D::CIGSurfaceLight::build" ></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::CIGSurfaceLight::build </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightw1">TRetrieverGridMap</a> & </td> + <td class="mdname" nowrap> <em>retrieverGridMap</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>float </td> + <td class="mdname" nowrap> <em>cellSize</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const std::vector< <a class="el" href="a04558.html#a15">uint</a> > & </td> + <td class="mdname" nowrap> <em>plRemap</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +build. called by <a class="el" href="a02675.html">CInstanceLighter</a>. <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>retrieverGridMap</em> </td><td>is the gridMap builded by <a class="el" href="a02675.html">CInstanceLighter</a> </td></tr> + <tr><td valign=top><em>cellSize</em> </td><td>is the size in meter of a cell </td></tr> + <tr><td valign=top><em>plRemap</em> </td><td>is the array returned by <a class="el" href="a02671.html#NL3D_1_1CInstanceGroupa4">CInstanceGroup::build()</a> to remap indices</td></tr> + </table> +</dl> + +<p> +Definition at line <a class="el" href="a05806.html#l00050">50</a> of file <a class="el" href="a05806.html">ig_surface_light.cpp</a>. +<p> +References <a class="el" href="a05807.html#l00110">_CellSize</a>, <a class="el" href="a05807.html#l00111">_OOCellSize</a>, <a class="el" href="a05807.html#l00112">_RetrieverGridMap</a>, <a class="el" href="a06476.html#l00101">NL3D::CSurfaceLightGrid::Cells</a>, <a class="el" href="a05807.html#l00063">ItRetrieverGridMap</a>, <a class="el" href="a06476.html#l00070">NL3D::CSurfaceLightGrid::CCellCorner::Light</a>, <a class="el" href="a06476.html#l00074">NL3D::CSurfaceLightGrid::CCellCorner::LocalAmbientId</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06116.html#l00184">NLMISC::CObjectVector< CCellCorner >::size()</a>, <a class="el" href="a05807.html#l00062">TRetrieverGridMap</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a06350.html#l00266">NL3D::CInstanceGroup::build()</a>. +<p> +<div class="fragment"><pre>00052 { +00053 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr3">_RetrieverGridMap</a>= retrieverGridMap; +00054 <a class="code" href="a04199.html#a6">nlassert</a>(cellSize>0); +00055 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr0">_CellSize</a>= cellSize; +00056 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr1">_OOCellSize</a>= 1.f/<a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr0">_CellSize</a>; +00057 +00058 <span class="comment">// remap indices.</span> +00059 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightw0">ItRetrieverGridMap</a> it; +00060 <span class="keywordflow">for</span>(it= <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr3">_RetrieverGridMap</a>.begin(); it!=<a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr3">_RetrieverGridMap</a>.end(); it++) +00061 { +00062 <span class="comment">// For all grids of this retriever</span> +00063 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a15">uint</a> iGrid= 0; iGrid<it->second.Grids.size(); iGrid++) +00064 { +00065 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightn0">CSurfaceLightGrid</a> &grid= it->second.Grids[iGrid]; +00066 +00067 <span class="comment">// For all cells of this grid.</span> +00068 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a15">uint</a> iCell= 0; iCell<grid.Cells.size(); iCell++) +00069 { +00070 CSurfaceLightGrid::CCellCorner &cell= grid.Cells[iCell]; +00071 +00072 <span class="comment">// For all point light id.</span> +00073 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a15">uint</a> lid= 0; lid<CSurfaceLightGrid::NumLightPerCorner; lid++) +00074 { +00075 <span class="keywordflow">if</span>(cell.Light[lid] == 0xFF) +00076 <span class="keywordflow">break</span>; +00077 <span class="keywordflow">else</span> +00078 cell.Light[lid]= plRemap[cell.Light[lid]]; +00079 } +00080 +00081 <span class="comment">// remap ambient light</span> +00082 <span class="keywordflow">if</span>(cell.LocalAmbientId!=0xFF) +00083 cell.LocalAmbientId= plRemap[cell.LocalAmbientId]; +00084 } +00085 } +00086 } +00087 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CIGSurfaceLighta2" doxytag="NL3D::CIGSurfaceLight::clear" ></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::CIGSurfaceLight::clear </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +clear. +<p> + +<p> +Definition at line <a class="el" href="a05806.html#l00090">90</a> of file <a class="el" href="a05806.html">ig_surface_light.cpp</a>. +<p> +References <a class="el" href="a05807.html#l00110">_CellSize</a>, <a class="el" href="a05807.html#l00111">_OOCellSize</a>, and <a class="el" href="a05807.html#l00112">_RetrieverGridMap</a>. +<p> +Referenced by <a class="el" href="a06350.html#l00266">NL3D::CInstanceGroup::build()</a>, and <a class="el" href="a06350.html#l00379">NL3D::CInstanceGroup::serial()</a>. +<p> +<div class="fragment"><pre>00091 { +00092 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr3">_RetrieverGridMap</a>.clear(); +00093 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr0">_CellSize</a>= 1; +00094 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr1">_OOCellSize</a>= 1; +00095 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CIGSurfaceLighta3" doxytag="NL3D::CIGSurfaceLight::getCellSize" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> float NL3D::CIGSurfaceLight::getCellSize </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05807.html#l00098">98</a> of file <a class="el" href="a05807.html">ig_surface_light.h</a>. +<p> +References <a class="el" href="a05807.html#l00110">_CellSize</a>. +<p> +<div class="fragment"><pre>00098 {<span class="keywordflow">return</span> <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr0">_CellSize</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CIGSurfaceLighta4" doxytag="NL3D::CIGSurfaceLight::getOOCellSize" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> float NL3D::CIGSurfaceLight::getOOCellSize </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05807.html#l00099">99</a> of file <a class="el" href="a05807.html">ig_surface_light.h</a>. +<p> +References <a class="el" href="a05807.html#l00111">_OOCellSize</a>. +<p> +Referenced by <a class="el" href="a06475.html#l00062">NL3D::CSurfaceLightGrid::getStaticLightSetup()</a>. +<p> +<div class="fragment"><pre>00099 {<span class="keywordflow">return</span> <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr1">_OOCellSize</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CIGSurfaceLighta5" doxytag="NL3D::CIGSurfaceLight::getRetrieverGridMap" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> const <a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightw1">TRetrieverGridMap</a>& NL3D::CIGSurfaceLight::getRetrieverGridMap </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05807.html#l00102">102</a> of file <a class="el" href="a05807.html">ig_surface_light.h</a>. +<p> +References <a class="el" href="a05807.html#l00112">_RetrieverGridMap</a>, and <a class="el" href="a05807.html#l00062">TRetrieverGridMap</a>. +<p> +Referenced by <a class="el" href="a05808.html#l00100">NL3D::CIGSurfaceLightBuild::buildPLDebugMesh()</a>. +<p> +<div class="fragment"><pre>00102 {<span class="keywordflow">return</span> <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr3">_RetrieverGridMap</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CIGSurfaceLighta6" doxytag="NL3D::CIGSurfaceLight::getStaticLightSetup" ></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::CIGSurfaceLight::getStaticLightSetup </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>retrieverIdentifier</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a14">sint</a> </td> + <td class="mdname" nowrap> <em>surfaceId</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a03128.html">CVector</a> & </td> + <td class="mdname" nowrap> <em>localPos</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>std::vector< <a class="el" href="a03092.html">CPointLightInfluence</a> > & </td> + <td class="mdname" nowrap> <em>pointLightList</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a7">uint8</a> & </td> + <td class="mdname" nowrap> <em>sunContribution</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a03337.html">NLMISC::CRGBA</a> & </td> + <td class="mdname" nowrap> <em>localAmbient</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Get StaticLightSetup Infos from the grid <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>retrieverIdentifier</em> </td><td>value returned by CGlobalRetriever::getLocalRetrieverId(globalPos). </td></tr> + <tr><td valign=top><em>surfaceId</em> </td><td>the id of the surface in the LocalRetriever </td></tr> + <tr><td valign=top><em>localPos</em> </td><td>position to retrieve info. Position local to the LocalRetriever!! ie gp.LocalPosition.Estimated </td></tr> + <tr><td valign=top><em>pointLightList</em> </td><td>list of pointlight to append pointLight influecnes </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>false if retrieverIdentifier / surfaceId is not found. In this case pointLightList is not modified, and sunContribution is set to 255, and localAmbient is set to 0</dd></dl> + +<p> +Definition at line <a class="el" href="a05806.html#l00121">121</a> of file <a class="el" href="a05806.html">ig_surface_light.cpp</a>. +<p> +References <a class="el" href="a05807.html#l00112">_RetrieverGridMap</a>, <a class="el" href="a05807.html#l00054">NL3D::CIGSurfaceLight::CRetrieverLightGrid::Grids</a>, <a class="el" href="a05807.html#l00063">ItRetrieverGridMap</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06339.html#l00066">NLMISC::CRGBA::set()</a>, <a class="el" href="a05981.html#l00104">sint</a>, <a class="el" href="a06116.html#l00184">NLMISC::CObjectVector< CSurfaceLightGrid >::size()</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05981.html#l00096">uint8</a>. +<p> +Referenced by <a class="el" href="a06351.html#l00353">NL3D::CInstanceGroup::getStaticLightSetup()</a>. +<p> +<div class="fragment"><pre>00123 { +00124 <a class="code" href="a04199.html#a6">nlassert</a>(_Owner); +00125 +00126 <span class="comment">// default</span> +00127 sunContribution= 255; +00128 localAmbient.<a class="code" href="a03337.html#NLMISC_1_1CRGBAa14">set</a>(0,0,0,0); +00129 +00130 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightw0">ItRetrieverGridMap</a> it; +00131 it= <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr3">_RetrieverGridMap</a>.find(retrieverIdentifier); +00132 <span class="comment">// If bad ident</span> +00133 <span class="keywordflow">if</span>(it==<a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr3">_RetrieverGridMap</a>.end()) +00134 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00135 CRetrieverLightGrid &rlg= it->second; +00136 <span class="comment">// if bad surfaceId</span> +00137 <span class="keywordflow">if</span>(surfaceId<0 || surfaceId>= (<a class="code" href="a04558.html#a14">sint</a>)rlg.Grids.size()) +00138 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00139 +00140 <span class="comment">// Else, ok, get it.</span> +00141 rlg.Grids[surfaceId].getStaticLightSetup(localPos, pointLightList, sunContribution, *<span class="keyword">this</span>, localAmbient); +00142 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00143 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CIGSurfaceLighta7" doxytag="NL3D::CIGSurfaceLight::serial" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CIGSurfaceLight::serial </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02270.html">NLMISC::IStream</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>f</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05806.html#l00098">98</a> of file <a class="el" href="a05806.html">ig_surface_light.cpp</a>. +<p> +References <a class="el" href="a05807.html#l00110">_CellSize</a>, <a class="el" href="a05807.html#l00111">_OOCellSize</a>, <a class="el" href="a05807.html#l00112">_RetrieverGridMap</a>, <a class="el" href="a06462.html#l00232">NLMISC::IStream::serial()</a>, <a class="el" href="a06462.html#l00324">NLMISC::IStream::serialCont()</a>, <a class="el" href="a06461.html#l00266">NLMISC::IStream::serialVersion()</a>, and <a class="el" href="a05981.html#l00104">sint</a>. +<p> +<div class="fragment"><pre>00099 { +00100 <span class="comment">/*</span> +00101 <span class="comment"> Version 1:</span> +00102 <span class="comment"> - The retriever grid map is now a map<uint,CRetrieverLightGrid>. Discard compatibility but.</span> +00103 <span class="comment"> */</span> +00104 <a class="code" href="a04558.html#a14">sint</a> ver= f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion</a>(1); +00105 +00106 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_CellSize); +00107 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_OOCellSize); +00108 <span class="keywordflow">if</span>(ver<1) +00109 { +00110 std::map<std::string, CRetrieverLightGrid> oldFormatRetrieverGridMap; +00111 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a>(oldFormatRetrieverGridMap); +00112 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr3">_RetrieverGridMap</a>.clear(); +00113 } +00114 <span class="keywordflow">else</span> +00115 { +00116 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a>(_RetrieverGridMap); +00117 } +00118 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CIGSurfaceLighta8" doxytag="NL3D::CIGSurfaceLight::setOwner" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CIGSurfaceLight::setOwner </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02671.html">CInstanceGroup</a> * </td> + <td class="mdname1" valign="top" nowrap> <em>owner</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05806.html#l00043">43</a> of file <a class="el" href="a05806.html">ig_surface_light.cpp</a>. +<p> +References <a class="el" href="a05622.html#l00290">nlassert</a>. +<p> +Referenced by <a class="el" href="a06350.html#l00245">NL3D::CInstanceGroup::CInstanceGroup()</a>. +<p> +<div class="fragment"><pre>00044 { +00045 <a class="code" href="a04199.html#a6">nlassert</a>(owner!=NULL); +00046 <a class="code" href="a02654.html#NL3D_1_1CIGSurfaceLightr2">_Owner</a>= owner; +00047 } +</pre></div> </td> + </tr> +</table> +<hr><h2>Friends And Related Function Documentation</h2> +<a class="anchor" name="NL3D_1_1CIGSurfaceLightn0" doxytag="NL3D::CIGSurfaceLight::CSurfaceLightGrid" ></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="a03464.html">CSurfaceLightGrid</a><code> [friend]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05807.html#l00106">106</a> of file <a class="el" href="a05807.html">ig_surface_light.h</a>. </td> + </tr> +</table> +<hr><h2>Field Documentation</h2> +<a class="anchor" name="NL3D_1_1CIGSurfaceLightr0" doxytag="NL3D::CIGSurfaceLight::_CellSize" ></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="a02654.html#NL3D_1_1CIGSurfaceLightr0">NL3D::CIGSurfaceLight::_CellSize</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05807.html#l00110">110</a> of file <a class="el" href="a05807.html">ig_surface_light.h</a>. +<p> +Referenced by <a class="el" href="a05806.html#l00050">build()</a>, <a class="el" href="a05806.html#l00035">CIGSurfaceLight()</a>, <a class="el" href="a05806.html#l00090">clear()</a>, <a class="el" href="a05807.html#l00098">getCellSize()</a>, and <a class="el" href="a05806.html#l00098">serial()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CIGSurfaceLightr1" doxytag="NL3D::CIGSurfaceLight::_OOCellSize" ></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="a02654.html#NL3D_1_1CIGSurfaceLightr1">NL3D::CIGSurfaceLight::_OOCellSize</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05807.html#l00111">111</a> of file <a class="el" href="a05807.html">ig_surface_light.h</a>. +<p> +Referenced by <a class="el" href="a05806.html#l00050">build()</a>, <a class="el" href="a05806.html#l00035">CIGSurfaceLight()</a>, <a class="el" href="a05806.html#l00090">clear()</a>, <a class="el" href="a05807.html#l00099">getOOCellSize()</a>, and <a class="el" href="a05806.html#l00098">serial()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CIGSurfaceLightr2" doxytag="NL3D::CIGSurfaceLight::_Owner" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02671.html">CInstanceGroup</a>* <a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightr2">NL3D::CIGSurfaceLight::_Owner</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05807.html#l00109">109</a> of file <a class="el" href="a05807.html">ig_surface_light.h</a>. +<p> +Referenced by <a class="el" href="a06475.html#l00062">NL3D::CSurfaceLightGrid::getStaticLightSetup()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CIGSurfaceLightr3" doxytag="NL3D::CIGSurfaceLight::_RetrieverGridMap" ></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="a02654.html#NL3D_1_1CIGSurfaceLightw1">TRetrieverGridMap</a> <a class="el" href="a02654.html#NL3D_1_1CIGSurfaceLightr3">NL3D::CIGSurfaceLight::_RetrieverGridMap</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05807.html#l00112">112</a> of file <a class="el" href="a05807.html">ig_surface_light.h</a>. +<p> +Referenced by <a class="el" href="a05806.html#l00050">build()</a>, <a class="el" href="a05806.html#l00090">clear()</a>, <a class="el" href="a05807.html#l00102">getRetrieverGridMap()</a>, <a class="el" href="a05806.html#l00121">getStaticLightSetup()</a>, and <a class="el" href="a05806.html#l00098">serial()</a>. </td> + </tr> +</table> +<hr>The documentation for this class was generated from the following files:<ul> +<li><a class="el" href="a05807.html">ig_surface_light.h</a><li><a class="el" href="a05806.html">ig_surface_light.cpp</a></ul> +<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 06:47:12 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> |