18 #include <unordered_map>
49 virtual void addInstance(
const int modelId
55 ,
int geometryLocations,
int lightSourceCount
56 ,
int &outPerGeomTemplateOffset,
int& outNumGeoms,
int& outInstanceIndex);
59 virtual bool removeInstance(
int instanceId);
62 virtual bool hasInstance(
int instanceId)
const;
71 virtual void printPerGeomInstances()
const;
74 virtual int numValidInstances(
void)
const;
77 virtual int numUniqueGeometriesForModel(
int modelId)
const;
81 virtual int numUniqueGeometries()
const;
85 virtual bool instanceEverAdded(
void)
const;
92 virtual void incrementNumUniqueGeometries(
int number);
95 virtual const std::vector<int>& modelAddedOrder()
const;
99 virtual unsigned int maxNumLightSources()
const;
SetInts myUniqueModels
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:103
std::set< int > SetInts
Definition: DtCommonTypes.h:22
structure for some internal GPU book-keeping
Definition: DtIndirectOffsetAndSize.h:17
MapIntToInt myModelIdToGeometryCount
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:105
#define DT_DLL_VRVINDIRECTRENDERING
Definition: vrvIndirectRendering.h:19
std::map< int, int > MapIntToInt
Definition: DtCommonTypes.h:25
int myRunningInstanceId
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:115
Contains makVrv::DtIndirectOffsetAndSize class.
std::vector< int > VectorInts
Definition: DtCommonTypes.h:20
std::unordered_map< int, int > MapInstanceIdToNumLightSources
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:112
VectorInts myModelAddedOrder
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:104
std::vector< PerGeomInstance > DtPerGeomInstances
Definition: DtPerGeomInstance.h:26
unsigned int myMaxNumLightSources
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:120
std::unordered_map< int, DtIndirectOffsetAndSize > MapInstanceIdToPerGeomInstanceOffsetAndSize
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:109
int myNumValidInstances
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:117
std::vector< Matrix4_64 > VectorMatrix4_64
Definition: DtInstanceContainer.h:22
int myNumUniqueGeometries
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:107
Helper class to manage instances This class allows you to add a DtInstance_64 Internally, however it stores this as a DtInstance (which the GPU can directly read)
Definition: DtInstanceContainer.h:31
MapInstanceIdToPerGeomInstanceOffsetAndSize myMapInstanceIdToPerGeomInstanceOffsetAndSize
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:110
MapInstanceIdToNumLightSources myMapInstanceIdToNumLightSources
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:113
MapIntToInt myModelIdToGeomOffset
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:102
DtReusablePerGeomInstances myPerGeomInstances
Add, remove, access instances addInstance also creates the perGeomInstances needed and returns the nu...
Definition: DtInstanceContainer.h:119
DtPerGeomInstance class declaration.
Contains the per Model info which the indirect module needs It is owned by the Indirect geometry regi...
Definition: DtIndirectModelInfo.h:44