source: OGRE/trunk/ogrenew/Docs/api/html/classOgre_1_1StaticGeometry_1_1GeometryBucket.html @ 657

Revision 657, 77.7 KB checked in by mattausch, 18 years ago (diff)

added ogre dependencies and patched ogre sources

Line 
1<html>
2<head>
3<title>Ogre::StaticGeometry::GeometryBucket 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::StaticGeometry::GeometryBucket Class Reference</h1>A <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html">GeometryBucket</a> is a the lowest level bucket where geometry with the same vertex &amp; index format is stored. 
11<a href="#_details">More...</a>
12<p>
13<code>#include &lt;<a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>&gt;</code>
14<p>
15<p>Inheritance diagram for Ogre::StaticGeometry::GeometryBucket:
16<p><center><img src="classOgre_1_1StaticGeometry_1_1GeometryBucket.png" usemap="#Ogre::StaticGeometry::GeometryBucket_map" border="0" alt=""></center>
17<map name="Ogre::StaticGeometry::GeometryBucket_map">
18<area href="classOgre_1_1Renderable.html" alt="Ogre::Renderable" shape="rect" coords="0,0,230,24">
19</map>
20<a href="classOgre_1_1StaticGeometry_1_1GeometryBucket-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
21<tr><td></td></tr>
22<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
23<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa0">GeometryBucket</a> (<a class="el" href="classOgre_1_1StaticGeometry_1_1MaterialBucket.html">MaterialBucket</a> *parent, const <a class="el" href="namespaceOgre.html#a426">String</a> &amp;formatString, const <a class="el" href="classOgre_1_1VertexData.html">VertexData</a> *vData, const <a class="el" href="classOgre_1_1IndexData.html">IndexData</a> *iData)</td></tr>
24
25<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa1">~GeometryBucket</a> ()</td></tr>
26
27<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1StaticGeometry_1_1MaterialBucket.html">MaterialBucket</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa2">getParent</a> (void)</td></tr>
28
29<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="classOgre_1_1VertexData.html">VertexData</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa3">getVertexData</a> (void) const </td></tr>
30
31<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the vertex data for this geometry.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketa3"></a><br><br></td></tr>
32<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="classOgre_1_1IndexData.html">IndexData</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa4">getIndexData</a> (void) const </td></tr>
33
34<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the index data for this geometry.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketa4"></a><br><br></td></tr>
35<tr><td class="memItemLeft" nowrap align=right valign=top>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_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa5">getMaterial</a> (void) const </td></tr>
36
37<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><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>
38  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketa5"></a><br><br></td></tr>
39<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Technique.html">Technique</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa6">getTechnique</a> (void) const </td></tr>
40
41<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_1StaticGeometry_1_1GeometryBucketa6"></a><br><br></td></tr>
42<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa7">getRenderOperation</a> (<a class="el" href="classOgre_1_1RenderOperation.html">RenderOperation</a> &amp;op)</td></tr>
43
44<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_1StaticGeometry_1_1GeometryBucketa7"></a><br><br></td></tr>
45<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa8">getWorldTransforms</a> (<a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> *xform) const </td></tr>
46
47<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the world transform matrix / matrices for this renderable object.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketa8"></a><br><br></td></tr>
48<tr><td class="memItemLeft" nowrap align=right valign=top>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_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa9">getWorldOrientation</a> (void) const </td></tr>
49
50<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_1StaticGeometry_1_1GeometryBucketa9"></a><br><br></td></tr>
51<tr><td class="memItemLeft" nowrap align=right valign=top>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_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa10">getWorldPosition</a> (void) const </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_1StaticGeometry_1_1GeometryBucketa10"></a><br><br></td></tr>
54<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa11">getSquaredViewDepth</a> (const <a class="el" href="classOgre_1_1Camera.html">Camera</a> *cam) const </td></tr>
55
56<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the camera-relative squared depth of this renderable.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketa11"></a><br><br></td></tr>
57<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="namespaceOgre.html#a59">LightList</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa12">getLights</a> (void) const </td></tr>
58
59<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_1StaticGeometry_1_1GeometryBucketa12"></a><br><br></td></tr>
60<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa13">getCastsShadows</a> (void) const </td></tr>
61
62<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Method which reports whether this renderable would normally cast a shadow.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketa13"></a><br><br></td></tr>
63<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa14">assign</a> (<a class="el" href="structOgre_1_1StaticGeometry_1_1QueuedGeometry.html">QueuedGeometry</a> *qsm)</td></tr>
64
65<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Try to assign geometry to this bucket.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketa14"></a><br><br></td></tr>
66<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa15">build</a> (bool stencilShadows)</td></tr>
67
68<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Build.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketa15"></a><br><br></td></tr>
69<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketa16">dump</a> (std::ofstream &amp;of) const </td></tr>
70
71<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Dump contents for diagnostics.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketa16"></a><br><br></td></tr>
72<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_1WireBoundingBoxa43">getNumWorldTransforms</a> (void) const </td></tr>
73
74<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of world transform matrices this renderable requires.  <a href="#Ogre_1_1WireBoundingBoxa43"></a><br><br></td></tr>
75<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_1WireBoundingBoxa44">useIdentityProjection</a> (void) const </td></tr>
76
77<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether or not to use an 'identity' projection.  <a href="#Ogre_1_1WireBoundingBoxa44"></a><br><br></td></tr>
78<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_1WireBoundingBoxa45">useIdentityView</a> (void) const </td></tr>
79
80<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether or not to use an 'identity' projection.  <a href="#Ogre_1_1WireBoundingBoxa45"></a><br><br></td></tr>
81<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="namespaceOgre.html#a646">SceneDetailLevel</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa46">getRenderDetail</a> () const </td></tr>
82
83<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the preferred rasterisation mode of this renderable.  <a href="#Ogre_1_1WireBoundingBoxa46"></a><br><br></td></tr>
84<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_1WireBoundingBoxa47">getNormaliseNormals</a> (void) const </td></tr>
85
86<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_1WireBoundingBoxa47"></a><br><br></td></tr>
87<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const <a class="el" href="namespaceOgre.html#a410">PlaneList</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa48">getClipPlanes</a> () const </td></tr>
88
89<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_1WireBoundingBoxa50">setCustomParameter</a> (size_t index, const <a class="el" href="classOgre_1_1Vector4.html">Vector4</a> &amp;value)</td></tr>
90
91<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_1WireBoundingBoxa50"></a><br><br></td></tr>
92<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_1WireBoundingBoxa51">getCustomParameter</a> (size_t index) const </td></tr>
93
94<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_1WireBoundingBoxa51"></a><br><br></td></tr>
95<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_1WireBoundingBoxa52">_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> *<a class="el" href="OgreGLPrerequisites_8h.html#a74">params</a>) const </td></tr>
96
97<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_1WireBoundingBoxa52"></a><br><br></td></tr>
98<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_1WireBoundingBoxa53">setRenderDetailOverrideable</a> (bool override)</td></tr>
99
100<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_1WireBoundingBoxa53"></a><br><br></td></tr>
101<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_1WireBoundingBoxa54">getRenderDetailOverrideable</a> (void) const </td></tr>
102
103<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_1WireBoundingBoxa54"></a><br><br></td></tr>
104<tr><td colspan=2><br><h2>Protected Types</h2></td></tr>
105<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::map&lt; size_t,<br>
106 <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_1WireBoundingBoxx0">CustomParameterMap</a></td></tr>
107
108<tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr>
109<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;typename T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketb0">copyIndexes</a> (const T *src, T *dst, size_t count, size_t indexOffset)</td></tr>
110
111<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
112<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1StaticGeometry.html#Ogre_1_1StaticGeometryw4">QueuedGeometryList</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp0">mQueuedGeometry</a></td></tr>
113
114<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Geometry which has been queued up pre-build (not for deallocation).  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketp0"></a><br><br></td></tr>
115<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1StaticGeometry_1_1MaterialBucket.html">MaterialBucket</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp1">mParent</a></td></tr>
116
117<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pointer to parent bucket.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketp1"></a><br><br></td></tr>
118<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a426">String</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp2">mFormatString</a></td></tr>
119
120<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">String identifying the vertex / index format.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketp2"></a><br><br></td></tr>
121<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1VertexData.html">VertexData</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp3">mVertexData</a></td></tr>
122
123<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vertex information, includes current number of vertices committed to be a part of this bucket.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketp3"></a><br><br></td></tr>
124<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1IndexData.html">IndexData</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp4">mIndexData</a></td></tr>
125
126<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Index information, includes index type which limits the max number of vertices which are allowed in one bucket.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketp4"></a><br><br></td></tr>
127<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1HardwareIndexBuffer.html#Ogre_1_1HardwareIndexBufferw2">HardwareIndexBuffer::IndexType</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp5">mIndexType</a></td></tr>
128
129<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of indexes.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketp5"></a><br><br></td></tr>
130<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp6">mMaxVertexIndex</a></td></tr>
131
132<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum vertex indexable.  <a href="#Ogre_1_1StaticGeometry_1_1GeometryBucketp6"></a><br><br></td></tr>
133<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxx0">CustomParameterMap</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxp20">mCustomParameters</a></td></tr>
134
135<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_1WireBoundingBoxp21">mRenderDetailOverrideable</a></td></tr>
136
137<tr><td colspan=2><br><h2>Static Protected Attributes</h2></td></tr>
138<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="namespaceOgre.html#a410">PlaneList</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxt1">msDummyPlaneList</a></td></tr>
139
140</table>
141<hr><a name="_details"></a><h2>Detailed Description</h2>
142A <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html">GeometryBucket</a> is a the lowest level bucket where geometry with the same vertex &amp; index format is stored.
143<p>
144It also acts as the renderable.
145<p>
146
147<p>
148Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00177">177</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.<hr><h2>Member Typedef Documentation</h2>
149<a class="anchor" name="Ogre_1_1WireBoundingBoxx0" doxytag="Ogre::StaticGeometry::GeometryBucket::CustomParameterMap" ></a><p>
150<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
151  <tr>
152    <td class="mdRow">
153      <table cellpadding="0" cellspacing="0" border="0">
154        <tr>
155          <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_1WireBoundingBoxx0">Ogre::Renderable::CustomParameterMap</a><code> [protected, inherited]</code>
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#l00251">251</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
171  </tr>
172</table>
173<hr><h2>Constructor &amp; Destructor Documentation</h2>
174<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa0" doxytag="Ogre::StaticGeometry::GeometryBucket::GeometryBucket" ></a><p>
175<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
176  <tr>
177    <td class="mdRow">
178      <table cellpadding="0" cellspacing="0" border="0">
179        <tr>
180          <td class="md" nowrap valign="top"> Ogre::StaticGeometry::GeometryBucket::GeometryBucket </td>
181          <td class="md" valign="top">(&nbsp;</td>
182          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1StaticGeometry_1_1MaterialBucket.html">MaterialBucket</a> *&nbsp;</td>
183          <td class="mdname" nowrap> <em>parent</em>, </td>
184        </tr>
185        <tr>
186          <td class="md" nowrap align="right"></td>
187          <td></td>
188          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a426">String</a> &amp;&nbsp;</td>
189          <td class="mdname" nowrap> <em>formatString</em>, </td>
190        </tr>
191        <tr>
192          <td class="md" nowrap align="right"></td>
193          <td></td>
194          <td class="md" nowrap>const <a class="el" href="classOgre_1_1VertexData.html">VertexData</a> *&nbsp;</td>
195          <td class="mdname" nowrap> <em>vData</em>, </td>
196        </tr>
197        <tr>
198          <td class="md" nowrap align="right"></td>
199          <td></td>
200          <td class="md" nowrap>const <a class="el" href="classOgre_1_1IndexData.html">IndexData</a> *&nbsp;</td>
201          <td class="mdname" nowrap> <em>iData</em></td>
202        </tr>
203        <tr>
204          <td></td>
205          <td class="md">)&nbsp;</td>
206          <td class="md" colspan="2"></td>
207        </tr>
208
209      </table>
210    </td>
211  </tr>
212</table>
213<table cellspacing=5 cellpadding=0 border=0>
214  <tr>
215    <td>
216      &nbsp;
217    </td>
218    <td>
219
220<p>
221    </td>
222  </tr>
223</table>
224<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa1" doxytag="Ogre::StaticGeometry::GeometryBucket::~GeometryBucket" ></a><p>
225<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
226  <tr>
227    <td class="mdRow">
228      <table cellpadding="0" cellspacing="0" border="0">
229        <tr>
230          <td class="md" nowrap valign="top"> virtual Ogre::StaticGeometry::GeometryBucket::~<a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html">GeometryBucket</a> </td>
231          <td class="md" valign="top">(&nbsp;</td>
232          <td class="mdname1" valign="top" nowrap>          </td>
233          <td class="md" valign="top">&nbsp;)&nbsp;</td>
234          <td class="md" nowrap><code> [virtual]</code></td>
235        </tr>
236
237      </table>
238    </td>
239  </tr>
240</table>
241<table cellspacing=5 cellpadding=0 border=0>
242  <tr>
243    <td>
244      &nbsp;
245    </td>
246    <td>
247
248<p>
249    </td>
250  </tr>
251</table>
252<hr><h2>Member Function Documentation</h2>
253<a class="anchor" name="Ogre_1_1WireBoundingBoxa52" doxytag="Ogre::StaticGeometry::GeometryBucket::_updateCustomGpuParameter" ></a><p>
254<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
255  <tr>
256    <td class="mdRow">
257      <table cellpadding="0" cellspacing="0" border="0">
258        <tr>
259          <td class="md" nowrap valign="top"> virtual void Ogre::Renderable::_updateCustomGpuParameter </td>
260          <td class="md" valign="top">(&nbsp;</td>
261          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1GpuProgramParameters_1_1AutoConstantEntry.html">GpuProgramParameters::AutoConstantEntry</a> &amp;&nbsp;</td>
262          <td class="mdname" nowrap> <em>constantEntry</em>, </td>
263        </tr>
264        <tr>
265          <td class="md" nowrap align="right"></td>
266          <td></td>
267          <td class="md" nowrap><a class="el" href="classOgre_1_1GpuProgramParameters.html">GpuProgramParameters</a> *&nbsp;</td>
268          <td class="mdname" nowrap> <em>params</em></td>
269        </tr>
270        <tr>
271          <td></td>
272          <td class="md">)&nbsp;</td>
273          <td class="md" colspan="2"> const<code> [virtual, inherited]</code></td>
274        </tr>
275
276      </table>
277    </td>
278  </tr>
279</table>
280<table cellspacing=5 cellpadding=0 border=0>
281  <tr>
282    <td>
283      &nbsp;
284    </td>
285    <td>
286
287<p>
288Update 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.
289<p>
290<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>
291<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>
292<dl compact><dt><b>Parameters:</b></dt><dd>
293  <table border="0" cellspacing="2" cellpadding="0">
294    <tr><td valign=top><em>constantEntry</em>&nbsp;</td><td>The auto constant entry referring to the parameter being updated </td></tr>
295    <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>
296  </table>
297</dl>
298
299<p>
300Reimplemented in <a class="el" href="classOgre_1_1TerrainRenderable.html#Ogre_1_1TerrainRenderablea27">Ogre::TerrainRenderable</a>.
301<p>
302Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00219">219</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.
303<p>
304References <a class="el" href="OgreGpuProgram_8h-source.html#l00291">Ogre::GpuProgramParameters::AutoConstantEntry::data</a>, <a class="el" href="OgreGpuProgram_8h-source.html#l00288">Ogre::GpuProgramParameters::AutoConstantEntry::index</a>, and <a class="el" href="OgreGLPrerequisites_8h-source.html#l00208">params</a>.    </td>
305  </tr>
306</table>
307<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa14" doxytag="Ogre::StaticGeometry::GeometryBucket::assign" ></a><p>
308<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
309  <tr>
310    <td class="mdRow">
311      <table cellpadding="0" cellspacing="0" border="0">
312        <tr>
313          <td class="md" nowrap valign="top"> bool Ogre::StaticGeometry::GeometryBucket::assign </td>
314          <td class="md" valign="top">(&nbsp;</td>
315          <td class="md" nowrap valign="top"><a class="el" href="structOgre_1_1StaticGeometry_1_1QueuedGeometry.html">QueuedGeometry</a> *&nbsp;</td>
316          <td class="mdname1" valign="top" nowrap> <em>qsm</em>          </td>
317          <td class="md" valign="top">&nbsp;)&nbsp;</td>
318          <td class="md" nowrap></td>
319        </tr>
320
321      </table>
322    </td>
323  </tr>
324</table>
325<table cellspacing=5 cellpadding=0 border=0>
326  <tr>
327    <td>
328      &nbsp;
329    </td>
330    <td>
331
332<p>
333Try to assign geometry to this bucket.
334<p>
335<dl compact><dt><b>Returns:</b></dt><dd>false if there is no room left in this bucket</dd></dl>
336    </td>
337  </tr>
338</table>
339<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa15" doxytag="Ogre::StaticGeometry::GeometryBucket::build" ></a><p>
340<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
341  <tr>
342    <td class="mdRow">
343      <table cellpadding="0" cellspacing="0" border="0">
344        <tr>
345          <td class="md" nowrap valign="top"> void Ogre::StaticGeometry::GeometryBucket::build </td>
346          <td class="md" valign="top">(&nbsp;</td>
347          <td class="md" nowrap valign="top">bool&nbsp;</td>
348          <td class="mdname1" valign="top" nowrap> <em>stencilShadows</em>          </td>
349          <td class="md" valign="top">&nbsp;)&nbsp;</td>
350          <td class="md" nowrap></td>
351        </tr>
352
353      </table>
354    </td>
355  </tr>
356</table>
357<table cellspacing=5 cellpadding=0 border=0>
358  <tr>
359    <td>
360      &nbsp;
361    </td>
362    <td>
363
364<p>
365Build.
366<p>
367    </td>
368  </tr>
369</table>
370<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketb0" doxytag="Ogre::StaticGeometry::GeometryBucket::copyIndexes" ></a><p>
371<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
372  <tr>
373    <td class="mdRow">
374      <table cellpadding="0" cellspacing="0" border="0">
375        <tr>
376          <td class="md" colspan="4">
377template&lt;typename T&gt; </td>
378        </tr>
379        <tr>
380          <td class="md" nowrap valign="top"> void Ogre::StaticGeometry::GeometryBucket::copyIndexes </td>
381          <td class="md" valign="top">(&nbsp;</td>
382          <td class="md" nowrap valign="top">const T *&nbsp;</td>
383          <td class="mdname" nowrap> <em>src</em>, </td>
384        </tr>
385        <tr>
386          <td class="md" nowrap align="right"></td>
387          <td></td>
388          <td class="md" nowrap>T *&nbsp;</td>
389          <td class="mdname" nowrap> <em>dst</em>, </td>
390        </tr>
391        <tr>
392          <td class="md" nowrap align="right"></td>
393          <td></td>
394          <td class="md" nowrap>size_t&nbsp;</td>
395          <td class="mdname" nowrap> <em>count</em>, </td>
396        </tr>
397        <tr>
398          <td class="md" nowrap align="right"></td>
399          <td></td>
400          <td class="md" nowrap>size_t&nbsp;</td>
401          <td class="mdname" nowrap> <em>indexOffset</em></td>
402        </tr>
403        <tr>
404          <td></td>
405          <td class="md">)&nbsp;</td>
406          <td class="md" colspan="2"><code> [protected]</code></td>
407        </tr>
408
409      </table>
410    </td>
411  </tr>
412</table>
413<table cellspacing=5 cellpadding=0 border=0>
414  <tr>
415    <td>
416      &nbsp;
417    </td>
418    <td>
419
420<p>
421
422<p>
423Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00198">198</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.    </td>
424  </tr>
425</table>
426<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa16" doxytag="Ogre::StaticGeometry::GeometryBucket::dump" ></a><p>
427<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
428  <tr>
429    <td class="mdRow">
430      <table cellpadding="0" cellspacing="0" border="0">
431        <tr>
432          <td class="md" nowrap valign="top"> void Ogre::StaticGeometry::GeometryBucket::dump </td>
433          <td class="md" valign="top">(&nbsp;</td>
434          <td class="md" nowrap valign="top">std::ofstream &amp;&nbsp;</td>
435          <td class="mdname1" valign="top" nowrap> <em>of</em>          </td>
436          <td class="md" valign="top">&nbsp;)&nbsp;</td>
437          <td class="md" nowrap> const</td>
438        </tr>
439
440      </table>
441    </td>
442  </tr>
443</table>
444<table cellspacing=5 cellpadding=0 border=0>
445  <tr>
446    <td>
447      &nbsp;
448    </td>
449    <td>
450
451<p>
452Dump contents for diagnostics.
453<p>
454    </td>
455  </tr>
456</table>
457<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa13" doxytag="Ogre::StaticGeometry::GeometryBucket::getCastsShadows" ></a><p>
458<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
459  <tr>
460    <td class="mdRow">
461      <table cellpadding="0" cellspacing="0" border="0">
462        <tr>
463          <td class="md" nowrap valign="top"> bool Ogre::StaticGeometry::GeometryBucket::getCastsShadows </td>
464          <td class="md" valign="top">(&nbsp;</td>
465          <td class="md" nowrap valign="top">void&nbsp;</td>
466          <td class="mdname1" valign="top" nowrap>          </td>
467          <td class="md" valign="top">&nbsp;)&nbsp;</td>
468          <td class="md" nowrap> const<code> [virtual]</code></td>
469        </tr>
470
471      </table>
472    </td>
473  </tr>
474</table>
475<table cellspacing=5 cellpadding=0 border=0>
476  <tr>
477    <td>
478      &nbsp;
479    </td>
480    <td>
481
482<p>
483Method which reports whether this renderable would normally cast a shadow.
484<p>
485<dl compact><dt><b>Remarks:</b></dt><dd>Subclasses should override this if they could have been used to generate a shadow. </dd></dl>
486
487<p>
488Reimplemented from <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa49">Ogre::Renderable</a>.    </td>
489  </tr>
490</table>
491<a class="anchor" name="Ogre_1_1WireBoundingBoxa48" doxytag="Ogre::StaticGeometry::GeometryBucket::getClipPlanes" ></a><p>
492<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
493  <tr>
494    <td class="mdRow">
495      <table cellpadding="0" cellspacing="0" border="0">
496        <tr>
497          <td class="md" nowrap valign="top"> virtual const <a class="el" href="namespaceOgre.html#a410">PlaneList</a>&amp; Ogre::Renderable::getClipPlanes </td>
498          <td class="md" valign="top">(&nbsp;</td>
499          <td class="mdname1" valign="top" nowrap>          </td>
500          <td class="md" valign="top">&nbsp;)&nbsp;</td>
501          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
502        </tr>
503
504      </table>
505    </td>
506  </tr>
507</table>
508<table cellspacing=5 cellpadding=0 border=0>
509  <tr>
510    <td>
511      &nbsp;
512    </td>
513    <td>
514
515<p>
516
517<p>
518Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00146">146</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.
519<p>
520References <a class="el" href="OgrePlane_8h-source.html#l00100">Ogre::PlaneList</a>.    </td>
521  </tr>
522</table>
523<a class="anchor" name="Ogre_1_1WireBoundingBoxa51" doxytag="Ogre::StaticGeometry::GeometryBucket::getCustomParameter" ></a><p>
524<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
525  <tr>
526    <td class="mdRow">
527      <table cellpadding="0" cellspacing="0" border="0">
528        <tr>
529          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1Vector4.html">Vector4</a>&amp; Ogre::Renderable::getCustomParameter </td>
530          <td class="md" valign="top">(&nbsp;</td>
531          <td class="md" nowrap valign="top">size_t&nbsp;</td>
532          <td class="mdname1" valign="top" nowrap> <em>index</em>          </td>
533          <td class="md" valign="top">&nbsp;)&nbsp;</td>
534          <td class="md" nowrap> const<code> [inherited]</code></td>
535        </tr>
536
537      </table>
538    </td>
539  </tr>
540</table>
541<table cellspacing=5 cellpadding=0 border=0>
542  <tr>
543    <td>
544      &nbsp;
545    </td>
546    <td>
547
548<p>
549Gets the custom value associated with this <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> at the given index.
550<p>
551<dl compact><dt><b>Parameters:</b></dt><dd>
552  <table border="0" cellspacing="2" cellpadding="0">
553    <tr><td valign=top><em>@see</em>&nbsp;</td><td>setCustomParaemter for full details. </td></tr>
554  </table>
555</dl>
556
557<p>
558Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00180">180</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.
559<p>
560References <a class="el" href="OgreException_8h-source.html#l00033">OGRE_EXCEPT</a>.    </td>
561  </tr>
562</table>
563<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa4" doxytag="Ogre::StaticGeometry::GeometryBucket::getIndexData" ></a><p>
564<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
565  <tr>
566    <td class="mdRow">
567      <table cellpadding="0" cellspacing="0" border="0">
568        <tr>
569          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1IndexData.html">IndexData</a>* Ogre::StaticGeometry::GeometryBucket::getIndexData </td>
570          <td class="md" valign="top">(&nbsp;</td>
571          <td class="md" nowrap valign="top">void&nbsp;</td>
572          <td class="mdname1" valign="top" nowrap>          </td>
573          <td class="md" valign="top">&nbsp;)&nbsp;</td>
574          <td class="md" nowrap> const</td>
575        </tr>
576
577      </table>
578    </td>
579  </tr>
580</table>
581<table cellspacing=5 cellpadding=0 border=0>
582  <tr>
583    <td>
584      &nbsp;
585    </td>
586    <td>
587
588<p>
589Get the index data for this geometry.
590<p>
591
592<p>
593Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00220">220</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.    </td>
594  </tr>
595</table>
596<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa12" doxytag="Ogre::StaticGeometry::GeometryBucket::getLights" ></a><p>
597<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
598  <tr>
599    <td class="mdRow">
600      <table cellpadding="0" cellspacing="0" border="0">
601        <tr>
602          <td class="md" nowrap valign="top"> const <a class="el" href="namespaceOgre.html#a59">LightList</a>&amp; Ogre::StaticGeometry::GeometryBucket::getLights </td>
603          <td class="md" valign="top">(&nbsp;</td>
604          <td class="md" nowrap valign="top">void&nbsp;</td>
605          <td class="mdname1" valign="top" nowrap>          </td>
606          <td class="md" valign="top">&nbsp;)&nbsp;</td>
607          <td class="md" nowrap> const<code> [virtual]</code></td>
608        </tr>
609
610      </table>
611    </td>
612  </tr>
613</table>
614<table cellspacing=5 cellpadding=0 border=0>
615  <tr>
616    <td>
617      &nbsp;
618    </td>
619    <td>
620
621<p>
622Gets a list of lights, ordered relative to how close they are to this renderable.
623<p>
624<dl compact><dt><b>Remarks:</b></dt><dd>Directional lights, which have no position, will always be first on this list. </dd></dl>
625
626<p>
627Implements <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea14">Ogre::Renderable</a>.    </td>
628  </tr>
629</table>
630<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa5" doxytag="Ogre::StaticGeometry::GeometryBucket::getMaterial" ></a><p>
631<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
632  <tr>
633    <td class="mdRow">
634      <table cellpadding="0" cellspacing="0" border="0">
635        <tr>
636          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1MaterialPtr.html">MaterialPtr</a>&amp; Ogre::StaticGeometry::GeometryBucket::getMaterial </td>
637          <td class="md" valign="top">(&nbsp;</td>
638          <td class="md" nowrap valign="top">void&nbsp;</td>
639          <td class="mdname1" valign="top" nowrap>          </td>
640          <td class="md" valign="top">&nbsp;)&nbsp;</td>
641          <td class="md" nowrap> const<code> [virtual]</code></td>
642        </tr>
643
644      </table>
645    </td>
646  </tr>
647</table>
648<table cellspacing=5 cellpadding=0 border=0>
649  <tr>
650    <td>
651      &nbsp;
652    </td>
653    <td>
654
655<p>
656<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>
657 
658<p>
659
660<p>
661Implements <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea2">Ogre::Renderable</a>.    </td>
662  </tr>
663</table>
664<a class="anchor" name="Ogre_1_1WireBoundingBoxa47" doxytag="Ogre::StaticGeometry::GeometryBucket::getNormaliseNormals" ></a><p>
665<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
666  <tr>
667    <td class="mdRow">
668      <table cellpadding="0" cellspacing="0" border="0">
669        <tr>
670          <td class="md" nowrap valign="top"> virtual bool Ogre::Renderable::getNormaliseNormals </td>
671          <td class="md" valign="top">(&nbsp;</td>
672          <td class="md" nowrap valign="top">void&nbsp;</td>
673          <td class="mdname1" valign="top" nowrap>          </td>
674          <td class="md" valign="top">&nbsp;)&nbsp;</td>
675          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
676        </tr>
677
678      </table>
679    </td>
680  </tr>
681</table>
682<table cellspacing=5 cellpadding=0 border=0>
683  <tr>
684    <td>
685      &nbsp;
686    </td>
687    <td>
688
689<p>
690Returns whether or not this <a class="el" href="classOgre_1_1Renderable.html">Renderable</a> wishes the hardware to normalise normals.
691<p>
692
693<p>
694Reimplemented in <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya11">Ogre::SubEntity</a>.
695<p>
696Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00138">138</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
697  </tr>
698</table>
699<a class="anchor" name="Ogre_1_1WireBoundingBoxa43" doxytag="Ogre::StaticGeometry::GeometryBucket::getNumWorldTransforms" ></a><p>
700<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
701  <tr>
702    <td class="mdRow">
703      <table cellpadding="0" cellspacing="0" border="0">
704        <tr>
705          <td class="md" nowrap valign="top"> virtual unsigned short Ogre::Renderable::getNumWorldTransforms </td>
706          <td class="md" valign="top">(&nbsp;</td>
707          <td class="md" nowrap valign="top">void&nbsp;</td>
708          <td class="mdname1" valign="top" nowrap>          </td>
709          <td class="md" valign="top">&nbsp;)&nbsp;</td>
710          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
711        </tr>
712
713      </table>
714    </td>
715  </tr>
716</table>
717<table cellspacing=5 cellpadding=0 border=0>
718  <tr>
719    <td>
720      &nbsp;
721    </td>
722    <td>
723
724<p>
725Returns the number of world transform matrices this renderable requires.
726<p>
727<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>
728
729<p>
730Reimplemented 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>.
731<p>
732Definition 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>
733  </tr>
734</table>
735<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa2" doxytag="Ogre::StaticGeometry::GeometryBucket::getParent" ></a><p>
736<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
737  <tr>
738    <td class="mdRow">
739      <table cellpadding="0" cellspacing="0" border="0">
740        <tr>
741          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1StaticGeometry_1_1MaterialBucket.html">MaterialBucket</a>* Ogre::StaticGeometry::GeometryBucket::getParent </td>
742          <td class="md" valign="top">(&nbsp;</td>
743          <td class="md" nowrap valign="top">void&nbsp;</td>
744          <td class="mdname1" valign="top" nowrap>          </td>
745          <td class="md" valign="top">&nbsp;)&nbsp;</td>
746          <td class="md" nowrap></td>
747        </tr>
748
749      </table>
750    </td>
751  </tr>
752</table>
753<table cellspacing=5 cellpadding=0 border=0>
754  <tr>
755    <td>
756      &nbsp;
757    </td>
758    <td>
759
760<p>
761
762<p>
763Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00216">216</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.    </td>
764  </tr>
765</table>
766<a class="anchor" name="Ogre_1_1WireBoundingBoxa46" doxytag="Ogre::StaticGeometry::GeometryBucket::getRenderDetail" ></a><p>
767<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
768  <tr>
769    <td class="mdRow">
770      <table cellpadding="0" cellspacing="0" border="0">
771        <tr>
772          <td class="md" nowrap valign="top"> virtual <a class="el" href="namespaceOgre.html#a646">SceneDetailLevel</a> Ogre::Renderable::getRenderDetail </td>
773          <td class="md" valign="top">(&nbsp;</td>
774          <td class="mdname1" valign="top" nowrap>          </td>
775          <td class="md" valign="top">&nbsp;)&nbsp;</td>
776          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
777        </tr>
778
779      </table>
780    </td>
781  </tr>
782</table>
783<table cellspacing=5 cellpadding=0 border=0>
784  <tr>
785    <td>
786      &nbsp;
787    </td>
788    <td>
789
790<p>
791Returns the preferred rasterisation mode of this renderable.
792<p>
793
794<p>
795Reimplemented in <a class="el" href="classOgre_1_1SubEntity.html#Ogre_1_1SubEntitya15">Ogre::SubEntity</a>.
796<p>
797Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00135">135</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.
798<p>
799References <a class="el" href="OgreCommon_8h-source.html#l00148">Ogre::SceneDetailLevel</a>, and <a class="el" href="namespaceOgre.html#a646a102">Ogre::SDL_SOLID</a>.    </td>
800  </tr>
801</table>
802<a class="anchor" name="Ogre_1_1WireBoundingBoxa54" doxytag="Ogre::StaticGeometry::GeometryBucket::getRenderDetailOverrideable" ></a><p>
803<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
804  <tr>
805    <td class="mdRow">
806      <table cellpadding="0" cellspacing="0" border="0">
807        <tr>
808          <td class="md" nowrap valign="top"> virtual bool Ogre::Renderable::getRenderDetailOverrideable </td>
809          <td class="md" valign="top">(&nbsp;</td>
810          <td class="md" nowrap valign="top">void&nbsp;</td>
811          <td class="mdname1" valign="top" nowrap>          </td>
812          <td class="md" valign="top">&nbsp;)&nbsp;</td>
813          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
814        </tr>
815
816      </table>
817    </td>
818  </tr>
819</table>
820<table cellspacing=5 cellpadding=0 border=0>
821  <tr>
822    <td>
823      &nbsp;
824    </td>
825    <td>
826
827<p>
828Gets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting.
829<p>
830
831<p>
832Reimplemented in <a class="el" href="classOgre_1_1BorderRenderable.html#Ogre_1_1BorderRenderablea11">Ogre::BorderRenderable</a>.
833<p>
834Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00243">243</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
835  </tr>
836</table>
837<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa7" doxytag="Ogre::StaticGeometry::GeometryBucket::getRenderOperation" ></a><p>
838<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
839  <tr>
840    <td class="mdRow">
841      <table cellpadding="0" cellspacing="0" border="0">
842        <tr>
843          <td class="md" nowrap valign="top"> void Ogre::StaticGeometry::GeometryBucket::getRenderOperation </td>
844          <td class="md" valign="top">(&nbsp;</td>
845          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1RenderOperation.html">RenderOperation</a> &amp;&nbsp;</td>
846          <td class="mdname1" valign="top" nowrap> <em>op</em>          </td>
847          <td class="md" valign="top">&nbsp;)&nbsp;</td>
848          <td class="md" nowrap><code> [virtual]</code></td>
849        </tr>
850
851      </table>
852    </td>
853  </tr>
854</table>
855<table cellspacing=5 cellpadding=0 border=0>
856  <tr>
857    <td>
858      &nbsp;
859    </td>
860    <td>
861
862<p>
863Gets the render operation required to send this object to the frame buffer.
864<p>
865
866<p>
867Implements <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea4">Ogre::Renderable</a>.    </td>
868  </tr>
869</table>
870<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa11" doxytag="Ogre::StaticGeometry::GeometryBucket::getSquaredViewDepth" ></a><p>
871<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
872  <tr>
873    <td class="mdRow">
874      <table cellpadding="0" cellspacing="0" border="0">
875        <tr>
876          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a420">Real</a> Ogre::StaticGeometry::GeometryBucket::getSquaredViewDepth </td>
877          <td class="md" valign="top">(&nbsp;</td>
878          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Camera.html">Camera</a> *&nbsp;</td>
879          <td class="mdname1" valign="top" nowrap> <em>cam</em>          </td>
880          <td class="md" valign="top">&nbsp;)&nbsp;</td>
881          <td class="md" nowrap> const<code> [virtual]</code></td>
882        </tr>
883
884      </table>
885    </td>
886  </tr>
887</table>
888<table cellspacing=5 cellpadding=0 border=0>
889  <tr>
890    <td>
891      &nbsp;
892    </td>
893    <td>
894
895<p>
896Returns the camera-relative squared depth of this renderable.
897<p>
898<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>
899
900<p>
901Implements <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1SimpleRenderablea47">Ogre::Renderable</a>.    </td>
902  </tr>
903</table>
904<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa6" doxytag="Ogre::StaticGeometry::GeometryBucket::getTechnique" ></a><p>
905<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
906  <tr>
907    <td class="mdRow">
908      <table cellpadding="0" cellspacing="0" border="0">
909        <tr>
910          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Technique.html">Technique</a>* Ogre::StaticGeometry::GeometryBucket::getTechnique </td>
911          <td class="md" valign="top">(&nbsp;</td>
912          <td class="md" nowrap valign="top">void&nbsp;</td>
913          <td class="mdname1" valign="top" nowrap>          </td>
914          <td class="md" valign="top">&nbsp;)&nbsp;</td>
915          <td class="md" nowrap> const<code> [virtual]</code></td>
916        </tr>
917
918      </table>
919    </td>
920  </tr>
921</table>
922<table cellspacing=5 cellpadding=0 border=0>
923  <tr>
924    <td>
925      &nbsp;
926    </td>
927    <td>
928
929<p>
930Retrieves 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.
931<p>
932<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>
933
934<p>
935Reimplemented from <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxa42">Ogre::Renderable</a>.    </td>
936  </tr>
937</table>
938<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa3" doxytag="Ogre::StaticGeometry::GeometryBucket::getVertexData" ></a><p>
939<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
940  <tr>
941    <td class="mdRow">
942      <table cellpadding="0" cellspacing="0" border="0">
943        <tr>
944          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1VertexData.html">VertexData</a>* Ogre::StaticGeometry::GeometryBucket::getVertexData </td>
945          <td class="md" valign="top">(&nbsp;</td>
946          <td class="md" nowrap valign="top">void&nbsp;</td>
947          <td class="mdname1" valign="top" nowrap>          </td>
948          <td class="md" valign="top">&nbsp;)&nbsp;</td>
949          <td class="md" nowrap> const</td>
950        </tr>
951
952      </table>
953    </td>
954  </tr>
955</table>
956<table cellspacing=5 cellpadding=0 border=0>
957  <tr>
958    <td>
959      &nbsp;
960    </td>
961    <td>
962
963<p>
964Get the vertex data for this geometry.
965<p>
966
967<p>
968Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00218">218</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.    </td>
969  </tr>
970</table>
971<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa9" doxytag="Ogre::StaticGeometry::GeometryBucket::getWorldOrientation" ></a><p>
972<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
973  <tr>
974    <td class="mdRow">
975      <table cellpadding="0" cellspacing="0" border="0">
976        <tr>
977          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1Quaternion.html">Quaternion</a>&amp; Ogre::StaticGeometry::GeometryBucket::getWorldOrientation </td>
978          <td class="md" valign="top">(&nbsp;</td>
979          <td class="md" nowrap valign="top">void&nbsp;</td>
980          <td class="mdname1" valign="top" nowrap>          </td>
981          <td class="md" valign="top">&nbsp;)&nbsp;</td>
982          <td class="md" nowrap> const<code> [virtual]</code></td>
983        </tr>
984
985      </table>
986    </td>
987  </tr>
988</table>
989<table cellspacing=5 cellpadding=0 border=0>
990  <tr>
991    <td>
992      &nbsp;
993    </td>
994    <td>
995
996<p>
997Gets 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.
998<p>
999
1000<p>
1001Implements <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea6">Ogre::Renderable</a>.    </td>
1002  </tr>
1003</table>
1004<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa10" doxytag="Ogre::StaticGeometry::GeometryBucket::getWorldPosition" ></a><p>
1005<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1006  <tr>
1007    <td class="mdRow">
1008      <table cellpadding="0" cellspacing="0" border="0">
1009        <tr>
1010          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a>&amp; Ogre::StaticGeometry::GeometryBucket::getWorldPosition </td>
1011          <td class="md" valign="top">(&nbsp;</td>
1012          <td class="md" nowrap valign="top">void&nbsp;</td>
1013          <td class="mdname1" valign="top" nowrap>          </td>
1014          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1015          <td class="md" nowrap> const<code> [virtual]</code></td>
1016        </tr>
1017
1018      </table>
1019    </td>
1020  </tr>
1021</table>
1022<table cellspacing=5 cellpadding=0 border=0>
1023  <tr>
1024    <td>
1025      &nbsp;
1026    </td>
1027    <td>
1028
1029<p>
1030Gets 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.
1031<p>
1032
1033<p>
1034Implements <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea7">Ogre::Renderable</a>.    </td>
1035  </tr>
1036</table>
1037<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketa8" doxytag="Ogre::StaticGeometry::GeometryBucket::getWorldTransforms" ></a><p>
1038<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1039  <tr>
1040    <td class="mdRow">
1041      <table cellpadding="0" cellspacing="0" border="0">
1042        <tr>
1043          <td class="md" nowrap valign="top"> void Ogre::StaticGeometry::GeometryBucket::getWorldTransforms </td>
1044          <td class="md" valign="top">(&nbsp;</td>
1045          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> *&nbsp;</td>
1046          <td class="mdname1" valign="top" nowrap> <em>xform</em>          </td>
1047          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1048          <td class="md" nowrap> const<code> [virtual]</code></td>
1049        </tr>
1050
1051      </table>
1052    </td>
1053  </tr>
1054</table>
1055<table cellspacing=5 cellpadding=0 border=0>
1056  <tr>
1057    <td>
1058      &nbsp;
1059    </td>
1060    <td>
1061
1062<p>
1063Gets the world transform matrix / matrices for this renderable object.
1064<p>
1065<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>
1066<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>
1067
1068<p>
1069Implements <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1Renderablea5">Ogre::Renderable</a>.    </td>
1070  </tr>
1071</table>
1072<a class="anchor" name="Ogre_1_1WireBoundingBoxa50" doxytag="Ogre::StaticGeometry::GeometryBucket::setCustomParameter" ></a><p>
1073<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1074  <tr>
1075    <td class="mdRow">
1076      <table cellpadding="0" cellspacing="0" border="0">
1077        <tr>
1078          <td class="md" nowrap valign="top"> void Ogre::Renderable::setCustomParameter </td>
1079          <td class="md" valign="top">(&nbsp;</td>
1080          <td class="md" nowrap valign="top">size_t&nbsp;</td>
1081          <td class="mdname" nowrap> <em>index</em>, </td>
1082        </tr>
1083        <tr>
1084          <td class="md" nowrap align="right"></td>
1085          <td></td>
1086          <td class="md" nowrap>const <a class="el" href="classOgre_1_1Vector4.html">Vector4</a> &amp;&nbsp;</td>
1087          <td class="mdname" nowrap> <em>value</em></td>
1088        </tr>
1089        <tr>
1090          <td></td>
1091          <td class="md">)&nbsp;</td>
1092          <td class="md" colspan="2"><code> [inherited]</code></td>
1093        </tr>
1094
1095      </table>
1096    </td>
1097  </tr>
1098</table>
1099<table cellspacing=5 cellpadding=0 border=0>
1100  <tr>
1101    <td>
1102      &nbsp;
1103    </td>
1104    <td>
1105
1106<p>
1107Sets 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.
1108<p>
1109<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>
1110<dl compact><dt><b>Parameters:</b></dt><dd>
1111  <table border="0" cellspacing="2" cellpadding="0">
1112    <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>
1113    <tr><td valign=top><em>value</em>&nbsp;</td><td>The value to associate. </td></tr>
1114  </table>
1115</dl>
1116
1117<p>
1118Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00171">171</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
1119  </tr>
1120</table>
1121<a class="anchor" name="Ogre_1_1WireBoundingBoxa53" doxytag="Ogre::StaticGeometry::GeometryBucket::setRenderDetailOverrideable" ></a><p>
1122<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1123  <tr>
1124    <td class="mdRow">
1125      <table cellpadding="0" cellspacing="0" border="0">
1126        <tr>
1127          <td class="md" nowrap valign="top"> virtual void Ogre::Renderable::setRenderDetailOverrideable </td>
1128          <td class="md" valign="top">(&nbsp;</td>
1129          <td class="md" nowrap valign="top">bool&nbsp;</td>
1130          <td class="mdname1" valign="top" nowrap> <em>override</em>          </td>
1131          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1132          <td class="md" nowrap><code> [virtual, inherited]</code></td>
1133        </tr>
1134
1135      </table>
1136    </td>
1137  </tr>
1138</table>
1139<table cellspacing=5 cellpadding=0 border=0>
1140  <tr>
1141    <td>
1142      &nbsp;
1143    </td>
1144    <td>
1145
1146<p>
1147Sets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting.
1148<p>
1149<dl compact><dt><b>Parameters:</b></dt><dd>
1150  <table border="0" cellspacing="2" cellpadding="0">
1151    <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>
1152  </table>
1153</dl>
1154
1155<p>
1156Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00235">235</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
1157  </tr>
1158</table>
1159<a class="anchor" name="Ogre_1_1WireBoundingBoxa44" doxytag="Ogre::StaticGeometry::GeometryBucket::useIdentityProjection" ></a><p>
1160<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1161  <tr>
1162    <td class="mdRow">
1163      <table cellpadding="0" cellspacing="0" border="0">
1164        <tr>
1165          <td class="md" nowrap valign="top"> virtual bool Ogre::Renderable::useIdentityProjection </td>
1166          <td class="md" valign="top">(&nbsp;</td>
1167          <td class="md" nowrap valign="top">void&nbsp;</td>
1168          <td class="mdname1" valign="top" nowrap>          </td>
1169          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1170          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
1171        </tr>
1172
1173      </table>
1174    </td>
1175  </tr>
1176</table>
1177<table cellspacing=5 cellpadding=0 border=0>
1178  <tr>
1179    <td>
1180      &nbsp;
1181    </td>
1182    <td>
1183
1184<p>
1185Returns whether or not to use an 'identity' projection.
1186<p>
1187<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>
1188
1189<p>
1190Reimplemented 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>.
1191<p>
1192Definition 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>
1193  </tr>
1194</table>
1195<a class="anchor" name="Ogre_1_1WireBoundingBoxa45" doxytag="Ogre::StaticGeometry::GeometryBucket::useIdentityView" ></a><p>
1196<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1197  <tr>
1198    <td class="mdRow">
1199      <table cellpadding="0" cellspacing="0" border="0">
1200        <tr>
1201          <td class="md" nowrap valign="top"> virtual bool Ogre::Renderable::useIdentityView </td>
1202          <td class="md" valign="top">(&nbsp;</td>
1203          <td class="md" nowrap valign="top">void&nbsp;</td>
1204          <td class="mdname1" valign="top" nowrap>          </td>
1205          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1206          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
1207        </tr>
1208
1209      </table>
1210    </td>
1211  </tr>
1212</table>
1213<table cellspacing=5 cellpadding=0 border=0>
1214  <tr>
1215    <td>
1216      &nbsp;
1217    </td>
1218    <td>
1219
1220<p>
1221Returns whether or not to use an 'identity' projection.
1222<p>
1223<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>
1224
1225<p>
1226Reimplemented 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>.
1227<p>
1228Definition 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>
1229  </tr>
1230</table>
1231<hr><h2>Member Data Documentation</h2>
1232<a class="anchor" name="Ogre_1_1WireBoundingBoxp20" doxytag="Ogre::StaticGeometry::GeometryBucket::mCustomParameters" ></a><p>
1233<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1234  <tr>
1235    <td class="mdRow">
1236      <table cellpadding="0" cellspacing="0" border="0">
1237        <tr>
1238          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxx0">CustomParameterMap</a> <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxp20">Ogre::Renderable::mCustomParameters</a><code> [protected, inherited]</code>
1239      </table>
1240    </td>
1241  </tr>
1242</table>
1243<table cellspacing=5 cellpadding=0 border=0>
1244  <tr>
1245    <td>
1246      &nbsp;
1247    </td>
1248    <td>
1249
1250<p>
1251
1252<p>
1253Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00252">252</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
1254  </tr>
1255</table>
1256<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketp2" doxytag="Ogre::StaticGeometry::GeometryBucket::mFormatString" ></a><p>
1257<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1258  <tr>
1259    <td class="mdRow">
1260      <table cellpadding="0" cellspacing="0" border="0">
1261        <tr>
1262          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a426">String</a> <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp2">Ogre::StaticGeometry::GeometryBucket::mFormatString</a><code> [protected]</code>
1263      </table>
1264    </td>
1265  </tr>
1266</table>
1267<table cellspacing=5 cellpadding=0 border=0>
1268  <tr>
1269    <td>
1270      &nbsp;
1271    </td>
1272    <td>
1273
1274<p>
1275String identifying the vertex / index format.
1276<p>
1277
1278<p>
1279Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00185">185</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.    </td>
1280  </tr>
1281</table>
1282<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketp4" doxytag="Ogre::StaticGeometry::GeometryBucket::mIndexData" ></a><p>
1283<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1284  <tr>
1285    <td class="mdRow">
1286      <table cellpadding="0" cellspacing="0" border="0">
1287        <tr>
1288          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1IndexData.html">IndexData</a>* <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp4">Ogre::StaticGeometry::GeometryBucket::mIndexData</a><code> [protected]</code>
1289      </table>
1290    </td>
1291  </tr>
1292</table>
1293<table cellspacing=5 cellpadding=0 border=0>
1294  <tr>
1295    <td>
1296      &nbsp;
1297    </td>
1298    <td>
1299
1300<p>
1301Index information, includes index type which limits the max number of vertices which are allowed in one bucket.
1302<p>
1303
1304<p>
1305Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00191">191</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.    </td>
1306  </tr>
1307</table>
1308<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketp5" doxytag="Ogre::StaticGeometry::GeometryBucket::mIndexType" ></a><p>
1309<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1310  <tr>
1311    <td class="mdRow">
1312      <table cellpadding="0" cellspacing="0" border="0">
1313        <tr>
1314          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1HardwareIndexBuffer.html#Ogre_1_1HardwareIndexBufferw2">HardwareIndexBuffer::IndexType</a> <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp5">Ogre::StaticGeometry::GeometryBucket::mIndexType</a><code> [protected]</code>
1315      </table>
1316    </td>
1317  </tr>
1318</table>
1319<table cellspacing=5 cellpadding=0 border=0>
1320  <tr>
1321    <td>
1322      &nbsp;
1323    </td>
1324    <td>
1325
1326<p>
1327Size of indexes.
1328<p>
1329
1330<p>
1331Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00193">193</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.    </td>
1332  </tr>
1333</table>
1334<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketp6" doxytag="Ogre::StaticGeometry::GeometryBucket::mMaxVertexIndex" ></a><p>
1335<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1336  <tr>
1337    <td class="mdRow">
1338      <table cellpadding="0" cellspacing="0" border="0">
1339        <tr>
1340          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp6">Ogre::StaticGeometry::GeometryBucket::mMaxVertexIndex</a><code> [protected]</code>
1341      </table>
1342    </td>
1343  </tr>
1344</table>
1345<table cellspacing=5 cellpadding=0 border=0>
1346  <tr>
1347    <td>
1348      &nbsp;
1349    </td>
1350    <td>
1351
1352<p>
1353Maximum vertex indexable.
1354<p>
1355
1356<p>
1357Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00195">195</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.    </td>
1358  </tr>
1359</table>
1360<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketp1" doxytag="Ogre::StaticGeometry::GeometryBucket::mParent" ></a><p>
1361<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1362  <tr>
1363    <td class="mdRow">
1364      <table cellpadding="0" cellspacing="0" border="0">
1365        <tr>
1366          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1StaticGeometry_1_1MaterialBucket.html">MaterialBucket</a>* <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp1">Ogre::StaticGeometry::GeometryBucket::mParent</a><code> [protected]</code>
1367      </table>
1368    </td>
1369  </tr>
1370</table>
1371<table cellspacing=5 cellpadding=0 border=0>
1372  <tr>
1373    <td>
1374      &nbsp;
1375    </td>
1376    <td>
1377
1378<p>
1379Pointer to parent bucket.
1380<p>
1381
1382<p>
1383Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00183">183</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.    </td>
1384  </tr>
1385</table>
1386<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketp0" doxytag="Ogre::StaticGeometry::GeometryBucket::mQueuedGeometry" ></a><p>
1387<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1388  <tr>
1389    <td class="mdRow">
1390      <table cellpadding="0" cellspacing="0" border="0">
1391        <tr>
1392          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1StaticGeometry.html#Ogre_1_1StaticGeometryw4">QueuedGeometryList</a> <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp0">Ogre::StaticGeometry::GeometryBucket::mQueuedGeometry</a><code> [protected]</code>
1393      </table>
1394    </td>
1395  </tr>
1396</table>
1397<table cellspacing=5 cellpadding=0 border=0>
1398  <tr>
1399    <td>
1400      &nbsp;
1401    </td>
1402    <td>
1403
1404<p>
1405Geometry which has been queued up pre-build (not for deallocation).
1406<p>
1407
1408<p>
1409Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00181">181</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.    </td>
1410  </tr>
1411</table>
1412<a class="anchor" name="Ogre_1_1WireBoundingBoxp21" doxytag="Ogre::StaticGeometry::GeometryBucket::mRenderDetailOverrideable" ></a><p>
1413<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1414  <tr>
1415    <td class="mdRow">
1416      <table cellpadding="0" cellspacing="0" border="0">
1417        <tr>
1418          <td class="md" nowrap valign="top"> bool <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxp21">Ogre::Renderable::mRenderDetailOverrideable</a><code> [protected, inherited]</code>
1419      </table>
1420    </td>
1421  </tr>
1422</table>
1423<table cellspacing=5 cellpadding=0 border=0>
1424  <tr>
1425    <td>
1426      &nbsp;
1427    </td>
1428    <td>
1429
1430<p>
1431
1432<p>
1433Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00253">253</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
1434  </tr>
1435</table>
1436<a class="anchor" name="Ogre_1_1WireBoundingBoxt1" doxytag="Ogre::StaticGeometry::GeometryBucket::msDummyPlaneList" ></a><p>
1437<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1438  <tr>
1439    <td class="mdRow">
1440      <table cellpadding="0" cellspacing="0" border="0">
1441        <tr>
1442          <td class="md" nowrap valign="top"> const <a class="el" href="namespaceOgre.html#a410">PlaneList</a> <a class="el" href="classOgre_1_1Renderable.html#Ogre_1_1WireBoundingBoxt1">Ogre::Renderable::msDummyPlaneList</a><code> [static, protected, inherited]</code>
1443      </table>
1444    </td>
1445  </tr>
1446</table>
1447<table cellspacing=5 cellpadding=0 border=0>
1448  <tr>
1449    <td>
1450      &nbsp;
1451    </td>
1452    <td>
1453
1454<p>
1455
1456<p>
1457Definition at line <a class="el" href="OgreRenderable_8h-source.html#l00250">250</a> of file <a class="el" href="OgreRenderable_8h-source.html">OgreRenderable.h</a>.    </td>
1458  </tr>
1459</table>
1460<a class="anchor" name="Ogre_1_1StaticGeometry_1_1GeometryBucketp3" doxytag="Ogre::StaticGeometry::GeometryBucket::mVertexData" ></a><p>
1461<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1462  <tr>
1463    <td class="mdRow">
1464      <table cellpadding="0" cellspacing="0" border="0">
1465        <tr>
1466          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1VertexData.html">VertexData</a>* <a class="el" href="classOgre_1_1StaticGeometry_1_1GeometryBucket.html#Ogre_1_1StaticGeometry_1_1GeometryBucketp3">Ogre::StaticGeometry::GeometryBucket::mVertexData</a><code> [protected]</code>
1467      </table>
1468    </td>
1469  </tr>
1470</table>
1471<table cellspacing=5 cellpadding=0 border=0>
1472  <tr>
1473    <td>
1474      &nbsp;
1475    </td>
1476    <td>
1477
1478<p>
1479Vertex information, includes current number of vertices committed to be a part of this bucket.
1480<p>
1481
1482<p>
1483Definition at line <a class="el" href="OgreStaticGeometry_8h-source.html#l00188">188</a> of file <a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a>.    </td>
1484  </tr>
1485</table>
1486<hr>The documentation for this class was generated from the following file:<ul>
1487<li><a class="el" href="OgreStaticGeometry_8h-source.html">OgreStaticGeometry.h</a></ul>
1488<hr>
1489<p>
1490Copyright &copy; 2000-2005 by The OGRE Team<br />
1491<!--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/>
1492This 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/>
1493                <!--/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#">
1494                <Work rdf:about="">
1495                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
1496        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
1497                </Work>
1498                <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> -->
1499
1500Last modified Sun Feb 12 13:04:05 2006
1501</p>
1502</body>
1503</html>
Note: See TracBrowser for help on using the repository browser.