Go to the documentation of this file.
28 #ifndef __InstanceBatchShader_H__
29 #define __InstanceBatchShader_H__
vector< unsigned short >::type IndexMap
InstanceBatchShader(InstanceManager *creator, MeshPtr &meshReference, const MaterialPtr &material, size_t instancesPerBatch, const Mesh::IndexMap *indexToBoneMap, const String &batchName)
This is the same technique the old "InstancedGeometry" implementation used (with improvements).
This is the main starting point for the new instancing system.
void getWorldTransforms(Matrix4 *xform) const
Gets the world transform matrix / matrices for this renderable object.
void buildFrom(const SubMesh *baseSubMesh, const RenderOperation &renderOperation)
void setupVertices(const SubMesh *baseSubMesh)
void setupIndices(const SubMesh *baseSubMesh)
Summary class collecting together vertex source information.
void setupHardwareSkinned(const SubMesh *baseSubMesh, VertexData *thisVertexData, VertexData *baseVertexData)
When the mesh is (hardware) skinned, a different code path is called so that we reuse the index buffe...
unsigned short mNumWorldMatrices
Class encapsulating a standard 4x4 homogeneous matrix.
unsigned short getNumWorldTransforms(void) const
Returns the number of world transform matrices this renderable requires.
Defines a part of a complete mesh.
size_t calculateMaxNumInstances(const SubMesh *baseSubMesh, uint16 flags) const
InstanceBatch forms part of the new Instancing system This is an abstract class that must be derived ...
virtual ~InstanceBatchShader()
'New' rendering operation using vertex buffers.
Copyright © 2012 Torus Knot Software Ltd

This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.