#include <ComputeParticleSystem.hpp>
◆ ComputeParticleSystem()
Constructor.
- Parameters
-
[in] | parent | The parent particle system. |
◆ addParticleVariable()
adds a particle variable.
- Parameters
-
[in] | name | The variable name. |
[in] | type | The variable type. |
[in] | defaultValue | The variable default value. |
Implements castor3d::ParticleSystemImpl.
◆ cleanup()
◆ getUpdateProgram()
ShaderProgram const & castor3d::ComputeParticleSystem::getUpdateProgram |
( |
| ) |
const |
|
inline |
- Returns
- The update program.
References m_program.
◆ hasUpdateProgram()
bool castor3d::ComputeParticleSystem::hasUpdateProgram |
( |
| ) |
const |
|
inline |
- Returns
false
if the update program has not been set.
References m_program.
◆ initialise()
◆ setGroupSizes()
void castor3d::ComputeParticleSystem::setGroupSizes |
( |
castor::Point3i | sizes | ) |
|
|
inline |
Defines the workgroup sizes, as defined inside the compute shader.
- Parameters
-
References m_worgGroupSizes.
◆ setUpdateProgram()
C3D_API void castor3d::ComputeParticleSystem::setUpdateProgram |
( |
ShaderProgramRPtr | program | ) |
|
Defines the program used to update the particles.
- Parameters
-
[in] | program | The shader program. |
◆ update() [1/2]
◆ update() [2/2]
◆ m_commandBuffer
ashes::CommandBufferPtr castor3d::ComputeParticleSystem::m_commandBuffer |
|
protected |
◆ m_descriptorLayout
ashes::DescriptorSetLayoutPtr castor3d::ComputeParticleSystem::m_descriptorLayout |
|
protected |
◆ m_descriptorPool
ashes::DescriptorSetPoolPtr castor3d::ComputeParticleSystem::m_descriptorPool |
|
protected |
◆ m_descriptorSets
castor::Array< ashes::DescriptorSetPtr, 2u > castor3d::ComputeParticleSystem::m_descriptorSets |
|
protected |
◆ m_fence
ashes::FencePtr castor3d::ComputeParticleSystem::m_fence |
|
protected |
◆ m_generatedCountBuffer
ashes::BufferPtr< uint32_t > castor3d::ComputeParticleSystem::m_generatedCountBuffer |
|
protected |
◆ m_in
uint32_t castor3d::ComputeParticleSystem::m_in { 0 } |
|
protected |
◆ m_inputs
◆ m_out
uint32_t castor3d::ComputeParticleSystem::m_out { 1 } |
|
protected |
◆ m_particlesCount
uint32_t castor3d::ComputeParticleSystem::m_particlesCount { 0u } |
|
protected |
◆ m_particlesStorages
castor::Array< ashes::BufferPtr< uint8_t >, 2 > castor3d::ComputeParticleSystem::m_particlesStorages |
|
protected |
◆ m_pipeline
ashes::ComputePipelinePtr castor3d::ComputeParticleSystem::m_pipeline |
|
protected |
◆ m_pipelineLayout
ashes::PipelineLayoutPtr castor3d::ComputeParticleSystem::m_pipelineLayout |
|
protected |
◆ m_program
ShaderProgramRPtr castor3d::ComputeParticleSystem::m_program {} |
|
protected |
◆ m_ubo
◆ m_worgGroupSizes
castor::Point3i castor3d::ComputeParticleSystem::m_worgGroupSizes { 128, 1, 1 } |
|
protected |
The documentation for this class was generated from the following file: