@@ -119,8 +119,8 @@ namespace Ogre {
119
119
*/
120
120
VertexData* clone (bool copyData = true , HardwareBufferManagerBase* mgr = 0 ) const OGRE_NODISCARD;
121
121
122
- /* * Modifies the vertex data to be suitable for use for rendering shadow geometry.
123
- @remarks
122
+ /* * Modifies the vertex data to be suitable for use for rendering shadow geometry as in @cite mcguire2003fast
123
+
124
124
Preparing vertex data to generate a shadow volume involves firstly ensuring that the
125
125
vertex buffer containing the positions is a standalone vertex buffer,
126
126
with no other components in it. This method will therefore break apart any existing
@@ -131,12 +131,16 @@ namespace Ogre {
131
131
the same though, so as not to add any overhead to regular rendering of the object.
132
132
Both copies of the position are required in one buffer because shadow volumes stretch
133
133
from the original mesh to the extruded version.
134
- @par
134
+
135
135
It's important to appreciate that this method can fundamentally change the structure of your
136
136
vertex buffers, although in reality they will be new buffers. As it happens, if other
137
137
objects are using the original buffers then they will be unaffected because the reference
138
138
counting will keep them intact. However, if you have made any assumptions about the
139
139
structure of the vertex data in the buffers of this object, you may have to rethink them.
140
+
141
+ Because shadow volumes are rendered in turn, no additional
142
+ index buffer space is allocated by this method, a shared index buffer allocated by the
143
+ shadow rendering algorithm is used for addressing this extended vertex buffer.
140
144
*/
141
145
void prepareForShadowVolume (void );
142
146
0 commit comments