source: OGRE/trunk/ogrenew/Docs/api/html/classOgre_1_1Renderable.html @ 692

Revision 692, 65.6 KB checked in by mattausch, 18 years ago (diff)

adding ogre 1.2 and dependencies

Line 
1<html>
2<head>
3<title>Ogre::Renderable class Reference - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
4<link type="text/css" rel="stylesheet" href="style.css">
5</head>
6
7<body>
8<!-- Generated by Doxygen 1.3.6 -->
9<div class="qindex"><a class="qindex" href="index.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">Class&nbsp;List</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">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
10<h1>Ogre::Renderable Class Reference</h1>Abstract class defining the interface all renderable objects must implement. 
11<a href="#_details">More...</a>
12<p>
13<code>#include &lt;<a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>&gt;</code>
14<p>
15<p>Inheritance diagram for Ogre::Renderable:
16<p><center><img src="classOgre_1_1Renderable.png" usemap="#Ogre::Renderable_map" border="0" alt=""></center>
17<map name="Ogre::Renderable_map">
18<area href="classOgre_1_1BillboardChain.html" alt="Ogre::BillboardChain" shape="rect" coords="263,56,516,80">
19<area href="classOgre_1_1BillboardSet.html" alt="Ogre::BillboardSet" shape="rect" coords="263,112,516,136">
20<area href="classOgre_1_1BorderRenderable.html" alt="Ogre::BorderRenderable" shape="rect" coords="263,168,516,192">
21<area href="classOgre_1_1Frustum.html" alt="Ogre::Frustum" shape="rect" coords="263,224,516,248">
22<area href="classOgre_1_1ManualObject_1_1ManualObjectSection.html" alt="Ogre::ManualObject::ManualObjectSection" shape="rect" coords="263,280,516,304">
23<area href="classOgre_1_1Node.html" alt="Ogre::Node" shape="rect" coords="263,336,516,360">
24<area href="classOgre_1_1OverlayElement.html" alt="Ogre::OverlayElement" shape="rect" coords="263,392,516,416">
25<area href="classOgre_1_1ShadowRenderable.html" alt="Ogre::ShadowRenderable" shape="rect" coords="263,448,516,472">
26<area href="classOgre_1_1SimpleRenderable.html" alt="Ogre::SimpleRenderable" shape="rect" coords="263,504,516,528">
27<area href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html" alt="Ogre::StaticGeometry::GeometryBucket" shape="rect" coords="263,560,516,584">
28<area href="classOgre_1_1SubEntity.html" alt="Ogre::SubEntity" shape="rect" coords="263,616,516,640">
29<area href="classOgre_1_1TerrainRenderable.html" alt="Ogre::TerrainRenderable" shape="rect" coords="263,672,516,696">
30</map>
31<a href="classOgre_1_1Renderable-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="classOgre_1_1Renderable.html#Ogre_1_1Renderablea0">Renderable</a> ()</td></tr>
35
36<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea1">~Renderable</a> ()</td></tr>
37
38<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Virtual destructor needed as class has virtual methods.  <a href="#Ogre_1_1Renderablea1"></a><br><br></td></tr>
39<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const <a class="el" href="classOgre_1_1MaterialPtr.html">MaterialPtr</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea2">getMaterial</a> (void) const=0</td></tr>
40
41<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a weak reference to the material this renderable object uses.  <a href="#Ogre_1_1Renderablea2"></a><br><br></td></tr>
42<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1Technique.html">Technique</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa56">getTechnique</a> (void) const </td></tr>
43
44<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a pointer to the <a class="el" href="classOgre_1_1Material.html">Material</a> <a class="el" href="classOgre_1_1Technique.html">Technique</a> this renderable object uses.  <a href="#Ogre_1_1WireBoundingBoxa56"></a><br><br></td></tr>
45<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea4">getRenderOperation</a> (<a class="el" href="classOgre_1_1RenderOperation.html">RenderOperation</a> &amp;op)=0</td></tr>
46
47<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the render operation required to send this object to the frame buffer.  <a href="#Ogre_1_1Renderablea4"></a><br><br></td></tr>
48<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea5">getWorldTransforms</a> (<a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> *xform) const=0</td></tr>
49
50<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the world transform matrix / matrices for this renderable object.  <a href="#Ogre_1_1Renderablea5"></a><br><br></td></tr>
51<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const <a class="el" href="classOgre_1_1Quaternion.html">Quaternion</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea6">getWorldOrientation</a> (void) const=0</td></tr>
52
53<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the worldspace orientation of this renderable; this is used in order to more efficiently update parameters to vertex &amp; fragment programs, since inverting Quaterion and Vector in order to derive object-space positions / directions for cameras and lights is much more efficient than inverting a complete 4x4 matrix, and also eliminates problems introduced by scaling.  <a href="#Ogre_1_1Renderablea6"></a><br><br></td></tr>
54<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea7">getWorldPosition</a> (void) const=0</td></tr>
55
56<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the worldspace orientation of this renderable; this is used in order to more efficiently update parameters to vertex &amp; fragment programs, since inverting Quaterion and Vector in order to derive object-space positions / directions for cameras and lights is much more efficient than inverting a complete 4x4 matrix, and also eliminates problems introduced by scaling.  <a href="#Ogre_1_1Renderablea7"></a><br><br></td></tr>
57<tr><td class="memItemLeft" nowrap align=right valign=top>virtual unsigned short&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa57">getNumWorldTransforms</a> (void) const </td></tr>
58
59<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of world transform matrices this renderable requires.  <a href="#Ogre_1_1WireBoundingBoxa57"></a><br><br></td></tr>
60<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa58">useIdentityProjection</a> (void) const </td></tr>
61
62<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether or not to use an 'identity' projection.  <a href="#Ogre_1_1WireBoundingBoxa58"></a><br><br></td></tr>
63<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa59">useIdentityView</a> (void) const </td></tr>
64
65<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether or not to use an 'identity' projection.  <a href="#Ogre_1_1WireBoundingBoxa59"></a><br><br></td></tr>
66<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="namespaceOgre.html#a465">Real</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1SimpleRenderablea61">getSquaredViewDepth</a> (const <a class="el" href="classOgre_1_1Camera.html">Camera</a> *cam) const=0</td></tr>
67
68<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the camera-relative squared depth of this renderable.  <a href="#Ogre_1_1SimpleRenderablea61"></a><br><br></td></tr>
69<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa60">getNormaliseNormals</a> (void) const </td></tr>
70
71<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether or not this <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> wishes the hardware to normalise normals.  <a href="#Ogre_1_1WireBoundingBoxa60"></a><br><br></td></tr>
72<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const <a class="el" href="namespaceOgre.html#a73">LightList</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea13">getLights</a> (void) const=0</td></tr>
73
74<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets a list of lights, ordered relative to how close they are to this renderable.  <a href="#Ogre_1_1Renderablea13"></a><br><br></td></tr>
75<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const <a class="el" href="namespaceOgre.html#a453">PlaneList</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa61">getClipPlanes</a> () const </td></tr>
76
77<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa62">getCastsShadows</a> (void) const </td></tr>
78
79<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Method which reports whether this renderable would normally cast a shadow.  <a href="#Ogre_1_1WireBoundingBoxa62"></a><br><br></td></tr>
80<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa63">setCustomParameter</a> (size_t index, const <a class="el" href="classOgre_1_1Vector4.html">Vector4</a> &amp;value)</td></tr>
81
82<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets a custom parameter for this <a class="el" href="classOgre_1_1Renderable.html">Renderable</a>, which may be used to drive calculations for this specific <a class="el" href="classOgre_1_1Renderable.html">Renderable</a>, like GPU program parameters.  <a href="#Ogre_1_1WireBoundingBoxa63"></a><br><br></td></tr>
83<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="classOgre_1_1Vector4.html">Vector4</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa64">getCustomParameter</a> (size_t index) const </td></tr>
84
85<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the custom value associated with this <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> at the given index.  <a href="#Ogre_1_1WireBoundingBoxa64"></a><br><br></td></tr>
86<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa65">_updateCustomGpuParameter</a> (const <a class="el" href="classOgre_1_1GpuProgramParameters_1_1AutoConstantEntry.html">GpuProgramParameters::AutoConstantEntry</a> &amp;constantEntry, <a class="el" href="classOgre_1_1GpuProgramParameters.html">GpuProgramParameters</a> *params) const </td></tr>
87
88<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Update a custom <a class="el" href="classOgre_1_1GpuProgramParameters.html">GpuProgramParameters</a> constant which is derived from information only this <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> knows.  <a href="#Ogre_1_1WireBoundingBoxa65"></a><br><br></td></tr>
89<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa66">setPolygonModeOverrideable</a> (bool override)</td></tr>
90
91<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting.  <a href="#Ogre_1_1WireBoundingBoxa66"></a><br><br></td></tr>
92<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa67">getPolygonModeOverrideable</a> (void) const </td></tr>
93
94<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting.  <a href="#Ogre_1_1WireBoundingBoxa67"></a><br><br></td></tr>
95<tr><td colspan=2><br><h2>Protected Types</h2></td></tr>
96<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::map&lt; size_t,<br>
97 <a class="el" href="classOgre_1_1Vector4.html">Vector4</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxx1">CustomParameterMap</a></td></tr>
98
99<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
100<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxx1">CustomParameterMap</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxp26">mCustomParameters</a></td></tr>
101
102<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxp27">mPolygonModeOverrideable</a></td></tr>
103
104<tr><td colspan=2><br><h2>Static Protected Attributes</h2></td></tr>
105<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="namespaceOgre.html#a453">PlaneList</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxt4">msDummyPlaneList</a></td></tr>
106
107</table>
108<hr><a name="_details"></a><h2>Detailed Description</h2>
109Abstract class defining the interface all renderable objects must implement.
110<p>
111<dl compact><dt><b>Remarks:</b></dt><dd>This interface abstracts renderable discrete objects which will be queued in the render pipeline, grouped by material. Classes implementing this interface must be based on a single material, a single world matrix (or a collection of world matrices which are blended by weights), and must be renderable via a single render operation. </dd></dl>
112<dl compact><dt><b></b></dt><dd>Note that deciding whether to put these objects in the rendering pipeline is done from the more specific classes e.g. entities. Only once it is decided that the specific class is to be rendered is the abstract version created (could be more than one per visible object) and pushed onto the rendering queue. </dd></dl>
113
114<p>
115
116<p>
117Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00052">52</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.<hr><h2>Member Typedef Documentation</h2>
118<a class="anchor" name="Ogre_1_1WireBoundingBoxx1" doxytag="Ogre::Renderable::CustomParameterMap" ></a><p>
119<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
120  <tr>
121    <td class="mdRow">
122      <table cellpadding="0" cellspacing="0" border="0">
123        <tr>
124          <td class="md" nowrap valign="top"> typedef std::map&lt;size_t, <a class="el" href="classOgre_1_1Vector4.html">Vector4</a>&gt; <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxx1">Ogre::Renderable::CustomParameterMap</a><code> [protected]</code>
125      </table>
126    </td>
127  </tr>
128</table>
129<table cellspacing=5 cellpadding=0 border=0>
130  <tr>
131    <td>
132      &nbsp;
133    </td>
134    <td>
135
136<p>
137
138<p>
139Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00247">247</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
140  </tr>
141</table>
142<hr><h2>Constructor &amp; Destructor Documentation</h2>
143<a class="anchor" name="Ogre_1_1Renderablea0" doxytag="Ogre::Renderable::Renderable" ></a><p>
144<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
145  <tr>
146    <td class="mdRow">
147      <table cellpadding="0" cellspacing="0" border="0">
148        <tr>
149          <td class="md" nowrap valign="top"> Ogre::Renderable::Renderable </td>
150          <td class="md" valign="top">(&nbsp;</td>
151          <td class="mdname1" valign="top" nowrap>          </td>
152          <td class="md" valign="top">&nbsp;)&nbsp;</td>
153          <td class="md" nowrap></td>
154        </tr>
155
156      </table>
157    </td>
158  </tr>
159</table>
160<table cellspacing=5 cellpadding=0 border=0>
161  <tr>
162    <td>
163      &nbsp;
164    </td>
165    <td>
166
167<p>
168
169<p>
170Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00055">55</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
171  </tr>
172</table>
173<a class="anchor" name="Ogre_1_1Renderablea1" doxytag="Ogre::Renderable::~Renderable" ></a><p>
174<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
175  <tr>
176    <td class="mdRow">
177      <table cellpadding="0" cellspacing="0" border="0">
178        <tr>
179          <td class="md" nowrap valign="top"> virtual Ogre::Renderable::~<a class="el" href="classOgre_1_1Renderable.html">Renderable</a> </td>
180          <td class="md" valign="top">(&nbsp;</td>
181          <td class="mdname1" valign="top" nowrap>          </td>
182          <td class="md" valign="top">&nbsp;)&nbsp;</td>
183          <td class="md" nowrap><code> [virtual]</code></td>
184        </tr>
185
186      </table>
187    </td>
188  </tr>
189</table>
190<table cellspacing=5 cellpadding=0 border=0>
191  <tr>
192    <td>
193      &nbsp;
194    </td>
195    <td>
196
197<p>
198Virtual destructor needed as class has virtual methods.
199<p>
200
201<p>
202Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00057">57</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
203  </tr>
204</table>
205<hr><h2>Member Function Documentation</h2>
206<a class="anchor" name="Ogre_1_1WireBoundingBoxa65" doxytag="Ogre::Renderable::_updateCustomGpuParameter" ></a><p>
207<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
208  <tr>
209    <td class="mdRow">
210      <table cellpadding="0" cellspacing="0" border="0">
211        <tr>
212          <td class="md" nowrap valign="top"> virtual void Ogre::Renderable::_updateCustomGpuParameter </td>
213          <td class="md" valign="top">(&nbsp;</td>
214          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1GpuProgramParameters_1_1AutoConstantEntry.html">GpuProgramParameters::AutoConstantEntry</a> &amp;&nbsp;</td>
215          <td class="mdname" nowrap> <em>constantEntry</em>, </td>
216        </tr>
217        <tr>
218          <td class="md" nowrap align="right"></td>
219          <td></td>
220          <td class="md" nowrap><a class="el" href="classOgre_1_1GpuProgramParameters.html">GpuProgramParameters</a> *&nbsp;</td>
221          <td class="mdname" nowrap> <em>params</em></td>
222        </tr>
223        <tr>
224          <td></td>
225          <td class="md">)&nbsp;</td>
226          <td class="md" colspan="2"> const<code> [virtual]</code></td>
227        </tr>
228
229      </table>
230    </td>
231  </tr>
232</table>
233<table cellspacing=5 cellpadding=0 border=0>
234  <tr>
235    <td>
236      &nbsp;
237    </td>
238    <td>
239
240<p>
241Update a custom <a class="el" href="classOgre_1_1GpuProgramParameters.html">GpuProgramParameters</a> constant which is derived from information only this <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> knows.
242<p>
243<dl compact><dt><b>Remarks:</b></dt><dd>This method allows a <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> to map in a custom GPU program parameter based on it's own data. This is represented by a GPU auto parameter of ACT_CUSTOM, and to allow there to be more than one of these per <a class="el" href="classOgre_1_1Renderable.html">Renderable</a>, the 'data' field on the auto parameter will identify which parameter is being updated. The implementation of this method must identify the parameter being updated, and call a 'setConstant' method on the passed in <a class="el" href="classOgre_1_1GpuProgramParameters.html">GpuProgramParameters</a> object, using the details provided in the incoming auto constant setting to identify the index at which to set the parameter. </dd></dl>
244<dl compact><dt><b></b></dt><dd>You do not need to override this method if you're using the standard sets of data associated with the <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> as provided by setCustomParameter and getCustomParameter. By default, the implementation will map from the value indexed by the 'constantEntry.data' parameter to a value previously set by setCustomParameter. But custom Renderables are free to override this if they want, in any case. </dd></dl>
245<dl compact><dt><b>Parameters:</b></dt><dd>
246  <table border="0" cellspacing="2" cellpadding="0">
247    <tr><td valign=top><em>constantEntry</em>&nbsp;</td><td>The auto constant entry referring to the parameter being updated </td></tr>
248    <tr><td valign=top><em>params</em>&nbsp;</td><td>The parameters object which this method should call to set the updated parameters. </td></tr>
249  </table>
250</dl>
251
252<p>
253Reimplemented in <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya26">Ogre::SubEntity</a>, and <a class="el" href="classOgre_1_1TerrainRenderable.html#Ogre_1_1TerrainRenderablea26">Ogre::TerrainRenderable</a>.
254<p>
255Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00215">215</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.
256<p>
257References <a class="el" href="OgreGpuProgram_8h-source.html#l00376">Ogre::GpuProgramParameters::AutoConstantEntry::data</a>, <a class="el" href="OgreGpuProgram_8h-source.html#l00373">Ogre::GpuProgramParameters::AutoConstantEntry::index</a>, and <a class="el" href="classOgre_1_1GpuProgramParameters.html#Ogre_1_1GpuProgramParametersa4">Ogre::GpuProgramParameters::setConstant()</a>.    </td>
258  </tr>
259</table>
260<a class="anchor" name="Ogre_1_1WireBoundingBoxa62" doxytag="Ogre::Renderable::getCastsShadows" ></a><p>
261<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
262  <tr>
263    <td class="mdRow">
264      <table cellpadding="0" cellspacing="0" border="0">
265        <tr>
266          <td class="md" nowrap valign="top"> virtual bool Ogre::Renderable::getCastsShadows </td>
267          <td class="md" valign="top">(&nbsp;</td>
268          <td class="md" nowrap valign="top">void&nbsp;</td>
269          <td class="mdname1" valign="top" nowrap>          </td>
270          <td class="md" valign="top">&nbsp;)&nbsp;</td>
271          <td class="md" nowrap> const<code> [virtual]</code></td>
272        </tr>
273
274      </table>
275    </td>
276  </tr>
277</table>
278<table cellspacing=5 cellpadding=0 border=0>
279  <tr>
280    <td>
281      &nbsp;
282    </td>
283    <td>
284
285<p>
286Method which reports whether this renderable would normally cast a shadow.
287<p>
288<dl compact><dt><b>Remarks:</b></dt><dd>Subclasses should override this if they could have been used to generate a shadow. </dd></dl>
289
290<p>
291Reimplemented in <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa13">Ogre::StaticGeometry::GeometryBucket</a>, and <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya15">Ogre::SubEntity</a>.
292<p>
293Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00150">150</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
294  </tr>
295</table>
296<a class="anchor" name="Ogre_1_1WireBoundingBoxa61" doxytag="Ogre::Renderable::getClipPlanes" ></a><p>
297<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
298  <tr>
299    <td class="mdRow">
300      <table cellpadding="0" cellspacing="0" border="0">
301        <tr>
302          <td class="md" nowrap valign="top"> virtual const <a class="el" href="namespaceOgre.html#a453">PlaneList</a>&amp; Ogre::Renderable::getClipPlanes </td>
303          <td class="md" valign="top">(&nbsp;</td>
304          <td class="mdname1" valign="top" nowrap>          </td>
305          <td class="md" valign="top">&nbsp;)&nbsp;</td>
306          <td class="md" nowrap> const<code> [virtual]</code></td>
307        </tr>
308
309      </table>
310    </td>
311  </tr>
312</table>
313<table cellspacing=5 cellpadding=0 border=0>
314  <tr>
315    <td>
316      &nbsp;
317    </td>
318    <td>
319
320<p>
321
322<p>
323Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00142">142</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.
324<p>
325References <a class="el" href="OgrePlane_8h-source.html#l00109">Ogre::PlaneList</a>.    </td>
326  </tr>
327</table>
328<a class="anchor" name="Ogre_1_1WireBoundingBoxa64" doxytag="Ogre::Renderable::getCustomParameter" ></a><p>
329<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
330  <tr>
331    <td class="mdRow">
332      <table cellpadding="0" cellspacing="0" border="0">
333        <tr>
334          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1Vector4.html">Vector4</a>&amp; Ogre::Renderable::getCustomParameter </td>
335          <td class="md" valign="top">(&nbsp;</td>
336          <td class="md" nowrap valign="top">size_t&nbsp;</td>
337          <td class="mdname1" valign="top" nowrap> <em>index</em>          </td>
338          <td class="md" valign="top">&nbsp;)&nbsp;</td>
339          <td class="md" nowrap> const</td>
340        </tr>
341
342      </table>
343    </td>
344  </tr>
345</table>
346<table cellspacing=5 cellpadding=0 border=0>
347  <tr>
348    <td>
349      &nbsp;
350    </td>
351    <td>
352
353<p>
354Gets the custom value associated with this <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> at the given index.
355<p>
356<dl compact><dt><b>Parameters:</b></dt><dd>
357  <table border="0" cellspacing="2" cellpadding="0">
358    <tr><td valign=top><em>@see</em>&nbsp;</td><td>setCustomParaemter for full details. </td></tr>
359  </table>
360</dl>
361
362<p>
363Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00176">176</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.
364<p>
365References <a class="el" href="OgreException_8h-source.html#l00033">OGRE_EXCEPT</a>.    </td>
366  </tr>
367</table>
368<a class="anchor" name="Ogre_1_1Renderablea13" doxytag="Ogre::Renderable::getLights" ></a><p>
369<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
370  <tr>
371    <td class="mdRow">
372      <table cellpadding="0" cellspacing="0" border="0">
373        <tr>
374          <td class="md" nowrap valign="top"> virtual const <a class="el" href="namespaceOgre.html#a73">LightList</a>&amp; Ogre::Renderable::getLights </td>
375          <td class="md" valign="top">(&nbsp;</td>
376          <td class="md" nowrap valign="top">void&nbsp;</td>
377          <td class="mdname1" valign="top" nowrap>          </td>
378          <td class="md" valign="top">&nbsp;)&nbsp;</td>
379          <td class="md" nowrap> const<code> [pure virtual]</code></td>
380        </tr>
381
382      </table>
383    </td>
384  </tr>
385</table>
386<table cellspacing=5 cellpadding=0 border=0>
387  <tr>
388    <td>
389      &nbsp;
390    </td>
391    <td>
392
393<p>
394Gets a list of lights, ordered relative to how close they are to this renderable.
395<p>
396<dl compact><dt><b>Remarks:</b></dt><dd>Directional lights, which have no position, will always be first on this list. </dd></dl>
397
398<p>
399Implemented in <a class="el" href="classOgre_1_1BillboardChain.html#Ogre_1_1RibbonTraila51">Ogre::BillboardChain</a>, <a class="el" href="classOgre_1_1BillboardSet.html#Ogre_1_1BillboardSeta54">Ogre::BillboardSet</a>, <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea10">Ogre::BorderRenderable</a>, <a class="el" href="classOgre_1_1Frustum.html#Ogre_1_1OctreeCameraa101">Ogre::Frustum</a>, <a class="el" href="classOgre_1_1ManualObject_1_1ManualObjectSection.html#Ogre_1_1ManualObject_1_1ManualObjectSectiona10">Ogre::ManualObject::ManualObjectSection</a>, <a class="el" href="classOgre_1_1Node.html#Ogre_1_1SceneNodea102">Ogre::Node</a>, <a class="el" href="classOgre_1_1OverlayElement.html#Ogre_1_1TextAreaOverlayElementa82">Ogre::OverlayElement</a>, <a class="el" href="classOgre_1_1ShadowRenderable.html#Ogre_1_1StaticGeometry_1_1Region_1_1RegionShadowRenderablea12">Ogre::ShadowRenderable</a>, <a class="el" href="classOgre_1_1SimpleRenderable.html#Ogre_1_1WireBoundingBoxa15">Ogre::SimpleRenderable</a>, <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa12">Ogre::StaticGeometry::GeometryBucket</a>, <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya14">Ogre::SubEntity</a>, <a class="el" href="classOgre_1_1TagPoint.html#Ogre_1_1TagPointa11">Ogre::TagPoint</a>, and <a class="el" href="classOgre_1_1TerrainRenderable.html#Ogre_1_1TerrainRenderablea25">Ogre::TerrainRenderable</a>.    </td>
400  </tr>
401</table>
402<a class="anchor" name="Ogre_1_1Renderablea2" doxytag="Ogre::Renderable::getMaterial" ></a><p>
403<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
404  <tr>
405    <td class="mdRow">
406      <table cellpadding="0" cellspacing="0" border="0">
407        <tr>
408          <td class="md" nowrap valign="top"> virtual const <a class="el" href="classOgre_1_1MaterialPtr.html">MaterialPtr</a>&amp; Ogre::Renderable::getMaterial </td>
409          <td class="md" valign="top">(&nbsp;</td>
410          <td class="md" nowrap valign="top">void&nbsp;</td>
411          <td class="mdname1" valign="top" nowrap>          </td>
412          <td class="md" valign="top">&nbsp;)&nbsp;</td>
413          <td class="md" nowrap> const<code> [pure virtual]</code></td>
414        </tr>
415
416      </table>
417    </td>
418  </tr>
419</table>
420<table cellspacing=5 cellpadding=0 border=0>
421  <tr>
422    <td>
423      &nbsp;
424    </td>
425    <td>
426
427<p>
428Retrieves a weak reference to the material this renderable object uses.
429<p>
430<dl compact><dt><b>Remarks:</b></dt><dd>Note that the <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> also has the option to override the getTechnique method to specify a particular <a class="el" href="classOgre_1_1Technique.html">Technique</a> to use instead of the best one available. </dd></dl>
431
432<p>
433Implemented in <a class="el" href="classOgre_1_1BillboardChain.html#Ogre_1_1RibbonTraila44">Ogre::BillboardChain</a>, <a class="el" href="classOgre_1_1BillboardSet.html#Ogre_1_1BillboardSeta34">Ogre::BillboardSet</a>, <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea1">Ogre::BorderRenderable</a>, <a class="el" href="classOgre_1_1Frustum.html#Ogre_1_1OctreeCameraa95">Ogre::Frustum</a>, <a class="el" href="classOgre_1_1ManualObject_1_1ManualObjectSection.html#Ogre_1_1ManualObject_1_1ManualObjectSectiona4">Ogre::ManualObject::ManualObjectSection</a>, <a class="el" href="classOgre_1_1Node.html#Ogre_1_1TagPointa66">Ogre::Node</a>, <a class="el" href="classOgre_1_1OverlayElement.html#Ogre_1_1TextAreaOverlayElementa51">Ogre::OverlayElement</a>, <a class="el" href="classOgre_1_1ShadowRenderable.html#Ogre_1_1StaticGeometry_1_1Region_1_1RegionShadowRenderablea8">Ogre::ShadowRenderable</a>, <a class="el" href="classOgre_1_1SimpleRenderable.html#Ogre_1_1WireBoundingBoxa6">Ogre::SimpleRenderable</a>, <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa5">Ogre::StaticGeometry::GeometryBucket</a>, <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya5">Ogre::SubEntity</a>, and <a class="el" href="classOgre_1_1TerrainRenderable.html#Ogre_1_1TerrainRenderablea9">Ogre::TerrainRenderable</a>.    </td>
434  </tr>
435</table>
436<a class="anchor" name="Ogre_1_1WireBoundingBoxa60" doxytag="Ogre::Renderable::getNormaliseNormals" ></a><p>
437<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
438  <tr>
439    <td class="mdRow">
440      <table cellpadding="0" cellspacing="0" border="0">
441        <tr>
442          <td class="md" nowrap valign="top"> virtual bool Ogre::Renderable::getNormaliseNormals </td>
443          <td class="md" valign="top">(&nbsp;</td>
444          <td class="md" nowrap valign="top">void&nbsp;</td>
445          <td class="mdname1" valign="top" nowrap>          </td>
446          <td class="md" valign="top">&nbsp;)&nbsp;</td>
447          <td class="md" nowrap> const<code> [virtual]</code></td>
448        </tr>
449
450      </table>
451    </td>
452  </tr>
453</table>
454<table cellspacing=5 cellpadding=0 border=0>
455  <tr>
456    <td>
457      &nbsp;
458    </td>
459    <td>
460
461<p>
462Returns whether or not this <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> wishes the hardware to normalise normals.
463<p>
464
465<p>
466Reimplemented in <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya11">Ogre::SubEntity</a>.
467<p>
468Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00134">134</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
469  </tr>
470</table>
471<a class="anchor" name="Ogre_1_1WireBoundingBoxa57" doxytag="Ogre::Renderable::getNumWorldTransforms" ></a><p>
472<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
473  <tr>
474    <td class="mdRow">
475      <table cellpadding="0" cellspacing="0" border="0">
476        <tr>
477          <td class="md" nowrap valign="top"> virtual unsigned short Ogre::Renderable::getNumWorldTransforms </td>
478          <td class="md" valign="top">(&nbsp;</td>
479          <td class="md" nowrap valign="top">void&nbsp;</td>
480          <td class="mdname1" valign="top" nowrap>          </td>
481          <td class="md" valign="top">&nbsp;)&nbsp;</td>
482          <td class="md" nowrap> const<code> [virtual]</code></td>
483        </tr>
484
485      </table>
486    </td>
487  </tr>
488</table>
489<table cellspacing=5 cellpadding=0 border=0>
490  <tr>
491    <td>
492      &nbsp;
493    </td>
494    <td>
495
496<p>
497Returns the number of world transform matrices this renderable requires.
498<p>
499<dl compact><dt><b>Remarks:</b></dt><dd>When a renderable uses vertex blending, it uses multiple world matrices instead of a single one. Each vertex sent to the pipeline can reference one or more matrices in this list with given weights. If a renderable does not use vertex blending this method returns 1, which is the default for simplicity. </dd></dl>
500
501<p>
502Reimplemented in <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea6">Ogre::BorderRenderable</a>, and <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya12">Ogre::SubEntity</a>.
503<p>
504Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00104">104</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
505  </tr>
506</table>
507<a class="anchor" name="Ogre_1_1WireBoundingBoxa67" doxytag="Ogre::Renderable::getPolygonModeOverrideable" ></a><p>
508<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
509  <tr>
510    <td class="mdRow">
511      <table cellpadding="0" cellspacing="0" border="0">
512        <tr>
513          <td class="md" nowrap valign="top"> virtual bool Ogre::Renderable::getPolygonModeOverrideable </td>
514          <td class="md" valign="top">(&nbsp;</td>
515          <td class="md" nowrap valign="top">void&nbsp;</td>
516          <td class="mdname1" valign="top" nowrap>          </td>
517          <td class="md" valign="top">&nbsp;)&nbsp;</td>
518          <td class="md" nowrap> const<code> [virtual]</code></td>
519        </tr>
520
521      </table>
522    </td>
523  </tr>
524</table>
525<table cellspacing=5 cellpadding=0 border=0>
526  <tr>
527    <td>
528      &nbsp;
529    </td>
530    <td>
531
532<p>
533Gets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting.
534<p>
535
536<p>
537Reimplemented in <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea11">Ogre::BorderRenderable</a>.
538<p>
539Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00239">239</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
540  </tr>
541</table>
542<a class="anchor" name="Ogre_1_1Renderablea4" doxytag="Ogre::Renderable::getRenderOperation" ></a><p>
543<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
544  <tr>
545    <td class="mdRow">
546      <table cellpadding="0" cellspacing="0" border="0">
547        <tr>
548          <td class="md" nowrap valign="top"> virtual void Ogre::Renderable::getRenderOperation </td>
549          <td class="md" valign="top">(&nbsp;</td>
550          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1RenderOperation.html">RenderOperation</a> &amp;&nbsp;</td>
551          <td class="mdname1" valign="top" nowrap> <em>op</em>          </td>
552          <td class="md" valign="top">&nbsp;)&nbsp;</td>
553          <td class="md" nowrap><code> [pure virtual]</code></td>
554        </tr>
555
556      </table>
557    </td>
558  </tr>
559</table>
560<table cellspacing=5 cellpadding=0 border=0>
561  <tr>
562    <td>
563      &nbsp;
564    </td>
565    <td>
566
567<p>
568Gets the render operation required to send this object to the frame buffer.
569<p>
570
571<p>
572Implemented in <a class="el" href="classOgre_1_1BillboardChain.html#Ogre_1_1RibbonTraila47">Ogre::BillboardChain</a>, <a class="el" href="classOgre_1_1BillboardSet.html#Ogre_1_1BillboardSeta35">Ogre::BillboardSet</a>, <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea2">Ogre::BorderRenderable</a>, <a class="el" href="classOgre_1_1Frustum.html#Ogre_1_1OctreeCameraa96">Ogre::Frustum</a>, <a class="el" href="classOgre_1_1ManualObject_1_1ManualObjectSection.html#Ogre_1_1ManualObject_1_1ManualObjectSectiona5">Ogre::ManualObject::ManualObjectSection</a>, <a class="el" href="classOgre_1_1Node.html#Ogre_1_1TagPointa67">Ogre::Node</a>, <a class="el" href="classOgre_1_1PanelOverlayElement.html#Ogre_1_1PanelOverlayElementa11">Ogre::PanelOverlayElement</a>, <a class="el" href="classOgre_1_1ShadowRenderable.html#Ogre_1_1StaticGeometry_1_1Region_1_1RegionShadowRenderablea9">Ogre::ShadowRenderable</a>, <a class="el" href="classOgre_1_1SimpleRenderable.html#Ogre_1_1WireBoundingBoxa8">Ogre::SimpleRenderable</a>, <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa7">Ogre::StaticGeometry::GeometryBucket</a>, <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya7">Ogre::SubEntity</a>, <a class="el" href="classOgre_1_1TextAreaOverlayElement.html#Ogre_1_1TextAreaOverlayElementa12">Ogre::TextAreaOverlayElement</a>, <a class="el" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea10">Ogre::OctreeNode</a>, and <a class="el" href="classOgre_1_1TerrainRenderable.html#Ogre_1_1TerrainRenderablea8">Ogre::TerrainRenderable</a>.    </td>
573  </tr>
574</table>
575<a class="anchor" name="Ogre_1_1SimpleRenderablea61" doxytag="Ogre::Renderable::getSquaredViewDepth" ></a><p>
576<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
577  <tr>
578    <td class="mdRow">
579      <table cellpadding="0" cellspacing="0" border="0">
580        <tr>
581          <td class="md" nowrap valign="top"> virtual <a class="el" href="namespaceOgre.html#a465">Real</a> Ogre::Renderable::getSquaredViewDepth </td>
582          <td class="md" valign="top">(&nbsp;</td>
583          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Camera.html">Camera</a> *&nbsp;</td>
584          <td class="mdname1" valign="top" nowrap> <em>cam</em>          </td>
585          <td class="md" valign="top">&nbsp;)&nbsp;</td>
586          <td class="md" nowrap> const<code> [pure virtual]</code></td>
587        </tr>
588
589      </table>
590    </td>
591  </tr>
592</table>
593<table cellspacing=5 cellpadding=0 border=0>
594  <tr>
595    <td>
596      &nbsp;
597    </td>
598    <td>
599
600<p>
601Returns the camera-relative squared depth of this renderable.
602<p>
603<dl compact><dt><b>Remarks:</b></dt><dd>Used to sort transparent objects. Squared depth is used rather than actual depth to avoid having to perform a square root on the result.</dd></dl>
604
605<p>
606Implemented in <a class="el" href="classOgre_1_1BillboardChain.html#Ogre_1_1RibbonTraila41">Ogre::BillboardChain</a>, <a class="el" href="classOgre_1_1BillboardSet.html#Ogre_1_1BillboardSeta52">Ogre::BillboardSet</a>, <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea9">Ogre::BorderRenderable</a>, <a class="el" href="classOgre_1_1Frustum.html#Ogre_1_1OctreeCameraa100">Ogre::Frustum</a>, <a class="el" href="classOgre_1_1Node.html#Ogre_1_1TagPointa77">Ogre::Node</a>, <a class="el" href="classOgre_1_1OverlayElement.html#Ogre_1_1TextAreaOverlayElementa81">Ogre::OverlayElement</a>, <a class="el" href="classOgre_1_1Rectangle2D.html#Ogre_1_1Rectangle2Da3">Ogre::Rectangle2D</a>, <a class="el" href="classOgre_1_1ShadowRenderable.html#Ogre_1_1StaticGeometry_1_1Region_1_1RegionShadowRenderablea11">Ogre::ShadowRenderable</a>, <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa11">Ogre::StaticGeometry::GeometryBucket</a>, <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya13">Ogre::SubEntity</a>, <a class="el" href="classOgre_1_1WireBoundingBox.html#Ogre_1_1WireBoundingBoxa3">Ogre::WireBoundingBox</a>, and <a class="el" href="classOgre_1_1TerrainRenderable.html#Ogre_1_1TerrainRenderablea23">Ogre::TerrainRenderable</a>.
607<p>
608Referenced by <a class="el" href="OgreRenderQueueSortingGrouping_8h-source.html#l00214">Ogre::QueuedRenderableCollection::RadixSortFunctorDistance::operator()()</a>, and <a class="el" href="OgreRenderQueueSortingGrouping_8h-source.html#l00157">Ogre::QueuedRenderableCollection::DepthSortDescendingLess::operator()()</a>.    </td>
609  </tr>
610</table>
611<a class="anchor" name="Ogre_1_1WireBoundingBoxa56" doxytag="Ogre::Renderable::getTechnique" ></a><p>
612<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
613  <tr>
614    <td class="mdRow">
615      <table cellpadding="0" cellspacing="0" border="0">
616        <tr>
617          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1Technique.html">Technique</a>* Ogre::Renderable::getTechnique </td>
618          <td class="md" valign="top">(&nbsp;</td>
619          <td class="md" nowrap valign="top">void&nbsp;</td>
620          <td class="mdname1" valign="top" nowrap>          </td>
621          <td class="md" valign="top">&nbsp;)&nbsp;</td>
622          <td class="md" nowrap> const<code> [virtual]</code></td>
623        </tr>
624
625      </table>
626    </td>
627  </tr>
628</table>
629<table cellspacing=5 cellpadding=0 border=0>
630  <tr>
631    <td>
632      &nbsp;
633    </td>
634    <td>
635
636<p>
637Retrieves a pointer to the <a class="el" href="classOgre_1_1Material.html">Material</a> <a class="el" href="classOgre_1_1Technique.html">Technique</a> this renderable object uses.
638<p>
639<dl compact><dt><b>Remarks:</b></dt><dd>This is to allow Renderables to use a chosen <a class="el" href="classOgre_1_1Technique.html">Technique</a> if they wish, otherwise they will use the best <a class="el" href="classOgre_1_1Technique.html">Technique</a> available for the <a class="el" href="classOgre_1_1Material.html">Material</a> they are using. </dd></dl>
640
641<p>
642Reimplemented in <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa6">Ogre::StaticGeometry::GeometryBucket</a>, and <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya6">Ogre::SubEntity</a>.
643<p>
644Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00069">69</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
645  </tr>
646</table>
647<a class="anchor" name="Ogre_1_1Renderablea6" doxytag="Ogre::Renderable::getWorldOrientation" ></a><p>
648<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
649  <tr>
650    <td class="mdRow">
651      <table cellpadding="0" cellspacing="0" border="0">
652        <tr>
653          <td class="md" nowrap valign="top"> virtual const <a class="el" href="classOgre_1_1Quaternion.html">Quaternion</a>&amp; Ogre::Renderable::getWorldOrientation </td>
654          <td class="md" valign="top">(&nbsp;</td>
655          <td class="md" nowrap valign="top">void&nbsp;</td>
656          <td class="mdname1" valign="top" nowrap>          </td>
657          <td class="md" valign="top">&nbsp;)&nbsp;</td>
658          <td class="md" nowrap> const<code> [pure virtual]</code></td>
659        </tr>
660
661      </table>
662    </td>
663  </tr>
664</table>
665<table cellspacing=5 cellpadding=0 border=0>
666  <tr>
667    <td>
668      &nbsp;
669    </td>
670    <td>
671
672<p>
673Gets the worldspace orientation of this renderable; this is used in order to more efficiently update parameters to vertex &amp; fragment programs, since inverting Quaterion and Vector in order to derive object-space positions / directions for cameras and lights is much more efficient than inverting a complete 4x4 matrix, and also eliminates problems introduced by scaling.
674<p>
675
676<p>
677Implemented in <a class="el" href="classOgre_1_1BillboardChain.html#Ogre_1_1RibbonTraila49">Ogre::BillboardChain</a>, <a class="el" href="classOgre_1_1BillboardSet.html#Ogre_1_1BillboardSeta37">Ogre::BillboardSet</a>, <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea4">Ogre::BorderRenderable</a>, <a class="el" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html#Ogre_1_1Entity_1_1EntityShadowRenderablea3">Ogre::Entity::EntityShadowRenderable</a>, <a class="el" href="classOgre_1_1Frustum.html#Ogre_1_1OctreeCameraa98">Ogre::Frustum</a>, <a class="el" href="classOgre_1_1ManualObject_1_1ManualObjectSection.html#Ogre_1_1ManualObject_1_1ManualObjectSectiona7">Ogre::ManualObject::ManualObjectSection</a>, <a class="el" href="classOgre_1_1ManualObject_1_1ManualObjectSectionShadowRenderable.html#Ogre_1_1ManualObject_1_1ManualObjectSectionShadowRenderablea3">Ogre::ManualObject::ManualObjectSectionShadowRenderable</a>, <a class="el" href="classOgre_1_1Node.html#Ogre_1_1TagPointa69">Ogre::Node</a>, <a class="el" href="classOgre_1_1OverlayElement.html#Ogre_1_1TextAreaOverlayElementa53">Ogre::OverlayElement</a>, <a class="el" href="classOgre_1_1Rectangle2D.html#Ogre_1_1Rectangle2Db1">Ogre::Rectangle2D</a>, <a class="el" href="classOgre_1_1ShadowRenderable.html#Ogre_1_1ShadowRenderablea7">Ogre::ShadowRenderable</a>, <a class="el" href="classOgre_1_1SimpleRenderable.html#Ogre_1_1SimpleRenderablea7">Ogre::SimpleRenderable</a>, <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa9">Ogre::StaticGeometry::GeometryBucket</a>, <a class="el" href="classOgre_1_1StaticGeometry_1_1Region_1_1RegionShadowRenderable.html#Ogre_1_1StaticGeometry_1_1Region_1_1RegionShadowRenderablea3">Ogre::StaticGeometry::Region::RegionShadowRenderable</a>, <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya9">Ogre::SubEntity</a>, <a class="el" href="classOgre_1_1WireBoundingBox.html#Ogre_1_1WireBoundingBoxb1">Ogre::WireBoundingBox</a>, and <a class="el" href="classOgre_1_1TerrainRenderable.html#Ogre_1_1TerrainRenderablea11">Ogre::TerrainRenderable</a>.    </td>
678  </tr>
679</table>
680<a class="anchor" name="Ogre_1_1Renderablea7" doxytag="Ogre::Renderable::getWorldPosition" ></a><p>
681<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
682  <tr>
683    <td class="mdRow">
684      <table cellpadding="0" cellspacing="0" border="0">
685        <tr>
686          <td class="md" nowrap valign="top"> virtual const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a>&amp; Ogre::Renderable::getWorldPosition </td>
687          <td class="md" valign="top">(&nbsp;</td>
688          <td class="md" nowrap valign="top">void&nbsp;</td>
689          <td class="mdname1" valign="top" nowrap>          </td>
690          <td class="md" valign="top">&nbsp;)&nbsp;</td>
691          <td class="md" nowrap> const<code> [pure virtual]</code></td>
692        </tr>
693
694      </table>
695    </td>
696  </tr>
697</table>
698<table cellspacing=5 cellpadding=0 border=0>
699  <tr>
700    <td>
701      &nbsp;
702    </td>
703    <td>
704
705<p>
706Gets the worldspace orientation of this renderable; this is used in order to more efficiently update parameters to vertex &amp; fragment programs, since inverting Quaterion and Vector in order to derive object-space positions / directions for cameras and lights is much more efficient than inverting a complete 4x4 matrix, and also eliminates problems introduced by scaling.
707<p>
708
709<p>
710Implemented in <a class="el" href="classOgre_1_1BillboardChain.html#Ogre_1_1RibbonTraila50">Ogre::BillboardChain</a>, <a class="el" href="classOgre_1_1BillboardSet.html#Ogre_1_1BillboardSeta38">Ogre::BillboardSet</a>, <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea5">Ogre::BorderRenderable</a>, <a class="el" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html#Ogre_1_1Entity_1_1EntityShadowRenderablea4">Ogre::Entity::EntityShadowRenderable</a>, <a class="el" href="classOgre_1_1Frustum.html#Ogre_1_1OctreeCameraa99">Ogre::Frustum</a>, <a class="el" href="classOgre_1_1ManualObject_1_1ManualObjectSection.html#Ogre_1_1ManualObject_1_1ManualObjectSectiona8">Ogre::ManualObject::ManualObjectSection</a>, <a class="el" href="classOgre_1_1ManualObject_1_1ManualObjectSectionShadowRenderable.html#Ogre_1_1ManualObject_1_1ManualObjectSectionShadowRenderablea4">Ogre::ManualObject::ManualObjectSectionShadowRenderable</a>, <a class="el" href="classOgre_1_1Node.html#Ogre_1_1TagPointa70">Ogre::Node</a>, <a class="el" href="classOgre_1_1OverlayElement.html#Ogre_1_1TextAreaOverlayElementa54">Ogre::OverlayElement</a>, <a class="el" href="classOgre_1_1Rectangle2D.html#Ogre_1_1Rectangle2Db2">Ogre::Rectangle2D</a>, <a class="el" href="classOgre_1_1ShadowRenderable.html#Ogre_1_1ShadowRenderablea8">Ogre::ShadowRenderable</a>, <a class="el" href="classOgre_1_1SimpleRenderable.html#Ogre_1_1SimpleRenderablea8">Ogre::SimpleRenderable</a>, <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa10">Ogre::StaticGeometry::GeometryBucket</a>, <a class="el" href="classOgre_1_1StaticGeometry_1_1Region_1_1RegionShadowRenderable.html#Ogre_1_1StaticGeometry_1_1Region_1_1RegionShadowRenderablea4">Ogre::StaticGeometry::Region::RegionShadowRenderable</a>, <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya10">Ogre::SubEntity</a>, <a class="el" href="classOgre_1_1WireBoundingBox.html#Ogre_1_1WireBoundingBoxb2">Ogre::WireBoundingBox</a>, and <a class="el" href="classOgre_1_1TerrainRenderable.html#Ogre_1_1TerrainRenderablea12">Ogre::TerrainRenderable</a>.    </td>
711  </tr>
712</table>
713<a class="anchor" name="Ogre_1_1Renderablea5" doxytag="Ogre::Renderable::getWorldTransforms" ></a><p>
714<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
715  <tr>
716    <td class="mdRow">
717      <table cellpadding="0" cellspacing="0" border="0">
718        <tr>
719          <td class="md" nowrap valign="top"> virtual void Ogre::Renderable::getWorldTransforms </td>
720          <td class="md" valign="top">(&nbsp;</td>
721          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> *&nbsp;</td>
722          <td class="mdname1" valign="top" nowrap> <em>xform</em>          </td>
723          <td class="md" valign="top">&nbsp;)&nbsp;</td>
724          <td class="md" nowrap> const<code> [pure virtual]</code></td>
725        </tr>
726
727      </table>
728    </td>
729  </tr>
730</table>
731<table cellspacing=5 cellpadding=0 border=0>
732  <tr>
733    <td>
734      &nbsp;
735    </td>
736    <td>
737
738<p>
739Gets the world transform matrix / matrices for this renderable object.
740<p>
741<dl compact><dt><b>Remarks:</b></dt><dd>If the object has any derived transforms, these are expected to be up to date as long as all the <a class="el" href="classOgre_1_1SceneNode.html">SceneNode</a> structures have been updated before this is called. </dd></dl>
742<dl compact><dt><b></b></dt><dd>This method will populate xform with 1 matrix if it does not use vertex blending. If it does use vertex blending it will fill the passed in pointer with an array of matrices, the length being the value returned from getNumWorldTransforms. </dd></dl>
743
744<p>
745Implemented in <a class="el" href="classOgre_1_1BillboardChain.html#Ogre_1_1RibbonTraila48">Ogre::BillboardChain</a>, <a class="el" href="classOgre_1_1BillboardSet.html#Ogre_1_1BillboardSeta36">Ogre::BillboardSet</a>, <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea3">Ogre::BorderRenderable</a>, <a class="el" href="classOgre_1_1Entity_1_1EntityShadowRenderable.html#Ogre_1_1Entity_1_1EntityShadowRenderablea2">Ogre::Entity::EntityShadowRenderable</a>, <a class="el" href="classOgre_1_1Frustum.html#Ogre_1_1OctreeCameraa97">Ogre::Frustum</a>, <a class="el" href="classOgre_1_1ManualObject_1_1ManualObjectSection.html#Ogre_1_1ManualObject_1_1ManualObjectSectiona6">Ogre::ManualObject::ManualObjectSection</a>, <a class="el" href="classOgre_1_1ManualObject_1_1ManualObjectSectionShadowRenderable.html#Ogre_1_1ManualObject_1_1ManualObjectSectionShadowRenderablea2">Ogre::ManualObject::ManualObjectSectionShadowRenderable</a>, <a class="el" href="classOgre_1_1Node.html#Ogre_1_1TagPointa68">Ogre::Node</a>, <a class="el" href="classOgre_1_1OverlayElement.html#Ogre_1_1TextAreaOverlayElementa52">Ogre::OverlayElement</a>, <a class="el" href="classOgre_1_1Rectangle2D.html#Ogre_1_1Rectangle2Db0">Ogre::Rectangle2D</a>, <a class="el" href="classOgre_1_1ShadowRenderable.html#Ogre_1_1ShadowRenderablea6">Ogre::ShadowRenderable</a>, <a class="el" href="classOgre_1_1SimpleRenderable.html#Ogre_1_1SimpleRenderablea6">Ogre::SimpleRenderable</a>, <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa8">Ogre::StaticGeometry::GeometryBucket</a>, <a class="el" href="classOgre_1_1StaticGeometry_1_1Region_1_1RegionShadowRenderable.html#Ogre_1_1StaticGeometry_1_1Region_1_1RegionShadowRenderablea2">Ogre::StaticGeometry::Region::RegionShadowRenderable</a>, <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya8">Ogre::SubEntity</a>, <a class="el" href="classOgre_1_1WireBoundingBox.html#Ogre_1_1WireBoundingBoxb0">Ogre::WireBoundingBox</a>, and <a class="el" href="classOgre_1_1TerrainRenderable.html#Ogre_1_1TerrainRenderablea10">Ogre::TerrainRenderable</a>.    </td>
746  </tr>
747</table>
748<a class="anchor" name="Ogre_1_1WireBoundingBoxa63" doxytag="Ogre::Renderable::setCustomParameter" ></a><p>
749<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
750  <tr>
751    <td class="mdRow">
752      <table cellpadding="0" cellspacing="0" border="0">
753        <tr>
754          <td class="md" nowrap valign="top"> void Ogre::Renderable::setCustomParameter </td>
755          <td class="md" valign="top">(&nbsp;</td>
756          <td class="md" nowrap valign="top">size_t&nbsp;</td>
757          <td class="mdname" nowrap> <em>index</em>, </td>
758        </tr>
759        <tr>
760          <td class="md" nowrap align="right"></td>
761          <td></td>
762          <td class="md" nowrap>const <a class="el" href="classOgre_1_1Vector4.html">Vector4</a> &amp;&nbsp;</td>
763          <td class="mdname" nowrap> <em>value</em></td>
764        </tr>
765        <tr>
766          <td></td>
767          <td class="md">)&nbsp;</td>
768          <td class="md" colspan="2"></td>
769        </tr>
770
771      </table>
772    </td>
773  </tr>
774</table>
775<table cellspacing=5 cellpadding=0 border=0>
776  <tr>
777    <td>
778      &nbsp;
779    </td>
780    <td>
781
782<p>
783Sets a custom parameter for this <a class="el" href="classOgre_1_1Renderable.html">Renderable</a>, which may be used to drive calculations for this specific <a class="el" href="classOgre_1_1Renderable.html">Renderable</a>, like GPU program parameters.
784<p>
785<dl compact><dt><b>Remarks:</b></dt><dd>Calling this method simply associates a numeric index with a 4-dimensional value for this specific <a class="el" href="classOgre_1_1Renderable.html">Renderable</a>. This is most useful if the material which this <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> uses a vertex or fragment program, and has an ACT_CUSTOM parameter entry. This parameter entry can refer to the index you specify as part of this call, thereby mapping a custom parameter for this renderable to a program parameter. </dd></dl>
786<dl compact><dt><b>Parameters:</b></dt><dd>
787  <table border="0" cellspacing="2" cellpadding="0">
788    <tr><td valign=top><em>index</em>&nbsp;</td><td>The index with which to associate the value. Note that this does not have to start at 0, and can include gaps. It also has no direct correlation with a GPU program parameter index - the mapping between the two is performed by the ACT_CUSTOM entry, if that is used. </td></tr>
789    <tr><td valign=top><em>value</em>&nbsp;</td><td>The value to associate. </td></tr>
790  </table>
791</dl>
792
793<p>
794Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00167">167</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
795  </tr>
796</table>
797<a class="anchor" name="Ogre_1_1WireBoundingBoxa66" doxytag="Ogre::Renderable::setPolygonModeOverrideable" ></a><p>
798<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
799  <tr>
800    <td class="mdRow">
801      <table cellpadding="0" cellspacing="0" border="0">
802        <tr>
803          <td class="md" nowrap valign="top"> virtual void Ogre::Renderable::setPolygonModeOverrideable </td>
804          <td class="md" valign="top">(&nbsp;</td>
805          <td class="md" nowrap valign="top">bool&nbsp;</td>
806          <td class="mdname1" valign="top" nowrap> <em>override</em>          </td>
807          <td class="md" valign="top">&nbsp;)&nbsp;</td>
808          <td class="md" nowrap><code> [virtual]</code></td>
809        </tr>
810
811      </table>
812    </td>
813  </tr>
814</table>
815<table cellspacing=5 cellpadding=0 border=0>
816  <tr>
817    <td>
818      &nbsp;
819    </td>
820    <td>
821
822<p>
823Sets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting.
824<p>
825<dl compact><dt><b>Parameters:</b></dt><dd>
826  <table border="0" cellspacing="2" cellpadding="0">
827    <tr><td valign=top><em>override</em>&nbsp;</td><td>true means that a lower camera detail will override this renderables detail level, false means it won't.</td></tr>
828  </table>
829</dl>
830
831<p>
832Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00231">231</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
833  </tr>
834</table>
835<a class="anchor" name="Ogre_1_1WireBoundingBoxa58" doxytag="Ogre::Renderable::useIdentityProjection" ></a><p>
836<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
837  <tr>
838    <td class="mdRow">
839      <table cellpadding="0" cellspacing="0" border="0">
840        <tr>
841          <td class="md" nowrap valign="top"> virtual bool Ogre::Renderable::useIdentityProjection </td>
842          <td class="md" valign="top">(&nbsp;</td>
843          <td class="md" nowrap valign="top">void&nbsp;</td>
844          <td class="mdname1" valign="top" nowrap>          </td>
845          <td class="md" valign="top">&nbsp;)&nbsp;</td>
846          <td class="md" nowrap> const<code> [virtual]</code></td>
847        </tr>
848
849      </table>
850    </td>
851  </tr>
852</table>
853<table cellspacing=5 cellpadding=0 border=0>
854  <tr>
855    <td>
856      &nbsp;
857    </td>
858    <td>
859
860<p>
861Returns whether or not to use an 'identity' projection.
862<p>
863<dl compact><dt><b>Remarks:</b></dt><dd>Usually <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> objects will use a projection matrix as determined by the active camera. However, if they want they can cancel this out and use an identity projection, which effectively projects in 2D using a {-1, 1} view space. Useful for overlay rendering. Normal renderables need not override this. </dd></dl>
864
865<p>
866Reimplemented in <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea7">Ogre::BorderRenderable</a>, <a class="el" href="classOgre_1_1OverlayElement.html#Ogre_1_1TextAreaOverlayElementa55">Ogre::OverlayElement</a>, and <a class="el" href="classOgre_1_1Rectangle2D.html#Ogre_1_1Rectangle2Da5">Ogre::Rectangle2D</a>.
867<p>
868Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00114">114</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
869  </tr>
870</table>
871<a class="anchor" name="Ogre_1_1WireBoundingBoxa59" doxytag="Ogre::Renderable::useIdentityView" ></a><p>
872<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
873  <tr>
874    <td class="mdRow">
875      <table cellpadding="0" cellspacing="0" border="0">
876        <tr>
877          <td class="md" nowrap valign="top"> virtual bool Ogre::Renderable::useIdentityView </td>
878          <td class="md" valign="top">(&nbsp;</td>
879          <td class="md" nowrap valign="top">void&nbsp;</td>
880          <td class="mdname1" valign="top" nowrap>          </td>
881          <td class="md" valign="top">&nbsp;)&nbsp;</td>
882          <td class="md" nowrap> const<code> [virtual]</code></td>
883        </tr>
884
885      </table>
886    </td>
887  </tr>
888</table>
889<table cellspacing=5 cellpadding=0 border=0>
890  <tr>
891    <td>
892      &nbsp;
893    </td>
894    <td>
895
896<p>
897Returns whether or not to use an 'identity' projection.
898<p>
899<dl compact><dt><b>Remarks:</b></dt><dd>Usually <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> objects will use a view matrix as determined by the active camera. However, if they want they can cancel this out and use an identity matrix, which means all geometry is assumed to be relative to camera space already. Useful for overlay rendering. Normal renderables need not override this. </dd></dl>
900
901<p>
902Reimplemented in <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea8">Ogre::BorderRenderable</a>, <a class="el" href="classOgre_1_1OverlayElement.html#Ogre_1_1TextAreaOverlayElementa56">Ogre::OverlayElement</a>, and <a class="el" href="classOgre_1_1Rectangle2D.html#Ogre_1_1Rectangle2Da6">Ogre::Rectangle2D</a>.
903<p>
904Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00124">124</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
905  </tr>
906</table>
907<hr><h2>Member Data Documentation</h2>
908<a class="anchor" name="Ogre_1_1WireBoundingBoxp26" doxytag="Ogre::Renderable::mCustomParameters" ></a><p>
909<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
910  <tr>
911    <td class="mdRow">
912      <table cellpadding="0" cellspacing="0" border="0">
913        <tr>
914          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxx1">CustomParameterMap</a> <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxp26">Ogre::Renderable::mCustomParameters</a><code> [protected]</code>
915      </table>
916    </td>
917  </tr>
918</table>
919<table cellspacing=5 cellpadding=0 border=0>
920  <tr>
921    <td>
922      &nbsp;
923    </td>
924    <td>
925
926<p>
927
928<p>
929Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00248">248</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
930  </tr>
931</table>
932<a class="anchor" name="Ogre_1_1WireBoundingBoxp27" doxytag="Ogre::Renderable::mPolygonModeOverrideable" ></a><p>
933<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
934  <tr>
935    <td class="mdRow">
936      <table cellpadding="0" cellspacing="0" border="0">
937        <tr>
938          <td class="md" nowrap valign="top"> bool <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxp27">Ogre::Renderable::mPolygonModeOverrideable</a><code> [protected]</code>
939      </table>
940    </td>
941  </tr>
942</table>
943<table cellspacing=5 cellpadding=0 border=0>
944  <tr>
945    <td>
946      &nbsp;
947    </td>
948    <td>
949
950<p>
951
952<p>
953Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00249">249</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
954  </tr>
955</table>
956<a class="anchor" name="Ogre_1_1WireBoundingBoxt4" doxytag="Ogre::Renderable::msDummyPlaneList" ></a><p>
957<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
958  <tr>
959    <td class="mdRow">
960      <table cellpadding="0" cellspacing="0" border="0">
961        <tr>
962          <td class="md" nowrap valign="top"> const <a class="el" href="namespaceOgre.html#a453">PlaneList</a> <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxt4">Ogre::Renderable::msDummyPlaneList</a><code> [static, protected]</code>
963      </table>
964    </td>
965  </tr>
966</table>
967<table cellspacing=5 cellpadding=0 border=0>
968  <tr>
969    <td>
970      &nbsp;
971    </td>
972    <td>
973
974<p>
975
976<p>
977Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00246">246</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
978  </tr>
979</table>
980<hr>The documentation for this class was generated from the following file:<ul>
981<li><a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a></ul>
982<hr>
983<p>
984Copyright &copy; 2000-2005 by The OGRE Team<br />
985<!--Creative Commons License--><a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/"><img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/somerights20.png"/></a><br/>
986This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License</a>.<br/>
987                <!--/Creative Commons License--><!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
988                <Work rdf:about="">
989                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
990        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
991                </Work>
992                <License rdf:about="http://creativecommons.org/licenses/by-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF> -->
993
994Last modified Sun Mar 12 14:42:02 2006
995</p>
996</body>
997</html>
Note: See TracBrowser for help on using the repository browser.