Drag[en]gine Game Engine  1.0
deSmokeEmitter Class Reference

Smoke Emitter. More...

#include <deSmokeEmitter.h>

Inheritance diagram for deSmokeEmitter:
deResource deObject

Public Member Functions

Management
const decDVectorGetEmitterPosition () const
 
void SetEmitterPosition (const decDVector &position)
 
const decQuaternionGetEmitterOrientation () const
 
void SetEmitterOrientation (const decQuaternion &orientation)
 
const decDVectorGetVolumePosition () const
 
void SetVolumePosition (const decDVector &position)
 
const decVectorGetMinCastDirection () const
 
void SetMinCastDirection (const decVector &deviation)
 
const decVectorGetMaxCastDirection () const
 
void SetMaxCastDirection (const decVector &deviation)
 
float GetMinCastVelocity () const
 
void SetMinCastVelocity (float velocity)
 
float GetMaxCastVelocity () const
 
void SetMaxCastVelocity (float velocity)
 
float GetMinCastDensity () const
 
void SetMinCastDensity (float density)
 
float GetMaxCastDensity () const
 
void SetMaxCastDensity (float density)
 
bool GetEnableCasting () const
 
void SetEnableCasting (bool enable)
 
deComponentGetComponent () const
 
void SetComponent (deComponent *component)
 
int GetCastTexture () const
 
void SetCastTexture (int texture)
 
deSkinGetSkin () const
 
void SetSkin (deSkin *skin)
 
decCollisionFilterGetCollisionFilter ()
 Retrieves the collision filter. More...
 
const decCollisionFilterGetCollisionFilter () const
 
void NotifyCollisionFilterChanged ()
 Notifies the peers that the collision filter changed. More...
 
const decVectorGetGravity () const
 
void SetGravity (const decVector &gravity)
 
bool GetUseLocalGravity () const
 
void SetUseLocalGravity (bool useLocalGravity)
 
int GetPointCount () const
 
deSmokeDensityPointGetPoints () const
 
void SetPoints (deSmokeDensityPoint *points, int count)
 
void NotifyPointsChanged ()
 
System Peers
deBaseGraphicSmokeEmitterGetGraphicPeer () const
 
void SetGraphicPeer (deBaseGraphicSmokeEmitter *peer)
 
deBasePhysicsSmokeEmitterGetPhysicsPeer () const
 
void SetPhysicsPeer (deBasePhysicsSmokeEmitter *peer)
 
Linked List
deWorldGetParentWorld () const
 Parent world or NULL. More...
 
void SetParentWorld (deWorld *world)
 Set parent world or NULL. More...
 
deSmokeEmitterGetLLWorldPrev () const
 Previous smoke emitter in the parent world linked list. More...
 
void SetLLWorldPrev (deSmokeEmitter *smokeEmitter)
 Set next smoke emitter in the parent world linked list. More...
 
deSmokeEmitterGetLLWorldNext () const
 Next smoke emitter in the parent world linked list. More...
 
void SetLLWorldNext (deSmokeEmitter *smokeEmitter)
 Set next smoke emitter in the parent world linked list. More...
 
- Public Member Functions inherited from deResource
deResourceManagerGetResourceManager () const
 Resource manager or NULL if resource is leaking. More...
 
deEngineGetEngine () const
 Game engine object from resource manager. More...
 
deResourceGetLLManagerPrev () const
 Previous resource in the resource manager linked list. More...
 
void SetLLManagerPrev (deResource *resource)
 Set next resource in the resource manager linked list. More...
 
deResourceGetLLManagerNext () const
 Next resource in the resource manager linked list. More...
 
void SetLLManagerNext (deResource *resource)
 Set next resource in the resource manager linked list. More...
 
void MarkLeaking ()
 Marks the resource leaking. More...
 
 deResource (deResourceManager *resourceManager)
 Create resource. More...
 
- Public Member Functions inherited from deObject
int GetRefCount () const
 Reference count. More...
 
void AddReference ()
 Add reference increasing reference count by 1. More...
 
void FreeReference ()
 Decrease reference count by one and delete object if count reaches 0. More...
 
 deObject ()
 Create object with reference count of 1. More...
 

Constructors and Destructors

 deSmokeEmitter (deSmokeEmitterManager *manager)
 
virtual ~deSmokeEmitter ()
 Clean up particle system. More...
 

Additional Inherited Members

- Protected Member Functions inherited from deResource
virtual ~deResource ()
 Clean up resource. More...
 
- Protected Member Functions inherited from deObject
virtual ~deObject ()
 Clean up object. More...
 

Detailed Description

Smoke Emitter.

A smoke emitter produces gazous volumetric objects influenced by force fields or other physics objects. The gasous volume is described using a list of density points. Each density point represents a sphere of variable size. The density distribution inside a sphere declines quadratic towards the sphere boundary. The transparency of the sphere depends therefore on the radius. The maximum radius parameter indicates the largest radius of a sphere where the density is not equal to 0. Spheres with a larger radius become invisible and are removed.

Author
Pl├╝ss Roland
Version
1.0
Date
2009

Constructor & Destructor Documentation

◆ deSmokeEmitter()

deSmokeEmitter::deSmokeEmitter ( deSmokeEmitterManager manager)

Creates a new particle system.

◆ ~deSmokeEmitter()

virtual deSmokeEmitter::~deSmokeEmitter ( )
protectedvirtual

Clean up particle system.

Note
Subclasses should set their destructor protected too to avoid users accidently deleting a reference counted object through the object pointer. Only FreeReference() is allowed to delete the object.

Member Function Documentation

◆ GetCastTexture()

int deSmokeEmitter::GetCastTexture ( ) const
inline

Retrieves the texture to use from the component skin to cast particles from.

◆ GetCollisionFilter() [1/2]

decCollisionFilter& deSmokeEmitter::GetCollisionFilter ( )
inline

Retrieves the collision filter.

Call NotifyCollisionFilterChanged if you change the collision filter.

◆ GetCollisionFilter() [2/2]

const decCollisionFilter& deSmokeEmitter::GetCollisionFilter ( ) const
inline

◆ GetComponent()

deComponent* deSmokeEmitter::GetComponent ( ) const
inline

Retrieves the component used for casting or NULL.

◆ GetEmitterOrientation()

const decQuaternion& deSmokeEmitter::GetEmitterOrientation ( ) const
inline

Retrieves the emitter orientation.

◆ GetEmitterPosition()

const decDVector& deSmokeEmitter::GetEmitterPosition ( ) const
inline

Retrieves the emitter position.

References deSmokeDensityPoint::position.

◆ GetEnableCasting()

bool deSmokeEmitter::GetEnableCasting ( ) const
inline

Determines if casting particles is enabled.

◆ GetGraphicPeer()

deBaseGraphicSmokeEmitter* deSmokeEmitter::GetGraphicPeer ( ) const
inline

Retrieves the graphic system peer object.

◆ GetGravity()

const decVector& deSmokeEmitter::GetGravity ( ) const
inline

Retrieves the gravity in m/s^2.

◆ GetLLWorldNext()

deSmokeEmitter* deSmokeEmitter::GetLLWorldNext ( ) const
inline

Next smoke emitter in the parent world linked list.

◆ GetLLWorldPrev()

deSmokeEmitter* deSmokeEmitter::GetLLWorldPrev ( ) const
inline

Previous smoke emitter in the parent world linked list.

◆ GetMaxCastDensity()

float deSmokeEmitter::GetMaxCastDensity ( ) const
inline

Retrieves the maximum cast density.

◆ GetMaxCastDirection()

const decVector& deSmokeEmitter::GetMaxCastDirection ( ) const
inline

Retrieves the maximum cast direction deviation.

◆ GetMaxCastVelocity()

float deSmokeEmitter::GetMaxCastVelocity ( ) const
inline

Retrieves the maximum cast velocity.

◆ GetMinCastDensity()

float deSmokeEmitter::GetMinCastDensity ( ) const
inline

Retrieves the minimum cast density.

◆ GetMinCastDirection()

const decVector& deSmokeEmitter::GetMinCastDirection ( ) const
inline

Retrieves the minimum cast direction deviation.

◆ GetMinCastVelocity()

float deSmokeEmitter::GetMinCastVelocity ( ) const
inline

Retrieves the minimum cast velocity.

◆ GetParentWorld()

deWorld* deSmokeEmitter::GetParentWorld ( ) const
inline

Parent world or NULL.

◆ GetPhysicsPeer()

deBasePhysicsSmokeEmitter* deSmokeEmitter::GetPhysicsPeer ( ) const
inline

Retrieves the physics system peer object.

◆ GetPointCount()

int deSmokeEmitter::GetPointCount ( ) const
inline

Retrieves the number of points.

◆ GetPoints()

deSmokeDensityPoint* deSmokeEmitter::GetPoints ( ) const
inline

Retrieves the pointer to the points which can be NULL.

◆ GetSkin()

deSkin* deSmokeEmitter::GetSkin ( ) const
inline

Retrieves the skin of the particle instances or NULL.

◆ GetUseLocalGravity()

bool deSmokeEmitter::GetUseLocalGravity ( ) const
inline

Determines if the local gravity has to be used instead of the world gravity.

◆ GetVolumePosition()

const decDVector& deSmokeEmitter::GetVolumePosition ( ) const
inline

Retrieves the volume position.

◆ NotifyCollisionFilterChanged()

void deSmokeEmitter::NotifyCollisionFilterChanged ( )

Notifies the peers that the collision filter changed.

◆ NotifyPointsChanged()

void deSmokeEmitter::NotifyPointsChanged ( )

Notifies the graphic peer that the points changed.

◆ SetCastTexture()

void deSmokeEmitter::SetCastTexture ( int  texture)

Sets the texture to use from the component skin to cast particles from.

◆ SetComponent()

void deSmokeEmitter::SetComponent ( deComponent component)

Sets the component used for casting or NULL.

◆ SetEmitterOrientation()

void deSmokeEmitter::SetEmitterOrientation ( const decQuaternion orientation)

Sets the emitter orientation.

◆ SetEmitterPosition()

void deSmokeEmitter::SetEmitterPosition ( const decDVector position)

Sets the emitter position.

◆ SetEnableCasting()

void deSmokeEmitter::SetEnableCasting ( bool  enable)

Sets if casting particles is enabled.

◆ SetGraphicPeer()

void deSmokeEmitter::SetGraphicPeer ( deBaseGraphicSmokeEmitter peer)

Sets the graphic system peer object.

◆ SetGravity()

void deSmokeEmitter::SetGravity ( const decVector gravity)

Sets the gravity in m/s^2.

◆ SetLLWorldNext()

void deSmokeEmitter::SetLLWorldNext ( deSmokeEmitter smokeEmitter)

Set next smoke emitter in the parent world linked list.

◆ SetLLWorldPrev()

void deSmokeEmitter::SetLLWorldPrev ( deSmokeEmitter smokeEmitter)

Set next smoke emitter in the parent world linked list.

◆ SetMaxCastDensity()

void deSmokeEmitter::SetMaxCastDensity ( float  density)

Sets the maximum cast density.

◆ SetMaxCastDirection()

void deSmokeEmitter::SetMaxCastDirection ( const decVector deviation)

Sets the maximum cast direction deviation.

◆ SetMaxCastVelocity()

void deSmokeEmitter::SetMaxCastVelocity ( float  velocity)

Sets the maximum cast velocity.

◆ SetMinCastDensity()

void deSmokeEmitter::SetMinCastDensity ( float  density)

Sets the minimum cast density.

◆ SetMinCastDirection()

void deSmokeEmitter::SetMinCastDirection ( const decVector deviation)

Sets the minimum cast direction deviation.

◆ SetMinCastVelocity()

void deSmokeEmitter::SetMinCastVelocity ( float  velocity)

Sets the minimum cast velocity.

◆ SetParentWorld()

void deSmokeEmitter::SetParentWorld ( deWorld world)

Set parent world or NULL.

◆ SetPhysicsPeer()

void deSmokeEmitter::SetPhysicsPeer ( deBasePhysicsSmokeEmitter peer)

Sets the physics system peer object.

◆ SetPoints()

void deSmokeEmitter::SetPoints ( deSmokeDensityPoint points,
int  count 
)

Sets the points.

◆ SetSkin()

void deSmokeEmitter::SetSkin ( deSkin skin)

Sets the mode of the particle instances or NULL.

◆ SetUseLocalGravity()

void deSmokeEmitter::SetUseLocalGravity ( bool  useLocalGravity)

Sets if the local gravity has to be used instead of the world gravity.

◆ SetVolumePosition()

void deSmokeEmitter::SetVolumePosition ( const decDVector position)

Sets the volume position.


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