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: OgreDepthShadowRecieverRenderTechnique 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 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 List</span></a></li> |
---|
17 | <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> |
---|
18 | <li><a href="functions.html"><span>Class Members</span></a></li> |
---|
19 | </ul></div> |
---|
20 | <h1>OgreDepthShadowRecieverRenderTechnique Class Reference</h1><!-- doxytag: class="OgreDepthShadowRecieverRenderTechnique" --><!-- doxytag: inherits="OgreRenderTechnique,DepthShadowRecieverRenderTechnique" --><a class="el" href="class_depth_shadow_reciever_render_technique.html">DepthShadowRecieverRenderTechnique</a> used in an OGRE environment. |
---|
21 | <a href="#_details">More...</a> |
---|
22 | <p> |
---|
23 | <p>Inheritance diagram for OgreDepthShadowRecieverRenderTechnique: |
---|
24 | <p><center><img src="class_ogre_depth_shadow_reciever_render_technique.png" usemap="#OgreDepthShadowRecieverRenderTechnique_map" border="0" alt=""></center> |
---|
25 | <map name="OgreDepthShadowRecieverRenderTechnique_map"> |
---|
26 | <area href="class_ogre_render_technique.html" alt="OgreRenderTechnique" shape="rect" coords="0,56,269,80"> |
---|
27 | <area href="class_depth_shadow_reciever_render_technique.html" alt="DepthShadowRecieverRenderTechnique" shape="rect" coords="279,56,548,80"> |
---|
28 | <area href="class_render_technique.html" alt="RenderTechnique" shape="rect" coords="0,0,269,24"> |
---|
29 | <area href="class_render_technique.html" alt="RenderTechnique" shape="rect" coords="279,0,548,24"> |
---|
30 | </map> |
---|
31 | <a href="class_ogre_depth_shadow_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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#b82b43e3d60d28ad1ef724274375a45b">OgreDepthShadowRecieverRenderTechnique</a> (int <a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#7a9c0f32cf33e9b9e9cf5d0fedb4212e">maxlights</a>, String <a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#1d8a79dc3f9ff319cc350465532000d2">shadowVertexProgram</a>, String <a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#ad9f2e078407fb61a0a0352dc0c1dd7d">shadowFragmentProgram</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"> </td><td class="mdescRight">Constructor. <a href="#b82b43e3d60d28ad1ef724274375a45b"></a><br></td></tr> |
---|
37 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9479d95c8358b2a50ba5f3d79c6808a9"></a><!-- doxytag: member="OgreDepthShadowRecieverRenderTechnique::~OgreDepthShadowRecieverRenderTechnique" ref="9479d95c8358b2a50ba5f3d79c6808a9" args="()" --> |
---|
38 | </td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#9479d95c8358b2a50ba5f3d79c6808a9">~OgreDepthShadowRecieverRenderTechnique</a> ()</td></tr> |
---|
39 | |
---|
40 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <br></td></tr> |
---|
41 | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#b76f874b281e3c30eca7efe00c836606">update</a> (unsigned long frameNum)</td></tr> |
---|
42 | |
---|
43 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Updates the resources in the given frame. <a href="#b76f874b281e3c30eca7efe00c836606"></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">int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#7a9c0f32cf33e9b9e9cf5d0fedb4212e">maxlights</a></td></tr> |
---|
46 | |
---|
47 | <tr><td class="mdescLeft"> </td><td class="mdescRight">the maximum number of light sources to recieve shadow from <a href="#7a9c0f32cf33e9b9e9cf5d0fedb4212e"></a><br></td></tr> |
---|
48 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1d8a79dc3f9ff319cc350465532000d2"></a><!-- doxytag: member="OgreDepthShadowRecieverRenderTechnique::shadowVertexProgram" ref="1d8a79dc3f9ff319cc350465532000d2" args="" --> |
---|
49 | String </td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#1d8a79dc3f9ff319cc350465532000d2">shadowVertexProgram</a></td></tr> |
---|
50 | |
---|
51 | <tr><td class="mdescLeft"> </td><td class="mdescRight">the vertex program to be used in the shadowing passes <br></td></tr> |
---|
52 | <tr><td class="memItemLeft" nowrap align="right" valign="top">String </td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#ad9f2e078407fb61a0a0352dc0c1dd7d">shadowFragmentProgram</a></td></tr> |
---|
53 | |
---|
54 | <tr><td class="mdescLeft"> </td><td class="mdescRight">the fragment program to be used in the shadowing passes <a href="#ad9f2e078407fb61a0a0352dc0c1dd7d"></a><br></td></tr> |
---|
55 | <tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector< Pass * > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#a661e3bbd8bd20ee63c5dbec89eb5b20">passes</a></td></tr> |
---|
56 | |
---|
57 | </table> |
---|
58 | <hr><a name="_details"></a><h2>Detailed Description</h2> |
---|
59 | <a class="el" href="class_depth_shadow_reciever_render_technique.html">DepthShadowRecieverRenderTechnique</a> used in an OGRE environment. |
---|
60 | <p> |
---|
61 | This technique defines that the object will recieve shadows with the help of depth shadow maps. Each lightsource can have a depth map assigned to it. These are going to be refreshed only if shadow recievers are visible. It is the shadow reciever technique's resposibility to refresh them.<p> |
---|
62 | The shadows from each light are calculated in separate passes. Each pass will modulate the shaded image, so thes should be the last passes (but before caustic passes). The given Pass* parameter n the constructor defines the pass after which new shadow recieving passes will be added by the technique. |
---|
63 | <p> |
---|
64 | <hr><h2>Constructor & Destructor Documentation</h2> |
---|
65 | <a class="anchor" name="b82b43e3d60d28ad1ef724274375a45b"></a><!-- doxytag: member="OgreDepthShadowRecieverRenderTechnique::OgreDepthShadowRecieverRenderTechnique" ref="b82b43e3d60d28ad1ef724274375a45b" args="(int maxlights, String shadowVertexProgram, String shadowFragmentProgram, Pass *pass, OgreRenderable *parentRenderable, OgreTechniqueGroup *parentTechniqueGroup)" --><p> |
---|
66 | <table class="mdTable" cellpadding="2" cellspacing="0"> |
---|
67 | <tr> |
---|
68 | <td class="mdRow"> |
---|
69 | <table cellpadding="0" cellspacing="0" border="0"> |
---|
70 | <tr> |
---|
71 | <td class="md" nowrap valign="top">OgreDepthShadowRecieverRenderTechnique::OgreDepthShadowRecieverRenderTechnique </td> |
---|
72 | <td class="md" valign="top">( </td> |
---|
73 | <td class="md" nowrap valign="top">int </td> |
---|
74 | <td class="mdname" nowrap> <em>maxlights</em>, </td> |
---|
75 | </tr> |
---|
76 | <tr> |
---|
77 | <td class="md" nowrap align="right"></td> |
---|
78 | <td class="md"></td> |
---|
79 | <td class="md" nowrap>String </td> |
---|
80 | <td class="mdname" nowrap> <em>shadowVertexProgram</em>, </td> |
---|
81 | </tr> |
---|
82 | <tr> |
---|
83 | <td class="md" nowrap align="right"></td> |
---|
84 | <td class="md"></td> |
---|
85 | <td class="md" nowrap>String </td> |
---|
86 | <td class="mdname" nowrap> <em>shadowFragmentProgram</em>, </td> |
---|
87 | </tr> |
---|
88 | <tr> |
---|
89 | <td class="md" nowrap align="right"></td> |
---|
90 | <td class="md"></td> |
---|
91 | <td class="md" nowrap>Pass * </td> |
---|
92 | <td class="mdname" nowrap> <em>pass</em>, </td> |
---|
93 | </tr> |
---|
94 | <tr> |
---|
95 | <td class="md" nowrap align="right"></td> |
---|
96 | <td class="md"></td> |
---|
97 | <td class="md" nowrap><a class="el" href="class_ogre_renderable.html">OgreRenderable</a> * </td> |
---|
98 | <td class="mdname" nowrap> <em>parentRenderable</em>, </td> |
---|
99 | </tr> |
---|
100 | <tr> |
---|
101 | <td class="md" nowrap align="right"></td> |
---|
102 | <td class="md"></td> |
---|
103 | <td class="md" nowrap><a class="el" href="class_ogre_technique_group.html">OgreTechniqueGroup</a> * </td> |
---|
104 | <td class="mdname" nowrap> <em>parentTechniqueGroup</em></td> |
---|
105 | </tr> |
---|
106 | <tr> |
---|
107 | <td class="md"></td> |
---|
108 | <td class="md">) </td> |
---|
109 | <td class="md" colspan="2"></td> |
---|
110 | </tr> |
---|
111 | </table> |
---|
112 | </td> |
---|
113 | </tr> |
---|
114 | </table> |
---|
115 | <table cellspacing="5" cellpadding="0" border="0"> |
---|
116 | <tr> |
---|
117 | <td> |
---|
118 | |
---|
119 | </td> |
---|
120 | <td> |
---|
121 | |
---|
122 | <p> |
---|
123 | Constructor. |
---|
124 | <p> |
---|
125 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
126 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
127 | <tr><td valign="top"></td><td valign="top"><em>maxlights</em> </td><td>the maximum number of light sources to recieve shadow from </td></tr> |
---|
128 | <tr><td valign="top"></td><td valign="top"><em>shadowVertexProgram</em> </td><td>the vertex program to be used in the shadowing passes </td></tr> |
---|
129 | <tr><td valign="top"></td><td valign="top"><em>shadowFragmentProgram</em> </td><td>the fragment program to be used in the shadowing passes It should have one pass and the depth map of a light will be bound to the first sampler unit. </td></tr> |
---|
130 | <tr><td valign="top"></td><td valign="top"><em>pass</em> </td><td>the pass after which shadowing passes should be added </td></tr> |
---|
131 | <tr><td valign="top"></td><td valign="top"><em>parentRenderable</em> </td><td>the object to operate on </td></tr> |
---|
132 | <tr><td valign="top"></td><td valign="top"><em>parentTechniqueGroup</em> </td><td>the <a class="el" href="class_technique_group.html">TechniqueGroup</a> this RenderedTechnique is attached to </td></tr> |
---|
133 | </table> |
---|
134 | </dl> |
---|
135 | </td> |
---|
136 | </tr> |
---|
137 | </table> |
---|
138 | <hr><h2>Member Function Documentation</h2> |
---|
139 | <a class="anchor" name="b76f874b281e3c30eca7efe00c836606"></a><!-- doxytag: member="OgreDepthShadowRecieverRenderTechnique::update" ref="b76f874b281e3c30eca7efe00c836606" args="(unsigned long frameNum)" --><p> |
---|
140 | <table class="mdTable" cellpadding="2" cellspacing="0"> |
---|
141 | <tr> |
---|
142 | <td class="mdRow"> |
---|
143 | <table cellpadding="0" cellspacing="0" border="0"> |
---|
144 | <tr> |
---|
145 | <td class="md" nowrap valign="top">void OgreDepthShadowRecieverRenderTechnique::update </td> |
---|
146 | <td class="md" valign="top">( </td> |
---|
147 | <td class="md" nowrap valign="top">unsigned long </td> |
---|
148 | <td class="mdname1" valign="top" nowrap> <em>frameNum</em> </td> |
---|
149 | <td class="md" valign="top"> ) </td> |
---|
150 | <td class="md" nowrap><code> [virtual]</code></td> |
---|
151 | </tr> |
---|
152 | </table> |
---|
153 | </td> |
---|
154 | </tr> |
---|
155 | </table> |
---|
156 | <table cellspacing="5" cellpadding="0" border="0"> |
---|
157 | <tr> |
---|
158 | <td> |
---|
159 | |
---|
160 | </td> |
---|
161 | <td> |
---|
162 | |
---|
163 | <p> |
---|
164 | Updates the resources in the given frame. |
---|
165 | <p> |
---|
166 | A <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> |
---|
167 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
168 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
169 | <tr><td valign="top"></td><td valign="top"><em>frameNum</em> </td><td>the actual framenumber </td></tr> |
---|
170 | </table> |
---|
171 | </dl> |
---|
172 | |
---|
173 | <p> |
---|
174 | Reimplemented from <a class="el" href="class_render_technique.html#1599dc6e287d7c87a71c8b5bfbd871f8">RenderTechnique</a>. </td> |
---|
175 | </tr> |
---|
176 | </table> |
---|
177 | <hr><h2>Member Data Documentation</h2> |
---|
178 | <a class="anchor" name="7a9c0f32cf33e9b9e9cf5d0fedb4212e"></a><!-- doxytag: member="OgreDepthShadowRecieverRenderTechnique::maxlights" ref="7a9c0f32cf33e9b9e9cf5d0fedb4212e" args="" --><p> |
---|
179 | <table class="mdTable" cellpadding="2" cellspacing="0"> |
---|
180 | <tr> |
---|
181 | <td class="mdRow"> |
---|
182 | <table cellpadding="0" cellspacing="0" border="0"> |
---|
183 | <tr> |
---|
184 | <td class="md" nowrap valign="top">int <a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#7a9c0f32cf33e9b9e9cf5d0fedb4212e">OgreDepthShadowRecieverRenderTechnique::maxlights</a><code> [protected]</code> </td> |
---|
185 | </tr> |
---|
186 | </table> |
---|
187 | </td> |
---|
188 | </tr> |
---|
189 | </table> |
---|
190 | <table cellspacing="5" cellpadding="0" border="0"> |
---|
191 | <tr> |
---|
192 | <td> |
---|
193 | |
---|
194 | </td> |
---|
195 | <td> |
---|
196 | |
---|
197 | <p> |
---|
198 | the maximum number of light sources to recieve shadow from |
---|
199 | <p> |
---|
200 | During update the nearest light sources will be found and used. </td> |
---|
201 | </tr> |
---|
202 | </table> |
---|
203 | <a class="anchor" name="a661e3bbd8bd20ee63c5dbec89eb5b20"></a><!-- doxytag: member="OgreDepthShadowRecieverRenderTechnique::passes" ref="a661e3bbd8bd20ee63c5dbec89eb5b20" args="" --><p> |
---|
204 | <table class="mdTable" cellpadding="2" cellspacing="0"> |
---|
205 | <tr> |
---|
206 | <td class="mdRow"> |
---|
207 | <table cellpadding="0" cellspacing="0" border="0"> |
---|
208 | <tr> |
---|
209 | <td class="md" nowrap valign="top">std::vector<Pass*> <a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#a661e3bbd8bd20ee63c5dbec89eb5b20">OgreDepthShadowRecieverRenderTechnique::passes</a><code> [protected]</code> </td> |
---|
210 | </tr> |
---|
211 | </table> |
---|
212 | </td> |
---|
213 | </tr> |
---|
214 | </table> |
---|
215 | <table cellspacing="5" cellpadding="0" border="0"> |
---|
216 | <tr> |
---|
217 | <td> |
---|
218 | |
---|
219 | </td> |
---|
220 | <td> |
---|
221 | |
---|
222 | <p> |
---|
223 | new passes created by this technique </td> |
---|
224 | </tr> |
---|
225 | </table> |
---|
226 | <a class="anchor" name="ad9f2e078407fb61a0a0352dc0c1dd7d"></a><!-- doxytag: member="OgreDepthShadowRecieverRenderTechnique::shadowFragmentProgram" ref="ad9f2e078407fb61a0a0352dc0c1dd7d" args="" --><p> |
---|
227 | <table class="mdTable" cellpadding="2" cellspacing="0"> |
---|
228 | <tr> |
---|
229 | <td class="mdRow"> |
---|
230 | <table cellpadding="0" cellspacing="0" border="0"> |
---|
231 | <tr> |
---|
232 | <td class="md" nowrap valign="top">String <a class="el" href="class_ogre_depth_shadow_reciever_render_technique.html#ad9f2e078407fb61a0a0352dc0c1dd7d">OgreDepthShadowRecieverRenderTechnique::shadowFragmentProgram</a><code> [protected]</code> </td> |
---|
233 | </tr> |
---|
234 | </table> |
---|
235 | </td> |
---|
236 | </tr> |
---|
237 | </table> |
---|
238 | <table cellspacing="5" cellpadding="0" border="0"> |
---|
239 | <tr> |
---|
240 | <td> |
---|
241 | |
---|
242 | </td> |
---|
243 | <td> |
---|
244 | |
---|
245 | <p> |
---|
246 | the fragment program to be used in the shadowing passes |
---|
247 | <p> |
---|
248 | It should have one pass and the depth map of a light will be bound to the first sampler unit. </td> |
---|
249 | </tr> |
---|
250 | </table> |
---|
251 | <hr>The documentation for this class was generated from the following files:<ul> |
---|
252 | <li>OgreDepthShadowRecieverRenderTechnique.h<li>OgreDepthShadowRecieverRenderTechnique.cpp</ul> |
---|
253 | <hr size="1"><address style="align: right;"><small>Generated on Thu Apr 27 17:29:40 2006 for GameTools Illumination Module by |
---|
254 | <a href="http://www.doxygen.org/index.html"> |
---|
255 | <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6-NO </small></address> |
---|
256 | </body> |
---|
257 | </html> |
---|