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

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

added ogre dependencies and patched ogre sources

Line 
1<html>
2<head>
3<title>Ogre::ProgressiveMesh 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::ProgressiveMesh Class Reference</h1>This class reduces the complexity of the geometry it is given. 
11<a href="#_details">More...</a>
12<p>
13<code>#include &lt;<a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>&gt;</code>
14<p>
15<a href="classOgre_1_1ProgressiveMesh-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
16<tr><td></td></tr>
17<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
18<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="classOgre_1_1IndexData.html">IndexData</a> * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshw0">LODFaceList</a></td></tr>
19
20<tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshw3">VertexReductionQuota</a> { <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshw3Ogre_1_1ProgressiveMeshw1">VRQ_CONSTANT</a>,
21<a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshw3Ogre_1_1ProgressiveMeshw2">VRQ_PROPORTIONAL</a>
22 }</td></tr>
23
24<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The way to derive the quota of vertices which are reduced at each LOD.  <a href="#Ogre_1_1ProgressiveMeshw3">More...</a><br><br></td></tr>
25<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
26<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMesha0">ProgressiveMesh</a> (const <a class="el" href="classOgre_1_1VertexData.html">VertexData</a> *vertexData, const <a class="el" href="classOgre_1_1IndexData.html">IndexData</a> *indexData)</td></tr>
27
28<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor, takes the geometry data and index buffer.  <a href="#Ogre_1_1ProgressiveMesha0"></a><br><br></td></tr>
29<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMesha1">~ProgressiveMesh</a> ()</td></tr>
30
31<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMesha2">addExtraVertexPositionBuffer</a> (const <a class="el" href="classOgre_1_1VertexData.html">VertexData</a> *vertexData)</td></tr>
32
33<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds an extra vertex position buffer.  <a href="#Ogre_1_1ProgressiveMesha2"></a><br><br></td></tr>
34<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMesha3">build</a> (<a class="el" href="namespaceOgre.html#a422">ushort</a> numLevels, <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshw0">LODFaceList</a> *outList, <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshw3">VertexReductionQuota</a> quota=VRQ_PROPORTIONAL, <a class="el" href="namespaceOgre.html#a420">Real</a> reductionValue=0.5f)</td></tr>
35
36<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Builds the progressive mesh with the specified number of levels.  <a href="#Ogre_1_1ProgressiveMesha3"></a><br><br></td></tr>
37<tr><td colspan=2><br><h2>Protected Types</h2></td></tr>
38<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMTriangle.html">PMTriangle</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx0">TriangleList</a></td></tr>
39
40<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMFaceVertex.html">PMFaceVertex</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx1">FaceVertexList</a></td></tr>
41
42<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMVertex.html">PMVertex</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx2">CommonVertexList</a></td></tr>
43
44<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="namespaceOgre.html#a420">Real</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx3">WorstCostList</a></td></tr>
45
46<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="structOgre_1_1ProgressiveMesh_1_1PMWorkingData.html">PMWorkingData</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx4">WorkingDataList</a></td></tr>
47
48<tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr>
49<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshb0">addWorkingData</a> (const <a class="el" href="classOgre_1_1VertexData.html">VertexData</a> *vertexData, const <a class="el" href="classOgre_1_1IndexData.html">IndexData</a> *indexData)</td></tr>
50
51<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal method for building <a class="el" href="structOgre_1_1ProgressiveMesh_1_1PMWorkingData.html">PMWorkingData</a> from geometry data.  <a href="#Ogre_1_1ProgressiveMeshb0"></a><br><br></td></tr>
52<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshb1">initialiseEdgeCollapseCosts</a> (void)</td></tr>
53
54<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal method for initialising the edge collapse costs.  <a href="#Ogre_1_1ProgressiveMeshb1"></a><br><br></td></tr>
55<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_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshb2">computeEdgeCollapseCost</a> (<a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMVertex.html">PMVertex</a> *src, <a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMVertex.html">PMVertex</a> *dest)</td></tr>
56
57<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal calculation method for deriving a collapse cost from u to v.  <a href="#Ogre_1_1ProgressiveMeshb2"></a><br><br></td></tr>
58<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_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshb3">computeEdgeCostAtVertexForBuffer</a> (WorkingDataList::iterator idata, size_t vertIndex)</td></tr>
59
60<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal method evaluates all collapse costs from this vertex and picks the lowest for a single buffer.  <a href="#Ogre_1_1ProgressiveMeshb3"></a><br><br></td></tr>
61<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshb4">computeEdgeCostAtVertex</a> (size_t vertIndex)</td></tr>
62
63<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal method evaluates all collapse costs from this vertex for every buffer and returns the worst.  <a href="#Ogre_1_1ProgressiveMeshb4"></a><br><br></td></tr>
64<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshb5">computeAllCosts</a> (void)</td></tr>
65
66<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal method to compute edge collapse costs for all buffers /.  <a href="#Ogre_1_1ProgressiveMeshb5"></a><br><br></td></tr>
67<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshb6">getNextCollapser</a> (void)</td></tr>
68
69<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal method for getting the index of next best vertex to collapse.  <a href="#Ogre_1_1ProgressiveMeshb6"></a><br><br></td></tr>
70<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshb7">bakeNewLOD</a> (<a class="el" href="classOgre_1_1IndexData.html">IndexData</a> *pData)</td></tr>
71
72<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal method builds an new LOD based on the current state.  <a href="#Ogre_1_1ProgressiveMeshb7"></a><br><br></td></tr>
73<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshb8">collapse</a> (<a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMVertex.html">PMVertex</a> *collapser)</td></tr>
74
75<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal method, collapses vertex onto it's saved collapse target.  <a href="#Ogre_1_1ProgressiveMeshb8"></a><br><br></td></tr>
76<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshb9">dumpContents</a> (const <a class="el" href="namespaceOgre.html#a426">String</a> &amp;log)</td></tr>
77
78<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal debugging method.  <a href="#Ogre_1_1ProgressiveMeshb9"></a><br><br></td></tr>
79<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
80<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_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp0">mpVertexData</a></td></tr>
81
82<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_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp1">mpIndexData</a></td></tr>
83
84<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp2">mCurrNumIndexes</a></td></tr>
85
86<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp3">mNumCommonVertices</a></td></tr>
87
88<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx4">WorkingDataList</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp4">mWorkingData</a></td></tr>
89
90<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiple copies, 1 per vertex buffer.  <a href="#Ogre_1_1ProgressiveMeshp4"></a><br><br></td></tr>
91<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx3">WorstCostList</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp5">mWorstCosts</a></td></tr>
92
93<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The worst collapse cost from all vertex buffers for each vertex.  <a href="#Ogre_1_1ProgressiveMeshp5"></a><br><br></td></tr>
94</table>
95<hr><a name="_details"></a><h2>Detailed Description</h2>
96This class reduces the complexity of the geometry it is given.
97<p>
98This class is dedicated to reducing the number of triangles in a given mesh taking into account seams in both geometry and texture co-ordinates and meshes which have multiple frames. <dl compact><dt><b></b></dt><dd>The primary use for this is generating LOD versions of <a class="el" href="classOgre_1_1Mesh.html">Mesh</a> objects, but it can be used by any geometry provider. The only limitation at the moment is that the provider uses a common vertex buffer for all LODs and one index buffer per LOD. Therefore at the moment this class can only handle indexed geometry. </dd></dl>
99<dl compact><dt><b></b></dt><dd>NB the interface of this class will certainly change when compiled vertex buffers are supported. </dd></dl>
100
101<p>
102
103<p>
104Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00055">55</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.<hr><h2>Member Typedef Documentation</h2>
105<a class="anchor" name="Ogre_1_1ProgressiveMeshx2" doxytag="Ogre::ProgressiveMesh::CommonVertexList" ></a><p>
106<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
107  <tr>
108    <td class="mdRow">
109      <table cellpadding="0" cellspacing="0" border="0">
110        <tr>
111          <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMVertex.html">PMVertex</a>&gt; <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx2">Ogre::ProgressiveMesh::CommonVertexList</a><code> [protected]</code>
112      </table>
113    </td>
114  </tr>
115</table>
116<table cellspacing=5 cellpadding=0 border=0>
117  <tr>
118    <td>
119      &nbsp;
120    </td>
121    <td>
122
123<p>
124
125<p>
126Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00183">183</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
127  </tr>
128</table>
129<a class="anchor" name="Ogre_1_1ProgressiveMeshx1" doxytag="Ogre::ProgressiveMesh::FaceVertexList" ></a><p>
130<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
131  <tr>
132    <td class="mdRow">
133      <table cellpadding="0" cellspacing="0" border="0">
134        <tr>
135          <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMFaceVertex.html">PMFaceVertex</a>&gt; <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx1">Ogre::ProgressiveMesh::FaceVertexList</a><code> [protected]</code>
136      </table>
137    </td>
138  </tr>
139</table>
140<table cellspacing=5 cellpadding=0 border=0>
141  <tr>
142    <td>
143      &nbsp;
144    </td>
145    <td>
146
147<p>
148
149<p>
150Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00182">182</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
151  </tr>
152</table>
153<a class="anchor" name="Ogre_1_1ProgressiveMeshw0" doxytag="Ogre::ProgressiveMesh::LODFaceList" ></a><p>
154<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
155  <tr>
156    <td class="mdRow">
157      <table cellpadding="0" cellspacing="0" border="0">
158        <tr>
159          <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="classOgre_1_1IndexData.html">IndexData</a>*&gt; <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshw0">Ogre::ProgressiveMesh::LODFaceList</a>
160      </table>
161    </td>
162  </tr>
163</table>
164<table cellspacing=5 cellpadding=0 border=0>
165  <tr>
166    <td>
167      &nbsp;
168    </td>
169    <td>
170
171<p>
172
173<p>
174Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00068">68</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
175  </tr>
176</table>
177<a class="anchor" name="Ogre_1_1ProgressiveMeshx0" doxytag="Ogre::ProgressiveMesh::TriangleList" ></a><p>
178<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
179  <tr>
180    <td class="mdRow">
181      <table cellpadding="0" cellspacing="0" border="0">
182        <tr>
183          <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMTriangle.html">PMTriangle</a>&gt; <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx0">Ogre::ProgressiveMesh::TriangleList</a><code> [protected]</code>
184      </table>
185    </td>
186  </tr>
187</table>
188<table cellspacing=5 cellpadding=0 border=0>
189  <tr>
190    <td>
191      &nbsp;
192    </td>
193    <td>
194
195<p>
196
197<p>
198Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00181">181</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
199  </tr>
200</table>
201<a class="anchor" name="Ogre_1_1ProgressiveMeshx4" doxytag="Ogre::ProgressiveMesh::WorkingDataList" ></a><p>
202<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
203  <tr>
204    <td class="mdRow">
205      <table cellpadding="0" cellspacing="0" border="0">
206        <tr>
207          <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="structOgre_1_1ProgressiveMesh_1_1PMWorkingData.html">PMWorkingData</a>&gt; <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx4">Ogre::ProgressiveMesh::WorkingDataList</a><code> [protected]</code>
208      </table>
209    </td>
210  </tr>
211</table>
212<table cellspacing=5 cellpadding=0 border=0>
213  <tr>
214    <td>
215      &nbsp;
216    </td>
217    <td>
218
219<p>
220
221<p>
222Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00194">194</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
223  </tr>
224</table>
225<a class="anchor" name="Ogre_1_1ProgressiveMeshx3" doxytag="Ogre::ProgressiveMesh::WorstCostList" ></a><p>
226<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
227  <tr>
228    <td class="mdRow">
229      <table cellpadding="0" cellspacing="0" border="0">
230        <tr>
231          <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="namespaceOgre.html#a420">Real</a>&gt; <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx3">Ogre::ProgressiveMesh::WorstCostList</a><code> [protected]</code>
232      </table>
233    </td>
234  </tr>
235</table>
236<table cellspacing=5 cellpadding=0 border=0>
237  <tr>
238    <td>
239      &nbsp;
240    </td>
241    <td>
242
243<p>
244
245<p>
246Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00184">184</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
247  </tr>
248</table>
249<hr><h2>Member Enumeration Documentation</h2>
250<a class="anchor" name="Ogre_1_1ProgressiveMeshw3" doxytag="Ogre::ProgressiveMesh::VertexReductionQuota" ></a><p>
251<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
252  <tr>
253    <td class="mdRow">
254      <table cellpadding="0" cellspacing="0" border="0">
255        <tr>
256          <td class="md" nowrap valign="top"> enum <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshw3">Ogre::ProgressiveMesh::VertexReductionQuota</a>
257      </table>
258    </td>
259  </tr>
260</table>
261<table cellspacing=5 cellpadding=0 border=0>
262  <tr>
263    <td>
264      &nbsp;
265    </td>
266    <td>
267
268<p>
269The way to derive the quota of vertices which are reduced at each LOD.
270<p>
271<dl compact><dt><b>Enumeration values: </b></dt><dd>
272<table border=0 cellspacing=2 cellpadding=0>
273<tr><td valign=top><em><a class="anchor" name="Ogre_1_1ProgressiveMeshw3Ogre_1_1ProgressiveMeshw1" doxytag="VRQ_CONSTANT" ></a>VRQ_CONSTANT</em>&nbsp;</td><td>
274A set number of vertices are removed at each reduction. </td></tr>
275<tr><td valign=top><em><a class="anchor" name="Ogre_1_1ProgressiveMeshw3Ogre_1_1ProgressiveMeshw2" doxytag="VRQ_PROPORTIONAL" ></a>VRQ_PROPORTIONAL</em>&nbsp;</td><td>
276A proportion of the remaining number of vertices are removed at each reduction. </td></tr>
277</table>
278</dl>
279
280<p>
281Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00060">60</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
282  </tr>
283</table>
284<hr><h2>Constructor &amp; Destructor Documentation</h2>
285<a class="anchor" name="Ogre_1_1ProgressiveMesha0" doxytag="Ogre::ProgressiveMesh::ProgressiveMesh" ></a><p>
286<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
287  <tr>
288    <td class="mdRow">
289      <table cellpadding="0" cellspacing="0" border="0">
290        <tr>
291          <td class="md" nowrap valign="top"> Ogre::ProgressiveMesh::ProgressiveMesh </td>
292          <td class="md" valign="top">(&nbsp;</td>
293          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1VertexData.html">VertexData</a> *&nbsp;</td>
294          <td class="mdname" nowrap> <em>vertexData</em>, </td>
295        </tr>
296        <tr>
297          <td class="md" nowrap align="right"></td>
298          <td></td>
299          <td class="md" nowrap>const <a class="el" href="classOgre_1_1IndexData.html">IndexData</a> *&nbsp;</td>
300          <td class="mdname" nowrap> <em>indexData</em></td>
301        </tr>
302        <tr>
303          <td></td>
304          <td class="md">)&nbsp;</td>
305          <td class="md" colspan="2"></td>
306        </tr>
307
308      </table>
309    </td>
310  </tr>
311</table>
312<table cellspacing=5 cellpadding=0 border=0>
313  <tr>
314    <td>
315      &nbsp;
316    </td>
317    <td>
318
319<p>
320Constructor, takes the geometry data and index buffer.
321<p>
322<dl compact><dt><b>Remarks:</b></dt><dd>DO NOT pass write-only, unshadowed buffers to this method! They will not work. <a class="el" href="classOgre_1_1Pass.html">Pass</a> only shadowed buffers, or better yet perform mesh reduction as an offline process using <a class="el" href="classOgre_1_1DefaultHardwareBufferManager.html">DefaultHardwareBufferManager</a> to manage vertex buffers in system memory.</dd></dl>
323    </td>
324  </tr>
325</table>
326<a class="anchor" name="Ogre_1_1ProgressiveMesha1" doxytag="Ogre::ProgressiveMesh::~ProgressiveMesh" ></a><p>
327<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
328  <tr>
329    <td class="mdRow">
330      <table cellpadding="0" cellspacing="0" border="0">
331        <tr>
332          <td class="md" nowrap valign="top"> virtual Ogre::ProgressiveMesh::~<a class="el" href="classOgre_1_1ProgressiveMesh.html">ProgressiveMesh</a> </td>
333          <td class="md" valign="top">(&nbsp;</td>
334          <td class="mdname1" valign="top" nowrap>          </td>
335          <td class="md" valign="top">&nbsp;)&nbsp;</td>
336          <td class="md" nowrap><code> [virtual]</code></td>
337        </tr>
338
339      </table>
340    </td>
341  </tr>
342</table>
343<table cellspacing=5 cellpadding=0 border=0>
344  <tr>
345    <td>
346      &nbsp;
347    </td>
348    <td>
349
350<p>
351    </td>
352  </tr>
353</table>
354<hr><h2>Member Function Documentation</h2>
355<a class="anchor" name="Ogre_1_1ProgressiveMesha2" doxytag="Ogre::ProgressiveMesh::addExtraVertexPositionBuffer" ></a><p>
356<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
357  <tr>
358    <td class="mdRow">
359      <table cellpadding="0" cellspacing="0" border="0">
360        <tr>
361          <td class="md" nowrap valign="top"> virtual void Ogre::ProgressiveMesh::addExtraVertexPositionBuffer </td>
362          <td class="md" valign="top">(&nbsp;</td>
363          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1VertexData.html">VertexData</a> *&nbsp;</td>
364          <td class="mdname1" valign="top" nowrap> <em>vertexData</em>          </td>
365          <td class="md" valign="top">&nbsp;)&nbsp;</td>
366          <td class="md" nowrap><code> [virtual]</code></td>
367        </tr>
368
369      </table>
370    </td>
371  </tr>
372</table>
373<table cellspacing=5 cellpadding=0 border=0>
374  <tr>
375    <td>
376      &nbsp;
377    </td>
378    <td>
379
380<p>
381Adds an extra vertex position buffer.
382<p>
383<dl compact><dt><b>Remarks:</b></dt><dd>As well as the main vertex buffer, the client of this class may add extra versions of the vertex buffer which will also be taken into account when the cost of simplifying the mesh is taken into account. This is because the cost of simplifying an animated mesh cannot be calculated from just the reference position, multiple positions needs to be assessed in order to find the best simplification option. </dd></dl>
384<dl compact><dt><b></b></dt><dd>DO NOT pass write-only, unshadowed buffers to this method! They will not work. <a class="el" href="classOgre_1_1Pass.html">Pass</a> only shadowed buffers, or better yet perform mesh reduction as an offline process using <a class="el" href="classOgre_1_1DefaultHardwareBufferManager.html">DefaultHardwareBufferManager</a> to manage vertex buffers in system memory. </dd></dl>
385<dl compact><dt><b>Parameters:</b></dt><dd>
386  <table border="0" cellspacing="2" cellpadding="0">
387    <tr><td valign=top><em>buffer</em>&nbsp;</td><td>Pointer to x/y/z buffer with vertex positions. The number of vertices must be the same as in the original GeometryData passed to the constructor. </td></tr>
388  </table>
389</dl>
390    </td>
391  </tr>
392</table>
393<a class="anchor" name="Ogre_1_1ProgressiveMeshb0" doxytag="Ogre::ProgressiveMesh::addWorkingData" ></a><p>
394<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
395  <tr>
396    <td class="mdRow">
397      <table cellpadding="0" cellspacing="0" border="0">
398        <tr>
399          <td class="md" nowrap valign="top"> void Ogre::ProgressiveMesh::addWorkingData </td>
400          <td class="md" valign="top">(&nbsp;</td>
401          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1VertexData.html">VertexData</a> *&nbsp;</td>
402          <td class="mdname" nowrap> <em>vertexData</em>, </td>
403        </tr>
404        <tr>
405          <td class="md" nowrap align="right"></td>
406          <td></td>
407          <td class="md" nowrap>const <a class="el" href="classOgre_1_1IndexData.html">IndexData</a> *&nbsp;</td>
408          <td class="mdname" nowrap> <em>indexData</em></td>
409        </tr>
410        <tr>
411          <td></td>
412          <td class="md">)&nbsp;</td>
413          <td class="md" colspan="2"><code> [protected]</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>
428Internal method for building <a class="el" href="structOgre_1_1ProgressiveMesh_1_1PMWorkingData.html">PMWorkingData</a> from geometry data.
429<p>
430    </td>
431  </tr>
432</table>
433<a class="anchor" name="Ogre_1_1ProgressiveMeshb7" doxytag="Ogre::ProgressiveMesh::bakeNewLOD" ></a><p>
434<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
435  <tr>
436    <td class="mdRow">
437      <table cellpadding="0" cellspacing="0" border="0">
438        <tr>
439          <td class="md" nowrap valign="top"> void Ogre::ProgressiveMesh::bakeNewLOD </td>
440          <td class="md" valign="top">(&nbsp;</td>
441          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1IndexData.html">IndexData</a> *&nbsp;</td>
442          <td class="mdname1" valign="top" nowrap> <em>pData</em>          </td>
443          <td class="md" valign="top">&nbsp;)&nbsp;</td>
444          <td class="md" nowrap><code> [protected]</code></td>
445        </tr>
446
447      </table>
448    </td>
449  </tr>
450</table>
451<table cellspacing=5 cellpadding=0 border=0>
452  <tr>
453    <td>
454      &nbsp;
455    </td>
456    <td>
457
458<p>
459Internal method builds an new LOD based on the current state.
460<p>
461    </td>
462  </tr>
463</table>
464<a class="anchor" name="Ogre_1_1ProgressiveMesha3" doxytag="Ogre::ProgressiveMesh::build" ></a><p>
465<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
466  <tr>
467    <td class="mdRow">
468      <table cellpadding="0" cellspacing="0" border="0">
469        <tr>
470          <td class="md" nowrap valign="top"> virtual void Ogre::ProgressiveMesh::build </td>
471          <td class="md" valign="top">(&nbsp;</td>
472          <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a422">ushort</a>&nbsp;</td>
473          <td class="mdname" nowrap> <em>numLevels</em>, </td>
474        </tr>
475        <tr>
476          <td class="md" nowrap align="right"></td>
477          <td></td>
478          <td class="md" nowrap><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshw0">LODFaceList</a> *&nbsp;</td>
479          <td class="mdname" nowrap> <em>outList</em>, </td>
480        </tr>
481        <tr>
482          <td class="md" nowrap align="right"></td>
483          <td></td>
484          <td class="md" nowrap><a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshw3">VertexReductionQuota</a>&nbsp;</td>
485          <td class="mdname" nowrap> <em>quota</em> = VRQ_PROPORTIONAL, </td>
486        </tr>
487        <tr>
488          <td class="md" nowrap align="right"></td>
489          <td></td>
490          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
491          <td class="mdname" nowrap> <em>reductionValue</em> = 0.5f</td>
492        </tr>
493        <tr>
494          <td></td>
495          <td class="md">)&nbsp;</td>
496          <td class="md" colspan="2"><code> [virtual]</code></td>
497        </tr>
498
499      </table>
500    </td>
501  </tr>
502</table>
503<table cellspacing=5 cellpadding=0 border=0>
504  <tr>
505    <td>
506      &nbsp;
507    </td>
508    <td>
509
510<p>
511Builds the progressive mesh with the specified number of levels.
512<p>
513<dl compact><dt><b>Parameters:</b></dt><dd>
514  <table border="0" cellspacing="2" cellpadding="0">
515    <tr><td valign=top><em>numLevels</em>&nbsp;</td><td>The number of levels to include in the output excluding the full detail version. </td></tr>
516    <tr><td valign=top><em>outList</em>&nbsp;</td><td>Pointer to a list of LOD geometry data which will be completed by the application. Each entry is a reduced form of the mesh, in decreasing order of detail. </td></tr>
517    <tr><td valign=top><em>quota</em>&nbsp;</td><td>The way to derive the number of vertices removed at each LOD </td></tr>
518    <tr><td valign=top><em>reductionValue</em>&nbsp;</td><td>Either the proportion of vertices to remove at each level, or a fixed number of vertices to remove at each level, depending on the value of quota </td></tr>
519  </table>
520</dl>
521    </td>
522  </tr>
523</table>
524<a class="anchor" name="Ogre_1_1ProgressiveMeshb8" doxytag="Ogre::ProgressiveMesh::collapse" ></a><p>
525<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
526  <tr>
527    <td class="mdRow">
528      <table cellpadding="0" cellspacing="0" border="0">
529        <tr>
530          <td class="md" nowrap valign="top"> void Ogre::ProgressiveMesh::collapse </td>
531          <td class="md" valign="top">(&nbsp;</td>
532          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMVertex.html">PMVertex</a> *&nbsp;</td>
533          <td class="mdname1" valign="top" nowrap> <em>collapser</em>          </td>
534          <td class="md" valign="top">&nbsp;)&nbsp;</td>
535          <td class="md" nowrap><code> [protected]</code></td>
536        </tr>
537
538      </table>
539    </td>
540  </tr>
541</table>
542<table cellspacing=5 cellpadding=0 border=0>
543  <tr>
544    <td>
545      &nbsp;
546    </td>
547    <td>
548
549<p>
550Internal method, collapses vertex onto it's saved collapse target.
551<p>
552<dl compact><dt><b>Remarks:</b></dt><dd>This updates the working triangle list to drop a triangle and recalculates the edge collapse costs around the collapse target. This also updates all the working vertex lists for the relevant buffer. </dd></dl>
553    </td>
554  </tr>
555</table>
556<a class="anchor" name="Ogre_1_1ProgressiveMeshb5" doxytag="Ogre::ProgressiveMesh::computeAllCosts" ></a><p>
557<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
558  <tr>
559    <td class="mdRow">
560      <table cellpadding="0" cellspacing="0" border="0">
561        <tr>
562          <td class="md" nowrap valign="top"> void Ogre::ProgressiveMesh::computeAllCosts </td>
563          <td class="md" valign="top">(&nbsp;</td>
564          <td class="md" nowrap valign="top">void&nbsp;</td>
565          <td class="mdname1" valign="top" nowrap>          </td>
566          <td class="md" valign="top">&nbsp;)&nbsp;</td>
567          <td class="md" nowrap><code> [protected]</code></td>
568        </tr>
569
570      </table>
571    </td>
572  </tr>
573</table>
574<table cellspacing=5 cellpadding=0 border=0>
575  <tr>
576    <td>
577      &nbsp;
578    </td>
579    <td>
580
581<p>
582Internal method to compute edge collapse costs for all buffers /.
583<p>
584    </td>
585  </tr>
586</table>
587<a class="anchor" name="Ogre_1_1ProgressiveMeshb2" doxytag="Ogre::ProgressiveMesh::computeEdgeCollapseCost" ></a><p>
588<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
589  <tr>
590    <td class="mdRow">
591      <table cellpadding="0" cellspacing="0" border="0">
592        <tr>
593          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a420">Real</a> Ogre::ProgressiveMesh::computeEdgeCollapseCost </td>
594          <td class="md" valign="top">(&nbsp;</td>
595          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMVertex.html">PMVertex</a> *&nbsp;</td>
596          <td class="mdname" nowrap> <em>src</em>, </td>
597        </tr>
598        <tr>
599          <td class="md" nowrap align="right"></td>
600          <td></td>
601          <td class="md" nowrap><a class="el" href="classOgre_1_1ProgressiveMesh_1_1PMVertex.html">PMVertex</a> *&nbsp;</td>
602          <td class="mdname" nowrap> <em>dest</em></td>
603        </tr>
604        <tr>
605          <td></td>
606          <td class="md">)&nbsp;</td>
607          <td class="md" colspan="2"><code> [protected]</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>
622Internal calculation method for deriving a collapse cost from u to v.
623<p>
624    </td>
625  </tr>
626</table>
627<a class="anchor" name="Ogre_1_1ProgressiveMeshb4" doxytag="Ogre::ProgressiveMesh::computeEdgeCostAtVertex" ></a><p>
628<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
629  <tr>
630    <td class="mdRow">
631      <table cellpadding="0" cellspacing="0" border="0">
632        <tr>
633          <td class="md" nowrap valign="top"> void Ogre::ProgressiveMesh::computeEdgeCostAtVertex </td>
634          <td class="md" valign="top">(&nbsp;</td>
635          <td class="md" nowrap valign="top">size_t&nbsp;</td>
636          <td class="mdname1" valign="top" nowrap> <em>vertIndex</em>          </td>
637          <td class="md" valign="top">&nbsp;)&nbsp;</td>
638          <td class="md" nowrap><code> [protected]</code></td>
639        </tr>
640
641      </table>
642    </td>
643  </tr>
644</table>
645<table cellspacing=5 cellpadding=0 border=0>
646  <tr>
647    <td>
648      &nbsp;
649    </td>
650    <td>
651
652<p>
653Internal method evaluates all collapse costs from this vertex for every buffer and returns the worst.
654<p>
655    </td>
656  </tr>
657</table>
658<a class="anchor" name="Ogre_1_1ProgressiveMeshb3" doxytag="Ogre::ProgressiveMesh::computeEdgeCostAtVertexForBuffer" ></a><p>
659<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
660  <tr>
661    <td class="mdRow">
662      <table cellpadding="0" cellspacing="0" border="0">
663        <tr>
664          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a420">Real</a> Ogre::ProgressiveMesh::computeEdgeCostAtVertexForBuffer </td>
665          <td class="md" valign="top">(&nbsp;</td>
666          <td class="md" nowrap valign="top">WorkingDataList::iterator&nbsp;</td>
667          <td class="mdname" nowrap> <em>idata</em>, </td>
668        </tr>
669        <tr>
670          <td class="md" nowrap align="right"></td>
671          <td></td>
672          <td class="md" nowrap>size_t&nbsp;</td>
673          <td class="mdname" nowrap> <em>vertIndex</em></td>
674        </tr>
675        <tr>
676          <td></td>
677          <td class="md">)&nbsp;</td>
678          <td class="md" colspan="2"><code> [protected]</code></td>
679        </tr>
680
681      </table>
682    </td>
683  </tr>
684</table>
685<table cellspacing=5 cellpadding=0 border=0>
686  <tr>
687    <td>
688      &nbsp;
689    </td>
690    <td>
691
692<p>
693Internal method evaluates all collapse costs from this vertex and picks the lowest for a single buffer.
694<p>
695    </td>
696  </tr>
697</table>
698<a class="anchor" name="Ogre_1_1ProgressiveMeshb9" doxytag="Ogre::ProgressiveMesh::dumpContents" ></a><p>
699<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
700  <tr>
701    <td class="mdRow">
702      <table cellpadding="0" cellspacing="0" border="0">
703        <tr>
704          <td class="md" nowrap valign="top"> void Ogre::ProgressiveMesh::dumpContents </td>
705          <td class="md" valign="top">(&nbsp;</td>
706          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a426">String</a> &amp;&nbsp;</td>
707          <td class="mdname1" valign="top" nowrap> <em>log</em>          </td>
708          <td class="md" valign="top">&nbsp;)&nbsp;</td>
709          <td class="md" nowrap><code> [protected]</code></td>
710        </tr>
711
712      </table>
713    </td>
714  </tr>
715</table>
716<table cellspacing=5 cellpadding=0 border=0>
717  <tr>
718    <td>
719      &nbsp;
720    </td>
721    <td>
722
723<p>
724Internal debugging method.
725<p>
726    </td>
727  </tr>
728</table>
729<a class="anchor" name="Ogre_1_1ProgressiveMeshb6" doxytag="Ogre::ProgressiveMesh::getNextCollapser" ></a><p>
730<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
731  <tr>
732    <td class="mdRow">
733      <table cellpadding="0" cellspacing="0" border="0">
734        <tr>
735          <td class="md" nowrap valign="top"> size_t Ogre::ProgressiveMesh::getNextCollapser </td>
736          <td class="md" valign="top">(&nbsp;</td>
737          <td class="md" nowrap valign="top">void&nbsp;</td>
738          <td class="mdname1" valign="top" nowrap>          </td>
739          <td class="md" valign="top">&nbsp;)&nbsp;</td>
740          <td class="md" nowrap><code> [protected]</code></td>
741        </tr>
742
743      </table>
744    </td>
745  </tr>
746</table>
747<table cellspacing=5 cellpadding=0 border=0>
748  <tr>
749    <td>
750      &nbsp;
751    </td>
752    <td>
753
754<p>
755Internal method for getting the index of next best vertex to collapse.
756<p>
757    </td>
758  </tr>
759</table>
760<a class="anchor" name="Ogre_1_1ProgressiveMeshb1" doxytag="Ogre::ProgressiveMesh::initialiseEdgeCollapseCosts" ></a><p>
761<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
762  <tr>
763    <td class="mdRow">
764      <table cellpadding="0" cellspacing="0" border="0">
765        <tr>
766          <td class="md" nowrap valign="top"> void Ogre::ProgressiveMesh::initialiseEdgeCollapseCosts </td>
767          <td class="md" valign="top">(&nbsp;</td>
768          <td class="md" nowrap valign="top">void&nbsp;</td>
769          <td class="mdname1" valign="top" nowrap>          </td>
770          <td class="md" valign="top">&nbsp;)&nbsp;</td>
771          <td class="md" nowrap><code> [protected]</code></td>
772        </tr>
773
774      </table>
775    </td>
776  </tr>
777</table>
778<table cellspacing=5 cellpadding=0 border=0>
779  <tr>
780    <td>
781      &nbsp;
782    </td>
783    <td>
784
785<p>
786Internal method for initialising the edge collapse costs.
787<p>
788    </td>
789  </tr>
790</table>
791<hr><h2>Member Data Documentation</h2>
792<a class="anchor" name="Ogre_1_1ProgressiveMeshp2" doxytag="Ogre::ProgressiveMesh::mCurrNumIndexes" ></a><p>
793<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
794  <tr>
795    <td class="mdRow">
796      <table cellpadding="0" cellspacing="0" border="0">
797        <tr>
798          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp2">Ogre::ProgressiveMesh::mCurrNumIndexes</a><code> [protected]</code>
799      </table>
800    </td>
801  </tr>
802</table>
803<table cellspacing=5 cellpadding=0 border=0>
804  <tr>
805    <td>
806      &nbsp;
807    </td>
808    <td>
809
810<p>
811
812<p>
813Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00112">112</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
814  </tr>
815</table>
816<a class="anchor" name="Ogre_1_1ProgressiveMeshp3" doxytag="Ogre::ProgressiveMesh::mNumCommonVertices" ></a><p>
817<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
818  <tr>
819    <td class="mdRow">
820      <table cellpadding="0" cellspacing="0" border="0">
821        <tr>
822          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp3">Ogre::ProgressiveMesh::mNumCommonVertices</a><code> [protected]</code>
823      </table>
824    </td>
825  </tr>
826</table>
827<table cellspacing=5 cellpadding=0 border=0>
828  <tr>
829    <td>
830      &nbsp;
831    </td>
832    <td>
833
834<p>
835
836<p>
837Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00113">113</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
838  </tr>
839</table>
840<a class="anchor" name="Ogre_1_1ProgressiveMeshp1" doxytag="Ogre::ProgressiveMesh::mpIndexData" ></a><p>
841<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
842  <tr>
843    <td class="mdRow">
844      <table cellpadding="0" cellspacing="0" border="0">
845        <tr>
846          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1IndexData.html">IndexData</a>* <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp1">Ogre::ProgressiveMesh::mpIndexData</a><code> [protected]</code>
847      </table>
848    </td>
849  </tr>
850</table>
851<table cellspacing=5 cellpadding=0 border=0>
852  <tr>
853    <td>
854      &nbsp;
855    </td>
856    <td>
857
858<p>
859
860<p>
861Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00110">110</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
862  </tr>
863</table>
864<a class="anchor" name="Ogre_1_1ProgressiveMeshp0" doxytag="Ogre::ProgressiveMesh::mpVertexData" ></a><p>
865<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
866  <tr>
867    <td class="mdRow">
868      <table cellpadding="0" cellspacing="0" border="0">
869        <tr>
870          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1VertexData.html">VertexData</a>* <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp0">Ogre::ProgressiveMesh::mpVertexData</a><code> [protected]</code>
871      </table>
872    </td>
873  </tr>
874</table>
875<table cellspacing=5 cellpadding=0 border=0>
876  <tr>
877    <td>
878      &nbsp;
879    </td>
880    <td>
881
882<p>
883
884<p>
885Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00109">109</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
886  </tr>
887</table>
888<a class="anchor" name="Ogre_1_1ProgressiveMeshp4" doxytag="Ogre::ProgressiveMesh::mWorkingData" ></a><p>
889<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
890  <tr>
891    <td class="mdRow">
892      <table cellpadding="0" cellspacing="0" border="0">
893        <tr>
894          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx4">WorkingDataList</a> <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp4">Ogre::ProgressiveMesh::mWorkingData</a><code> [protected]</code>
895      </table>
896    </td>
897  </tr>
898</table>
899<table cellspacing=5 cellpadding=0 border=0>
900  <tr>
901    <td>
902      &nbsp;
903    </td>
904    <td>
905
906<p>
907Multiple copies, 1 per vertex buffer.
908<p>
909
910<p>
911Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00196">196</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
912  </tr>
913</table>
914<a class="anchor" name="Ogre_1_1ProgressiveMeshp5" doxytag="Ogre::ProgressiveMesh::mWorstCosts" ></a><p>
915<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
916  <tr>
917    <td class="mdRow">
918      <table cellpadding="0" cellspacing="0" border="0">
919        <tr>
920          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshx3">WorstCostList</a> <a class="el" href="classOgre_1_1ProgressiveMesh.html#Ogre_1_1ProgressiveMeshp5">Ogre::ProgressiveMesh::mWorstCosts</a><code> [protected]</code>
921      </table>
922    </td>
923  </tr>
924</table>
925<table cellspacing=5 cellpadding=0 border=0>
926  <tr>
927    <td>
928      &nbsp;
929    </td>
930    <td>
931
932<p>
933The worst collapse cost from all vertex buffers for each vertex.
934<p>
935
936<p>
937Definition at line <a class="el" href="OgreProgressiveMesh_8h-source.html#l00199">199</a> of file <a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a>.    </td>
938  </tr>
939</table>
940<hr>The documentation for this class was generated from the following file:<ul>
941<li><a class="el" href="OgreProgressiveMesh_8h-source.html">OgreProgressiveMesh.h</a></ul>
942<hr>
943<p>
944Copyright &copy; 2000-2005 by The OGRE Team<br />
945<!--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/>
946This 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/>
947                <!--/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#">
948                <Work rdf:about="">
949                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
950        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
951                </Work>
952                <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> -->
953
954Last modified Sun Feb 12 13:02:14 2006
955</p>
956</body>
957</html>
Note: See TracBrowser for help on using the repository browser.