Graphics/ParticleSystem: Update interface
Former-commit-id: b58c3f194a32411eba2e321b00987d3c76e03cb0
This commit is contained in:
parent
0895a9273d
commit
58f91d6e39
|
|
@ -24,13 +24,13 @@ class NAZARA_GRAPHICS_API NzParticleSystem : public NzRenderable
|
|||
{
|
||||
public:
|
||||
NzParticleSystem(unsigned int maxParticleCount, nzParticleLayout layout);
|
||||
NzParticleSystem(unsigned int maxParticleCount, const NzParticleDeclaration* declaration);
|
||||
NzParticleSystem(unsigned int maxParticleCount, NzParticleDeclarationConstRef declaration);
|
||||
NzParticleSystem(const NzParticleSystem& emitter);
|
||||
~NzParticleSystem();
|
||||
|
||||
void AddController(NzParticleController* controller);
|
||||
void AddController(NzParticleControllerRef controller);
|
||||
void AddEmitter(NzParticleEmitter* emitter);
|
||||
void AddGenerator(NzParticleGenerator* generator);
|
||||
void AddGenerator(NzParticleGeneratorRef generator);
|
||||
void AddToRenderQueue(NzAbstractRenderQueue* renderQueue, const NzMatrix4f& transformMatrix) const;
|
||||
|
||||
void ApplyControllers(NzParticleMapper& mapper, unsigned int particleCount, float elapsedTime);
|
||||
|
|
@ -43,13 +43,12 @@ class NAZARA_GRAPHICS_API NzParticleSystem : public NzRenderable
|
|||
void* GenerateParticle();
|
||||
void* GenerateParticles(unsigned int count);
|
||||
|
||||
const NzParticleDeclaration* GetDeclaration() const;
|
||||
const NzParticleDeclarationConstRef& GetDeclaration() const;
|
||||
float GetFixedStepSize() const;
|
||||
unsigned int GetMaxParticleCount() const;
|
||||
unsigned int GetParticleCount() const;
|
||||
unsigned int GetParticleSize() const;
|
||||
|
||||
bool IsDrawable() const;
|
||||
bool IsFixedStepEnabled() const;
|
||||
|
||||
void KillParticle(unsigned int index);
|
||||
|
|
|
|||
|
|
@ -16,8 +16,8 @@ NzParticleSystem(maxParticleCount, NzParticleDeclaration::Get(layout))
|
|||
{
|
||||
}
|
||||
|
||||
NzParticleSystem::NzParticleSystem(unsigned int maxParticleCount, const NzParticleDeclaration* declaration) :
|
||||
m_declaration(declaration),
|
||||
NzParticleSystem::NzParticleSystem(unsigned int maxParticleCount, NzParticleDeclarationConstRef declaration) :
|
||||
m_declaration(std::move(declaration)),
|
||||
m_processing(false),
|
||||
m_maxParticleCount(maxParticleCount),
|
||||
m_particleCount(0)
|
||||
|
|
@ -51,11 +51,11 @@ m_particleSize(system.m_particleSize)
|
|||
|
||||
NzParticleSystem::~NzParticleSystem() = default;
|
||||
|
||||
void NzParticleSystem::AddController(NzParticleController* controller)
|
||||
void NzParticleSystem::AddController(NzParticleControllerRef controller)
|
||||
{
|
||||
NazaraAssert(controller, "Invalid particle controller");
|
||||
|
||||
m_controllers.emplace_back(controller);
|
||||
m_controllers.emplace_back(std::move(controller));
|
||||
}
|
||||
|
||||
void NzParticleSystem::AddEmitter(NzParticleEmitter* emitter)
|
||||
|
|
@ -65,11 +65,11 @@ void NzParticleSystem::AddEmitter(NzParticleEmitter* emitter)
|
|||
m_emitters.emplace_back(emitter);
|
||||
}
|
||||
|
||||
void NzParticleSystem::AddGenerator(NzParticleGenerator* generator)
|
||||
void NzParticleSystem::AddGenerator(NzParticleGeneratorRef generator)
|
||||
{
|
||||
NazaraAssert(generator, "Invalid particle generator");
|
||||
|
||||
m_generators.emplace_back(generator);
|
||||
m_generators.emplace_back(std::move(generator));
|
||||
}
|
||||
|
||||
void NzParticleSystem::AddToRenderQueue(NzAbstractRenderQueue* renderQueue, const NzMatrix4f& transformMatrix) const
|
||||
|
|
@ -152,7 +152,7 @@ void* NzParticleSystem::GenerateParticles(unsigned int count)
|
|||
return ptr;
|
||||
}
|
||||
|
||||
const NzParticleDeclaration* NzParticleSystem::GetDeclaration() const
|
||||
const NzParticleDeclarationConstRef& NzParticleSystem::GetDeclaration() const
|
||||
{
|
||||
return m_declaration;
|
||||
}
|
||||
|
|
@ -177,11 +177,6 @@ unsigned int NzParticleSystem::GetParticleSize() const
|
|||
return m_particleSize;
|
||||
}
|
||||
|
||||
bool NzParticleSystem::IsDrawable() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
void NzParticleSystem::KillParticle(unsigned int index)
|
||||
{
|
||||
///FIXME: Vérifier index
|
||||
|
|
|
|||
Loading…
Reference in New Issue