The Nebula Device 3: Particles::ParticleRenderer Class Reference

The Nebula Device 3

Particles::ParticleRenderer Class Reference

#include <particlerenderer.h>

Inheritance diagram for Particles::ParticleRenderer:

Direct3D9::D3D9ParticleRenderer Base::ParticleRendererBase Core::RefCounted

Detailed Description

Platform-wrapper for particle rendering.

(C) 2008 Radon Labs GmbH

Public Member Functions

 ParticleRenderer ()
 constructor
virtual ~ParticleRenderer ()
 destructor
virtual void Setup ()
 setup the particle renderer
virtual void Discard ()
 discard the particle renderer
virtual void BeginAttach ()
 begin attaching visible particle systems
virtual void EndAttach ()
 finish attaching visible particle systems
IndexT GetCurParticleVertexIndex () const
 get the current vertex index
void AddCurParticleVertexIndex (IndexT add)
 add particle vertex index
void * GetCurVertexPtr ()
 get the current vertex pointer
void SetCurVertexPtr (void *ptr)
 set the current vertex pointer
const Ptr< CoreGraphics::VertexBuffer > & GetParticleVertexBuffer () const
 get particle vertex buffer
const Ptr< CoreGraphics::VertexBuffer > & GetCornerVertexBuffer () const
 get the corner vertex buffer
const Ptr< CoreGraphics::IndexBuffer > & GetCornerIndexBuffer () const
 get the corner index buffer
CoreGraphics::PrimitiveGroupGetPrimitiveGroup ()
 get the primitive group
const Ptr< CoreGraphics::VertexLayout > & GetVertexLayout () const
 get the vertex layout
bool IsValid () const
 return true if particle renderer has been setup
void AddVisibleParticleSystem (const Ptr< Particles::ParticleSystemInstance > &particleSystemInstance)
 attach a visible particle system instance
bool IsInAttach () const
 is renderer in attach?
void RenderParticleSystem (const Ptr< Particles::ParticleSystemInstance > &particleSystemInstance)
 render particles of previously attached particle system
int GetRefCount () const
 get the current refcount
void AddRef ()
 increment refcount by one
void Release ()
 decrement refcount and destroy object if refcount is zero
bool IsInstanceOf (const Rtti &rtti) const
 return true if this object is instance of given class
bool IsInstanceOf (const Util::String &className) const
 return true if this object is instance of given class by string
bool IsInstanceOf (const Util::FourCC &classFourCC) const
 return true if this object is instance of given class by fourcc
bool IsA (const Rtti &rtti) const
 return true if this object is instance of given class, or a derived class
bool IsA (const Util::String &rttiName) const
 return true if this object is instance of given class, or a derived class, by string
bool IsA (const Util::FourCC &rttiFourCC) const
 return true if this object is instance of given class, or a derived class, by fourcc
const Util::StringGetClassName () const
 get the class name
Util::FourCC GetClassFourCC () const
 get the class FourCC code

Static Public Member Functions

static void DumpRefCountingLeaks ()
 dump refcounting leaks, call at end of application (NEBULA3_DEBUG builds only!)

Member Function Documentation

void Direct3D9::D3D9ParticleRenderer::BeginAttach (  )  [virtual, inherited]

begin attaching visible particle systems

This method is called once per frame before visible particle systems are attached.

Reimplemented from Base::ParticleRendererBase.

void Direct3D9::D3D9ParticleRenderer::EndAttach (  )  [virtual, inherited]

finish attaching visible particle systems

This method is called once per frame after visible particle systems are attached.

Reimplemented from Base::ParticleRendererBase.

int Core::RefCounted::GetRefCount (  )  const [inline, inherited]

get the current refcount

Return the current refcount of the object.

void Core::RefCounted::AddRef (  )  [inline, inherited]

increment refcount by one

Increment the refcount of the object.

void Core::RefCounted::Release (  )  [inline, inherited]

decrement refcount and destroy object if refcount is zero

Decrement the refcount and destroy object if refcount is zero.

const Util::String & Core::RefCounted::GetClassName (  )  const [inline, inherited]

get the class name

Get the class name of the object.

Util::FourCC Core::RefCounted::GetClassFourCC (  )  const [inline, inherited]

get the class FourCC code

Get the class FourCC of the object.

void Core::RefCounted::DumpRefCountingLeaks (  )  [static, inherited]

dump refcounting leaks, call at end of application (NEBULA3_DEBUG builds only!)

This method should be called as the very last before an application exits.