source: GTP/trunk/Lib/Illum/IllumModule/doc/html/class_caustic_cube_map_rendering_run.html @ 894

Revision 894, 15.9 KB checked in by szirmay, 18 years ago (diff)
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3<title>GameTools Illumination Module: CausticCubeMapRenderingRun Class Reference</title>
4<link href="doxygen.css" rel="stylesheet" type="text/css">
5<link href="tabs.css" rel="stylesheet" type="text/css">
6</head><body>
7<!-- Generated by Doxygen 1.4.6-NO -->
8<div class="tabs">
9  <ul>
10    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
11    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
12    <li id="current"><a href="annotated.html"><span>Classes</span></a></li>
13  </ul></div>
14<div class="tabs">
15  <ul>
16    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
17    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
18    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
19  </ul></div>
20<h1>CausticCubeMapRenderingRun Class Reference</h1><!-- doxytag: class="CausticCubeMapRenderingRun" --><!-- doxytag: inherits="RenderingRun" -->Base abstract class that defines a rendering process of a caustic cubemap. 
21<a href="#_details">More...</a>
22<p>
23<p>Inheritance diagram for CausticCubeMapRenderingRun:
24<p><center><img src="class_caustic_cube_map_rendering_run.png" usemap="#CausticCubeMapRenderingRun_map" border="0" alt=""></center>
25<map name="CausticCubeMapRenderingRun_map">
26<area href="class_rendering_run.html" alt="RenderingRun" shape="rect" coords="0,0,218,24">
27<area href="class_ogre_caustic_cube_map_rendering_run.html" alt="OgreCausticCubeMapRenderingRun" shape="rect" coords="0,112,218,136">
28</map>
29<a href="class_caustic_cube_map_rendering_run-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
30<tr><td></td></tr>
31<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
32<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_caustic_cube_map_rendering_run.html#b5702027266babc141f5221220e922bb">CausticCubeMapRenderingRun</a> (unsigned long <a class="el" href="class_rendering_run.html#cb0a9e0eec1217206a14f7d387487443">startFrame</a>, unsigned long <a class="el" href="class_rendering_run.html#7196160c7f2effe7235b710a12f1b262">updateInterval</a>, unsigned int <a class="el" href="class_caustic_cube_map_rendering_run.html#24652b7f9f253e79a2d7361021ae7a5d">resolution</a>, bool <a class="el" href="class_caustic_cube_map_rendering_run.html#1e07ccec65f3d7ec480aca0c0065316a">updateAllFace</a>)</td></tr>
33
34<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#b5702027266babc141f5221220e922bb"></a><br></td></tr>
35<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_caustic_cube_map_rendering_run.html#2c39d2b16e356d040d51151bcb119be1">photonMapChanged</a> (<a class="el" href="class_rendering_run.html">RenderingRun</a> *run)=0</td></tr>
36
37<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called if the changed run is a <a class="el" href="class_photon_map_rendering_run.html">PhotonMapRenderingRun</a>.  <a href="#2c39d2b16e356d040d51151bcb119be1"></a><br></td></tr>
38<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
39<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="10d4513ab77258a408a042a35aa2101b"></a><!-- doxytag: member="CausticCubeMapRenderingRun::createCausticCubeMap" ref="10d4513ab77258a408a042a35aa2101b" args="()=0" -->
40virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_caustic_cube_map_rendering_run.html#10d4513ab77258a408a042a35aa2101b">createCausticCubeMap</a> ()=0</td></tr>
41
42<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a cubemap texture used for the caustic-cubemap. <br></td></tr>
43<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_caustic_cube_map_rendering_run.html#8243ea1e4988a378cfa338a3a10d218a">updateCubeFace</a> (int facenum)=0</td></tr>
44
45<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Updates one face of the cubemap.  <a href="#8243ea1e4988a378cfa338a3a10d218a"></a><br></td></tr>
46<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_caustic_cube_map_rendering_run.html#64958b6a3860e9185202c61a11976ce3">faceNeedsUpdate</a> (int facenum)=0</td></tr>
47
48<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks if a cubemap face needs to be updated.  <a href="#64958b6a3860e9185202c61a11976ce3"></a><br></td></tr>
49<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_caustic_cube_map_rendering_run.html#95c0eb448e09d62d03f4f7ea5a100109">updateFrame</a> (unsigned long frameNum)</td></tr>
50
51<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function does the actual update in a frame.  <a href="#95c0eb448e09d62d03f4f7ea5a100109"></a><br></td></tr>
52<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
53<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1e07ccec65f3d7ec480aca0c0065316a"></a><!-- doxytag: member="CausticCubeMapRenderingRun::updateAllFace" ref="1e07ccec65f3d7ec480aca0c0065316a" args="" -->
54bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_caustic_cube_map_rendering_run.html#1e07ccec65f3d7ec480aca0c0065316a">updateAllFace</a></td></tr>
55
56<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">defines if all cubemap faces should be updated in a frame or only one face per frame <br></td></tr>
57<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5dcf62f39e6961d92d62008fb510ed63"></a><!-- doxytag: member="CausticCubeMapRenderingRun::currentFace" ref="5dcf62f39e6961d92d62008fb510ed63" args="" -->
58unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_caustic_cube_map_rendering_run.html#5dcf62f39e6961d92d62008fb510ed63">currentFace</a></td></tr>
59
60<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">the number of the face to be updated <br></td></tr>
61<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="24652b7f9f253e79a2d7361021ae7a5d"></a><!-- doxytag: member="CausticCubeMapRenderingRun::resolution" ref="24652b7f9f253e79a2d7361021ae7a5d" args="" -->
62unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_caustic_cube_map_rendering_run.html#24652b7f9f253e79a2d7361021ae7a5d">resolution</a></td></tr>
63
64<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">the resolution of the cubemap texture that was created by this run <br></td></tr>
65</table>
66<hr><a name="_details"></a><h2>Detailed Description</h2>
67Base abstract class that defines a rendering process of a caustic cubemap.
68<p>
69A caustic cubemap stores caustic light spots caused by a caustic emitter object.
70<p>
71<hr><h2>Constructor &amp; Destructor Documentation</h2>
72<a class="anchor" name="b5702027266babc141f5221220e922bb"></a><!-- doxytag: member="CausticCubeMapRenderingRun::CausticCubeMapRenderingRun" ref="b5702027266babc141f5221220e922bb" args="(unsigned long startFrame, unsigned long updateInterval, unsigned int resolution, bool updateAllFace)" --><p>
73<table class="mdTable" cellpadding="2" cellspacing="0">
74  <tr>
75    <td class="mdRow">
76      <table cellpadding="0" cellspacing="0" border="0">
77        <tr>
78          <td class="md" nowrap valign="top">CausticCubeMapRenderingRun::CausticCubeMapRenderingRun           </td>
79          <td class="md" valign="top">(&nbsp;</td>
80          <td class="md" nowrap valign="top">unsigned long&nbsp;</td>
81          <td class="mdname" nowrap> <em>startFrame</em>, </td>
82        </tr>
83        <tr>
84          <td class="md" nowrap align="right"></td>
85          <td class="md"></td>
86          <td class="md" nowrap>unsigned long&nbsp;</td>
87          <td class="mdname" nowrap> <em>updateInterval</em>, </td>
88        </tr>
89        <tr>
90          <td class="md" nowrap align="right"></td>
91          <td class="md"></td>
92          <td class="md" nowrap>unsigned int&nbsp;</td>
93          <td class="mdname" nowrap> <em>resolution</em>, </td>
94        </tr>
95        <tr>
96          <td class="md" nowrap align="right"></td>
97          <td class="md"></td>
98          <td class="md" nowrap>bool&nbsp;</td>
99          <td class="mdname" nowrap> <em>updateAllFace</em></td>
100        </tr>
101        <tr>
102          <td class="md"></td>
103          <td class="md">)&nbsp;</td>
104          <td class="md" colspan="2"></td>
105        </tr>
106      </table>
107    </td>
108  </tr>
109</table>
110<table cellspacing="5" cellpadding="0" border="0">
111  <tr>
112    <td>
113      &nbsp;
114    </td>
115    <td>
116
117<p>
118Constructor.
119<p>
120<dl compact><dt><b>Parameters:</b></dt><dd>
121  <table border="0" cellspacing="2" cellpadding="0">
122    <tr><td valign="top"></td><td valign="top"><em>startFrame</em>&nbsp;</td><td>adds an offset to the current frame number to help evenly distribute updates between frames </td></tr>
123    <tr><td valign="top"></td><td valign="top"><em>updateInterval</em>&nbsp;</td><td>photon map update frequency </td></tr>
124    <tr><td valign="top"></td><td valign="top"><em>resolution</em>&nbsp;</td><td>photon map resolution </td></tr>
125    <tr><td valign="top"></td><td valign="top"><em>updateAllFace</em>&nbsp;</td><td>defines if all cubemap faces should be updated in a frame or only one face per frame </td></tr>
126  </table>
127</dl>
128    </td>
129  </tr>
130</table>
131<hr><h2>Member Function Documentation</h2>
132<a class="anchor" name="64958b6a3860e9185202c61a11976ce3"></a><!-- doxytag: member="CausticCubeMapRenderingRun::faceNeedsUpdate" ref="64958b6a3860e9185202c61a11976ce3" args="(int facenum)=0" --><p>
133<table class="mdTable" cellpadding="2" cellspacing="0">
134  <tr>
135    <td class="mdRow">
136      <table cellpadding="0" cellspacing="0" border="0">
137        <tr>
138          <td class="md" nowrap valign="top">virtual bool CausticCubeMapRenderingRun::faceNeedsUpdate           </td>
139          <td class="md" valign="top">(&nbsp;</td>
140          <td class="md" nowrap valign="top">int&nbsp;</td>
141          <td class="mdname1" valign="top" nowrap> <em>facenum</em>          </td>
142          <td class="md" valign="top">&nbsp;)&nbsp;</td>
143          <td class="md" nowrap><code> [protected, pure virtual]</code></td>
144        </tr>
145      </table>
146    </td>
147  </tr>
148</table>
149<table cellspacing="5" cellpadding="0" border="0">
150  <tr>
151    <td>
152      &nbsp;
153    </td>
154    <td>
155
156<p>
157Checks if a cubemap face needs to be updated.
158<p>
159If the object we are updating the cubemap for is far from the camera, or too small, or the given cubemapface does not have significant effect on the rendering the face can be skipped.<p>
160<dl compact><dt><b>Parameters:</b></dt><dd>
161  <table border="0" cellspacing="2" cellpadding="0">
162    <tr><td valign="top"></td><td valign="top"><em>facenum</em>&nbsp;</td><td>the number of the face to be checked </td></tr>
163  </table>
164</dl>
165
166<p>
167Implemented in <a class="el" href="class_ogre_caustic_cube_map_rendering_run.html#3af399eb995301b2646a3756880ee1fb">OgreCausticCubeMapRenderingRun</a>.    </td>
168  </tr>
169</table>
170<a class="anchor" name="2c39d2b16e356d040d51151bcb119be1"></a><!-- doxytag: member="CausticCubeMapRenderingRun::photonMapChanged" ref="2c39d2b16e356d040d51151bcb119be1" args="(RenderingRun *run)=0" --><p>
171<table class="mdTable" cellpadding="2" cellspacing="0">
172  <tr>
173    <td class="mdRow">
174      <table cellpadding="0" cellspacing="0" border="0">
175        <tr>
176          <td class="md" nowrap valign="top">virtual void CausticCubeMapRenderingRun::photonMapChanged           </td>
177          <td class="md" valign="top">(&nbsp;</td>
178          <td class="md" nowrap valign="top"><a class="el" href="class_rendering_run.html">RenderingRun</a> *&nbsp;</td>
179          <td class="mdname1" valign="top" nowrap> <em>run</em>          </td>
180          <td class="md" valign="top">&nbsp;)&nbsp;</td>
181          <td class="md" nowrap><code> [pure virtual]</code></td>
182        </tr>
183      </table>
184    </td>
185  </tr>
186</table>
187<table cellspacing="5" cellpadding="0" border="0">
188  <tr>
189    <td>
190      &nbsp;
191    </td>
192    <td>
193
194<p>
195Called if the changed run is a <a class="el" href="class_photon_map_rendering_run.html">PhotonMapRenderingRun</a>.
196<p>
197<dl compact><dt><b>Parameters:</b></dt><dd>
198  <table border="0" cellspacing="2" cellpadding="0">
199    <tr><td valign="top"></td><td valign="top"><em>run</em>&nbsp;</td><td>pointer to the changed <a class="el" href="class_photon_map_rendering_run.html">PhotonMapRenderingRun</a> </td></tr>
200  </table>
201</dl>
202
203<p>
204Implemented in <a class="el" href="class_ogre_caustic_cube_map_rendering_run.html#e6dfda3ace6f42e1804a960e88f518e7">OgreCausticCubeMapRenderingRun</a>.    </td>
205  </tr>
206</table>
207<a class="anchor" name="8243ea1e4988a378cfa338a3a10d218a"></a><!-- doxytag: member="CausticCubeMapRenderingRun::updateCubeFace" ref="8243ea1e4988a378cfa338a3a10d218a" args="(int facenum)=0" --><p>
208<table class="mdTable" cellpadding="2" cellspacing="0">
209  <tr>
210    <td class="mdRow">
211      <table cellpadding="0" cellspacing="0" border="0">
212        <tr>
213          <td class="md" nowrap valign="top">virtual void CausticCubeMapRenderingRun::updateCubeFace           </td>
214          <td class="md" valign="top">(&nbsp;</td>
215          <td class="md" nowrap valign="top">int&nbsp;</td>
216          <td class="mdname1" valign="top" nowrap> <em>facenum</em>          </td>
217          <td class="md" valign="top">&nbsp;)&nbsp;</td>
218          <td class="md" nowrap><code> [inline, protected, pure virtual]</code></td>
219        </tr>
220      </table>
221    </td>
222  </tr>
223</table>
224<table cellspacing="5" cellpadding="0" border="0">
225  <tr>
226    <td>
227      &nbsp;
228    </td>
229    <td>
230
231<p>
232Updates one face of the cubemap.
233<p>
234<dl compact><dt><b>Parameters:</b></dt><dd>
235  <table border="0" cellspacing="2" cellpadding="0">
236    <tr><td valign="top"></td><td valign="top"><em>facenum</em>&nbsp;</td><td>the number of the face to be updated </td></tr>
237  </table>
238</dl>
239
240<p>
241Implemented in <a class="el" href="class_ogre_caustic_cube_map_rendering_run.html#e84bced29136a12e3f32ac3c3157217d">OgreCausticCubeMapRenderingRun</a>.    </td>
242  </tr>
243</table>
244<a class="anchor" name="95c0eb448e09d62d03f4f7ea5a100109"></a><!-- doxytag: member="CausticCubeMapRenderingRun::updateFrame" ref="95c0eb448e09d62d03f4f7ea5a100109" args="(unsigned long frameNum)" --><p>
245<table class="mdTable" cellpadding="2" cellspacing="0">
246  <tr>
247    <td class="mdRow">
248      <table cellpadding="0" cellspacing="0" border="0">
249        <tr>
250          <td class="md" nowrap valign="top">void CausticCubeMapRenderingRun::updateFrame           </td>
251          <td class="md" valign="top">(&nbsp;</td>
252          <td class="md" nowrap valign="top">unsigned long&nbsp;</td>
253          <td class="mdname1" valign="top" nowrap> <em>frameNum</em>          </td>
254          <td class="md" valign="top">&nbsp;)&nbsp;</td>
255          <td class="md" nowrap><code> [protected, virtual]</code></td>
256        </tr>
257      </table>
258    </td>
259  </tr>
260</table>
261<table cellspacing="5" cellpadding="0" border="0">
262  <tr>
263    <td>
264      &nbsp;
265    </td>
266    <td>
267
268<p>
269This function does the actual update in a frame.
270<p>
271<dl compact><dt><b>Parameters:</b></dt><dd>
272  <table border="0" cellspacing="2" cellpadding="0">
273    <tr><td valign="top"></td><td valign="top"><em>frameNum</em>&nbsp;</td><td>current frame number </td></tr>
274  </table>
275</dl>
276
277<p>
278Reimplemented from <a class="el" href="class_rendering_run.html#043309cb823ebddcbe2bae2c61892235">RenderingRun</a>.    </td>
279  </tr>
280</table>
281<hr>The documentation for this class was generated from the following files:<ul>
282<li>CausticCubeMapRenderingRun.h<li>CausticCubeMapRenderingRun.cpp</ul>
283<hr size="1"><address style="align: right;"><small>Generated on Thu Apr 27 17:29:36 2006 for GameTools Illumination Module by&nbsp;
284<a href="http://www.doxygen.org/index.html">
285<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6-NO </small></address>
286</body>
287</html>
Note: See TracBrowser for help on using the repository browser.