Voxellancer  0.3
A game about voxels in space
 All Classes Functions Pages
VoxelParticleEngine Class Reference
Inheritance diagram for VoxelParticleEngine:
[legend]
Collaboration diagram for VoxelParticleEngine:
[legend]

Public Member Functions

float time () const
 
int particleCount () const
 
int particleDataCount () const
 
VoxelParticleDataparticleData (int index)
 
std::vector< VoxelParticleData > & particleDataVector ()
 
void addParticle (const VoxelParticleSetup &particleSetup, const VoxelCluster *creator)
 
void removeParticle (int index)
 
void update (float deltaSec)
 
void draw (const Camera &camera)
 

Protected Member Functions

void setBufferSize (int bufferSize)
 
void particleChanged (int bufferIndex)
 
void updateGPUBuffers (int begin, int end)
 
virtual void beforeContextDestroy ()
 
virtual void afterContextRebuild ()
 

Protected Attributes

float m_time
 
bool m_initialized
 
std::unique_ptr
< VoxelParticleRenderer
m_renderer
 
std::unique_ptr
< VoxelParticleRemover
m_remover
 
std::vector< VoxelParticleDatam_cpuParticleBuffer
 
std::stack< int > m_freeParticleBufferIndices
 
bool m_gpuParticleBufferInvalid
 
int m_gpuParticleBufferInvalidBegin
 
int m_gpuParticleBufferInvalidEnd
 

The documentation for this class was generated from the following files: