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

Revision 894, 15.2 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: OgreCausticRecieverRenderTechnique 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>OgreCausticRecieverRenderTechnique Class Reference</h1><!-- doxytag: class="OgreCausticRecieverRenderTechnique" --><!-- doxytag: inherits="OgreRenderTechnique,CausticRecieverRenderTechnique" --><a class="el" href="class_caustic_reciever_render_technique.html">CausticRecieverRenderTechnique</a> used in an OGRE environment. 
21<a href="#_details">More...</a>
22<p>
23<p>Inheritance diagram for OgreCausticRecieverRenderTechnique:
24<p><center><img src="class_ogre_caustic_reciever_render_technique.png" usemap="#OgreCausticRecieverRenderTechnique_map" border="0" alt=""></center>
25<map name="OgreCausticRecieverRenderTechnique_map">
26<area href="class_ogre_render_technique.html" alt="OgreRenderTechnique" shape="rect" coords="0,56,233,80">
27<area href="class_caustic_reciever_render_technique.html" alt="CausticRecieverRenderTechnique" shape="rect" coords="243,56,476,80">
28<area href="class_render_technique.html" alt="RenderTechnique" shape="rect" coords="0,0,233,24">
29<area href="class_render_technique.html" alt="RenderTechnique" shape="rect" coords="243,0,476,24">
30</map>
31<a href="class_ogre_caustic_reciever_render_technique-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
32<tr><td></td></tr>
33<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
34<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_caustic_reciever_render_technique.html#350ff43c7472e577b06fbf56d2a8bca2">OgreCausticRecieverRenderTechnique</a> (int <a class="el" href="class_ogre_caustic_reciever_render_technique.html#37bee42b95d74cf1d0bfb5928d52f2d2">maxcasters</a>, String <a class="el" href="class_ogre_caustic_reciever_render_technique.html#4b6554282fff7026d911f976da6564fc">causticVertexProgram</a>, String <a class="el" href="class_ogre_caustic_reciever_render_technique.html#a1427091e547973aba965f90ff296048">causticFragmentProgram</a>, Pass *<a class="el" href="class_ogre_render_technique.html#d52ee875206d5c373bbec1315131b96f">pass</a>, <a class="el" href="class_ogre_renderable.html">OgreRenderable</a> *<a class="el" href="class_render_technique.html#888980e685779fa6801cda413e8c3637">parentRenderable</a>, <a class="el" href="class_ogre_technique_group.html">OgreTechniqueGroup</a> *<a class="el" href="class_render_technique.html#f1246cf759d7b81eb25195834a7ad349">parentTechniqueGroup</a>)</td></tr>
35
36<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#350ff43c7472e577b06fbf56d2a8bca2"></a><br></td></tr>
37<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c0c6292e3e1c8ee81d4e33436dc8742f"></a><!-- doxytag: member="OgreCausticRecieverRenderTechnique::~OgreCausticRecieverRenderTechnique" ref="c0c6292e3e1c8ee81d4e33436dc8742f" args="()" -->
38&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_caustic_reciever_render_technique.html#c0c6292e3e1c8ee81d4e33436dc8742f">~OgreCausticRecieverRenderTechnique</a> ()</td></tr>
39
40<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor. <br></td></tr>
41<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_caustic_reciever_render_technique.html#a7d154131e32bdfd8473707816ef5144">update</a> (unsigned long frameNum)</td></tr>
42
43<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Updates the resources in the given frame.  <a href="#a7d154131e32bdfd8473707816ef5144"></a><br></td></tr>
44<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
45<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="37bee42b95d74cf1d0bfb5928d52f2d2"></a><!-- doxytag: member="OgreCausticRecieverRenderTechnique::maxcasters" ref="37bee42b95d74cf1d0bfb5928d52f2d2" args="" -->
46int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_caustic_reciever_render_technique.html#37bee42b95d74cf1d0bfb5928d52f2d2">maxcasters</a></td></tr>
47
48<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">the maximum number of caustic casters from which this reciever can recieve caustic light <br></td></tr>
49<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4b6554282fff7026d911f976da6564fc"></a><!-- doxytag: member="OgreCausticRecieverRenderTechnique::causticVertexProgram" ref="4b6554282fff7026d911f976da6564fc" args="" -->
50String&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_caustic_reciever_render_technique.html#4b6554282fff7026d911f976da6564fc">causticVertexProgram</a></td></tr>
51
52<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">the vertex program to be used in the caustic gathering passes <br></td></tr>
53<tr><td class="memItemLeft" nowrap align="right" valign="top">String&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_caustic_reciever_render_technique.html#a1427091e547973aba965f90ff296048">causticFragmentProgram</a></td></tr>
54
55<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">the fragment program to be used in the caustic gathering passes  <a href="#a1427091e547973aba965f90ff296048"></a><br></td></tr>
56<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; Pass * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_caustic_reciever_render_technique.html#4e5c4adf56d472620799d61e97f0f61b">passes</a></td></tr>
57
58<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="baf369361464e76e02161e23722cf077"></a><!-- doxytag: member="OgreCausticRecieverRenderTechnique::causticCasters" ref="baf369361464e76e02161e23722cf077" args="" -->
59std::vector&lt; <a class="el" href="class_ogre_shared_runs.html">OgreSharedRuns</a> * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_caustic_reciever_render_technique.html#baf369361464e76e02161e23722cf077">causticCasters</a></td></tr>
60
61<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">the nearest caustic casters found during update <br></td></tr>
62</table>
63<hr><a name="_details"></a><h2>Detailed Description</h2>
64<a class="el" href="class_caustic_reciever_render_technique.html">CausticRecieverRenderTechnique</a> used in an OGRE environment.
65<p>
66This technique defines that the object will recieve caustic lighting from caustic caster objects. The caustic light spots will be calculated by the caustic caster's RenderingRuns. These runs will only be updated if caustic redievers are visible, so it is the reciever technique's responsibility to update them.<p>
67Each caustic caster's light contribution will be added in separate passes. Each pass will add some light to the shaded image, so these passes should be the last passes. In the constructor the given Pass* parameter will be the pass after which the caustic lighting passes will be added by the technique.
68<p>
69<hr><h2>Constructor &amp; Destructor Documentation</h2>
70<a class="anchor" name="350ff43c7472e577b06fbf56d2a8bca2"></a><!-- doxytag: member="OgreCausticRecieverRenderTechnique::OgreCausticRecieverRenderTechnique" ref="350ff43c7472e577b06fbf56d2a8bca2" args="(int maxcasters, String causticVertexProgram, String causticFragmentProgram, Pass *pass, OgreRenderable *parentRenderable, OgreTechniqueGroup *parentTechniqueGroup)" --><p>
71<table class="mdTable" cellpadding="2" cellspacing="0">
72  <tr>
73    <td class="mdRow">
74      <table cellpadding="0" cellspacing="0" border="0">
75        <tr>
76          <td class="md" nowrap valign="top">OgreCausticRecieverRenderTechnique::OgreCausticRecieverRenderTechnique           </td>
77          <td class="md" valign="top">(&nbsp;</td>
78          <td class="md" nowrap valign="top">int&nbsp;</td>
79          <td class="mdname" nowrap> <em>maxcasters</em>, </td>
80        </tr>
81        <tr>
82          <td class="md" nowrap align="right"></td>
83          <td class="md"></td>
84          <td class="md" nowrap>String&nbsp;</td>
85          <td class="mdname" nowrap> <em>causticVertexProgram</em>, </td>
86        </tr>
87        <tr>
88          <td class="md" nowrap align="right"></td>
89          <td class="md"></td>
90          <td class="md" nowrap>String&nbsp;</td>
91          <td class="mdname" nowrap> <em>causticFragmentProgram</em>, </td>
92        </tr>
93        <tr>
94          <td class="md" nowrap align="right"></td>
95          <td class="md"></td>
96          <td class="md" nowrap>Pass *&nbsp;</td>
97          <td class="mdname" nowrap> <em>pass</em>, </td>
98        </tr>
99        <tr>
100          <td class="md" nowrap align="right"></td>
101          <td class="md"></td>
102          <td class="md" nowrap><a class="el" href="class_ogre_renderable.html">OgreRenderable</a> *&nbsp;</td>
103          <td class="mdname" nowrap> <em>parentRenderable</em>, </td>
104        </tr>
105        <tr>
106          <td class="md" nowrap align="right"></td>
107          <td class="md"></td>
108          <td class="md" nowrap><a class="el" href="class_ogre_technique_group.html">OgreTechniqueGroup</a> *&nbsp;</td>
109          <td class="mdname" nowrap> <em>parentTechniqueGroup</em></td>
110        </tr>
111        <tr>
112          <td class="md"></td>
113          <td class="md">)&nbsp;</td>
114          <td class="md" colspan="2"></td>
115        </tr>
116      </table>
117    </td>
118  </tr>
119</table>
120<table cellspacing="5" cellpadding="0" border="0">
121  <tr>
122    <td>
123      &nbsp;
124    </td>
125    <td>
126
127<p>
128Constructor.
129<p>
130<dl compact><dt><b>Parameters:</b></dt><dd>
131  <table border="0" cellspacing="2" cellpadding="0">
132    <tr><td valign="top"></td><td valign="top"><em>maxcasters</em>&nbsp;</td><td>the maximum number of caustic casters from which this reciever can recieve caustic light </td></tr>
133    <tr><td valign="top"></td><td valign="top"><em>causticVertexProgram</em>&nbsp;</td><td>the vertex program to be used in the caustic gathering passes </td></tr>
134    <tr><td valign="top"></td><td valign="top"><em>causticFragmentProgram</em>&nbsp;</td><td>the fragment program to be used in the caustic gathering passes. It should have one pass and the caustic cubemap of a caster will be bound to the first sampler unit. </td></tr>
135    <tr><td valign="top"></td><td valign="top"><em>pass</em>&nbsp;</td><td>the pass after which caustic gathering passes should be added </td></tr>
136    <tr><td valign="top"></td><td valign="top"><em>parentRenderable</em>&nbsp;</td><td>the object to operate on </td></tr>
137    <tr><td valign="top"></td><td valign="top"><em>parentTechniqueGroup</em>&nbsp;</td><td>the <a class="el" href="class_technique_group.html">TechniqueGroup</a> this RenderedTechnique is attached to </td></tr>
138  </table>
139</dl>
140    </td>
141  </tr>
142</table>
143<hr><h2>Member Function Documentation</h2>
144<a class="anchor" name="a7d154131e32bdfd8473707816ef5144"></a><!-- doxytag: member="OgreCausticRecieverRenderTechnique::update" ref="a7d154131e32bdfd8473707816ef5144" args="(unsigned long frameNum)" --><p>
145<table class="mdTable" cellpadding="2" cellspacing="0">
146  <tr>
147    <td class="mdRow">
148      <table cellpadding="0" cellspacing="0" border="0">
149        <tr>
150          <td class="md" nowrap valign="top">void OgreCausticRecieverRenderTechnique::update           </td>
151          <td class="md" valign="top">(&nbsp;</td>
152          <td class="md" nowrap valign="top">unsigned long&nbsp;</td>
153          <td class="mdname1" valign="top" nowrap> <em>frameNum</em>          </td>
154          <td class="md" valign="top">&nbsp;)&nbsp;</td>
155          <td class="md" nowrap><code> [virtual]</code></td>
156        </tr>
157      </table>
158    </td>
159  </tr>
160</table>
161<table cellspacing="5" cellpadding="0" border="0">
162  <tr>
163    <td>
164      &nbsp;
165    </td>
166    <td>
167
168<p>
169Updates the resources in the given frame.
170<p>
171A <a class="el" href="class_render_technique.html">RenderTechnique</a> is usually need some resources from several runs, so these runs will be updated.<p>
172<dl compact><dt><b>Parameters:</b></dt><dd>
173  <table border="0" cellspacing="2" cellpadding="0">
174    <tr><td valign="top"></td><td valign="top"><em>frameNum</em>&nbsp;</td><td>the actual framenumber </td></tr>
175  </table>
176</dl>
177
178<p>
179Reimplemented from <a class="el" href="class_render_technique.html#1599dc6e287d7c87a71c8b5bfbd871f8">RenderTechnique</a>.    </td>
180  </tr>
181</table>
182<hr><h2>Member Data Documentation</h2>
183<a class="anchor" name="a1427091e547973aba965f90ff296048"></a><!-- doxytag: member="OgreCausticRecieverRenderTechnique::causticFragmentProgram" ref="a1427091e547973aba965f90ff296048" args="" --><p>
184<table class="mdTable" cellpadding="2" cellspacing="0">
185  <tr>
186    <td class="mdRow">
187      <table cellpadding="0" cellspacing="0" border="0">
188        <tr>
189          <td class="md" nowrap valign="top">String <a class="el" href="class_ogre_caustic_reciever_render_technique.html#a1427091e547973aba965f90ff296048">OgreCausticRecieverRenderTechnique::causticFragmentProgram</a><code> [protected]</code>          </td>
190        </tr>
191      </table>
192    </td>
193  </tr>
194</table>
195<table cellspacing="5" cellpadding="0" border="0">
196  <tr>
197    <td>
198      &nbsp;
199    </td>
200    <td>
201
202<p>
203the fragment program to be used in the caustic gathering passes
204<p>
205It should have one pass and the caustic cubemap of a caster will be bound to the first sampler unit.     </td>
206  </tr>
207</table>
208<a class="anchor" name="4e5c4adf56d472620799d61e97f0f61b"></a><!-- doxytag: member="OgreCausticRecieverRenderTechnique::passes" ref="4e5c4adf56d472620799d61e97f0f61b" args="" --><p>
209<table class="mdTable" cellpadding="2" cellspacing="0">
210  <tr>
211    <td class="mdRow">
212      <table cellpadding="0" cellspacing="0" border="0">
213        <tr>
214          <td class="md" nowrap valign="top">std::vector&lt;Pass*&gt; <a class="el" href="class_ogre_caustic_reciever_render_technique.html#4e5c4adf56d472620799d61e97f0f61b">OgreCausticRecieverRenderTechnique::passes</a><code> [protected]</code>          </td>
215        </tr>
216      </table>
217    </td>
218  </tr>
219</table>
220<table cellspacing="5" cellpadding="0" border="0">
221  <tr>
222    <td>
223      &nbsp;
224    </td>
225    <td>
226
227<p>
228new passes created by this technique     </td>
229  </tr>
230</table>
231<hr>The documentation for this class was generated from the following files:<ul>
232<li>OgreCausticRecieverRenderTechnique.h<li>OgreCausticRecieverRenderTechnique.cpp</ul>
233<hr size="1"><address style="align: right;"><small>Generated on Thu Apr 27 17:29:39 2006 for GameTools Illumination Module by&nbsp;
234<a href="http://www.doxygen.org/index.html">
235<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6-NO </small></address>
236</body>
237</html>
Note: See TracBrowser for help on using the repository browser.