#include <ComputeParticleSystem.hpp>
◆ ComputeParticleSystem()
Constructeur.
- Paramètres
-
[in] | parent | Le système de particules parent. |
◆ addParticleVariable()
Ajoute une variable de particule.
- Paramètres
-
[in] | name | Le nom de la variable. |
[in] | type | Le type de la variable. |
[in] | defaultValue | La valeur par défaut de la variable. |
Implémente castor3d::ParticleSystemImpl.
◆ cleanup()
◆ getUpdateProgram()
ShaderProgram const & castor3d::ComputeParticleSystem::getUpdateProgram |
( |
| ) |
const |
|
inline |
- Renvoie
- Le programme de mise à jour.
Références m_program.
◆ hasUpdateProgram()
bool castor3d::ComputeParticleSystem::hasUpdateProgram |
( |
| ) |
const |
|
inline |
- Renvoie
false
si le programme de mise à jour n'a pas été défini.
Références m_program.
◆ initialise()
◆ setGroupSizes()
void castor3d::ComputeParticleSystem::setGroupSizes |
( |
castor::Point3i | sizes | ) |
|
|
inline |
Définit les dimensions des groupes de travail, tels que définis dans le compute shader.
- Paramètres
-
Références m_worgGroupSizes.
◆ setUpdateProgram()
C3D_API void castor3d::ComputeParticleSystem::setUpdateProgram |
( |
ShaderProgramRPtr | program | ) |
|
Définit le programme utilisé pour mettre à jour les particules.
- Paramètres
-
[in] | program | Le programme shader. |
◆ 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 |
La documentation de cette classe a été générée à partir du fichier suivant :