The MeshSurfaceEmitter is a ParticleEmitter that emits particles on the surface of a mesh. More...
#include <CCPUMeshSurfaceEmitter.h>
Public Member Functions | |
const std::string & | getMeshName (void) const |
Returns the mesh name. More... | |
var | getMeshName () |
Returns the mesh name. More... | |
local | getMeshName () |
Returns the mesh name. More... | |
void | setMeshName (const std::string &meshName, bool doBuild=true) |
Sets the mesh name. More... | |
bool | useNormals (void) const |
Returns true if normals are used for the particle direction. More... | |
void | setUseNormals (bool useNormals) |
Set indication whether normals are used for the particle direction. More... | |
const MeshInfo::MeshSurfaceDistribution | getDistribution (void) const |
Returns the type op distribution. More... | |
local | getDistribution () |
Returns the type op distribution. More... | |
void | setDistribution (MeshInfo::MeshSurfaceDistribution distribution) |
Set the type of particle distribution on the surface of a mesh. More... | |
const Vec3 & | getScale (void) const |
Returns the scale of the mesh. More... | |
void | setScale (const Vec3 &scale) |
Set the scale of the mesh. More... | |
void | build (void) |
Build all the data needed to generate the particles. More... | |
virtual void | prepare () override |
Build the data if the mesh name has been set. More... | |
virtual void | unPrepare () override |
Reverse it. More... | |
virtual void | initParticlePosition (PUParticle3D *particle) override |
Determine a particle position on the mesh surface. More... | |
var | initParticlePosition ( var particle) |
Determine a particle position on the mesh surface. More... | |
local | initParticlePosition ( local particle) |
Determine a particle position on the mesh surface. More... | |
virtual unsigned short | calculateRequestedParticles (float timeElapsed) override |
See ParticleEmitter. More... | |
local | calculateRequestedParticles ( local timeElapsed) |
See ParticleEmitter. More... | |
virtual void | initParticleDirection (PUParticle3D *particle) override |
Determine the particle direction. More... | |
virtual PUMeshSurfaceEmitter * | clone () override |
local | clone () |
virtual void | copyAttributesTo (PUEmitter *emitter) override |
local | copyAttributesTo ( local emitter) |
virtual | ~PUMeshSurfaceEmitter (void) |
Public Member Functions inherited from PUEmitter | |
PUEmitter () | |
virtual | ~PUEmitter () |
virtual void | notifyStart () |
virtual void | notifyStop () |
virtual void | notifyPause () |
virtual void | notifyResume () |
virtual void | notifyRescaled (const Vec3 &scale) |
local | notifyRescaled ( local scale) |
virtual void | preUpdateEmitter (float deltaTime) |
local | preUpdateEmitter ( local deltaTime) |
virtual void | updateEmitter (Particle3D *particle, float deltaTime) override |
var | updateEmitter ( var particle, var deltaTime) |
local | updateEmitter ( local particle, local deltaTime) |
virtual void | postUpdateEmitter (float deltaTime) |
local | postUpdateEmitter ( local deltaTime) |
virtual void | emit (int count) override |
var | emit ( var count) |
local | emit ( local count) |
void | setLocalPosition (const Vec3 &pos) |
const Vec3 | getLocalPosition () const |
const Vec3 & | getDerivedPosition () |
Calculate the derived position of the affector. More... | |
var | getDerivedPosition () |
Calculate the derived position of the affector. More... | |
local | getDerivedPosition () |
Calculate the derived position of the affector. More... | |
void | setEnabled (bool enabled) |
Enables or disables the emitter. More... | |
bool | isEnabled (void) const |
bool | isEmitterDone () const |
const std::string & | getEmitterType (void) const |
Todo. More... | |
local | getEmitterType () |
Todo. More... | |
void | setEmitterType (const std::string &emitterType) |
const std::string & | getName (void) const |
Todo. More... | |
local | getName () |
Todo. More... | |
void | setName (const std::string &name) |
PUDynamicAttribute * | getDynAngle (void) const |
Todo. More... | |
local | getDynAngle () |
Todo. More... | |
void | setDynAngle (PUDynamicAttribute *dynAngle) |
PUDynamicAttribute * | getDynEmissionRate (void) const |
Todo. More... | |
void | setDynEmissionRate (PUDynamicAttribute *dynEmissionRate) |
PUDynamicAttribute * | getDynTotalTimeToLive (void) const |
Todo. More... | |
local | getDynTotalTimeToLive () |
Todo. More... | |
void | setDynTotalTimeToLive (PUDynamicAttribute *dynTotalTimeToLive) |
PUDynamicAttribute * | getDynParticleMass (void) const |
Todo. More... | |
local | getDynParticleMass () |
Todo. More... | |
void | setDynParticleMass (PUDynamicAttribute *dynParticleMass) |
PUDynamicAttribute * | getDynVelocity (void) const |
Todo. More... | |
void | setDynVelocity (PUDynamicAttribute *dynVelocity) |
PUDynamicAttribute * | getDynDuration (void) const |
Todo. More... | |
void | setDynDuration (PUDynamicAttribute *dynDuration) |
void | setDynDurationSet (bool durationSet) |
PUDynamicAttribute * | getDynRepeatDelay (void) const |
Todo. More... | |
void | setDynRepeatDelay (PUDynamicAttribute *dynRepeatDelay) |
void | setDynRepeatDelaySet (bool repeatDelaySet) |
PUDynamicAttribute * | getDynParticleAllDimensions (void) const |
Todo. More... | |
void | setDynParticleAllDimensions (PUDynamicAttribute *dynParticleAllDimensions) |
void | setDynParticleAllDimensionsSet (bool particleAllDimensionsSet) |
PUDynamicAttribute * | getDynParticleWidth (void) const |
Todo. More... | |
void | setDynParticleWidth (PUDynamicAttribute *dynParticleWidth) |
void | setDynParticleWidthSet (bool particleWidthSet) |
PUDynamicAttribute * | getDynParticleHeight (void) const |
Todo. More... | |
void | setDynParticleHeight (PUDynamicAttribute *dynParticleHeight) |
void | setDynParticleHeightSet (bool particleHeightSet) |
PUDynamicAttribute * | getDynParticleDepth (void) const |
Todo. More... | |
void | setDynParticleDepth (PUDynamicAttribute *dynParticleDepth) |
void | setDynParticleDepthSet (bool particleDepthSet) |
const std::string & | getEmitsName (void) const |
Todo. More... | |
void | setEmitsName (const std::string &emitsName) |
PUParticle3D::ParticleType | getEmitsType () const |
local | getEmitsType () |
void | setEmitsType (PUParticle3D::ParticleType type) |
Ref * | getEmitsEntityPtr () const |
bool | isMarkedForEmission () const |
void | setMarkedForEmission (bool isMarked) |
const Vec3 & | getParticleDirection (void) |
Returns the base direction of the particle that is going to be emitted. More... | |
const Vec3 & | getOriginalParticleDirection (void) const |
Returns the originally set particle direction. More... | |
local | getOriginalParticleDirection () |
Returns the originally set particle direction. More... | |
const Quaternion & | getParticleOrientation (void) const |
Returns the base orientation of the particle that is going to be emitted. More... | |
void | setParticleOrientation (const Quaternion &orientation) |
Set the orientation of the particle. More... | |
const Quaternion & | getParticleOrientationRangeStart (void) const |
Returns the start orientation of the particle that is going to be emitted. More... | |
void | setParticleOrientationRangeStart (const Quaternion &orientationRangeStart) |
Set start orientation of the particle that is going to be emitted. More... | |
const Quaternion & | getParticleOrientationRangeEnd (void) const |
Returns the end orientation of the particle that is going to be emitted. More... | |
void | setParticleOrientationRangeEnd (const Quaternion &orientationRangeEnd) |
Set end orientation of the particle that is going to be emitted. More... | |
void | setParticleDirection (const Vec3 &direction) |
Sets the direction of the particle that the emitter is emitting. More... | |
bool | isAutoDirection (void) const |
Todo. More... | |
void | setAutoDirection (bool autoDirection) |
Todo. More... | |
var | setAutoDirection ( var autoDirection) |
Todo. More... | |
local | setAutoDirection ( local autoDirection) |
Todo. More... | |
bool | isForceEmission (void) const |
Todo. More... | |
void | setForceEmission (bool forceEmission) |
Todo. More... | |
var | setForceEmission ( var forceEmission) |
Todo. More... | |
local | setForceEmission ( local forceEmission) |
Todo. More... | |
const Vec4 & | getParticleColor (void) const |
Get the colour of a particle that will be emitted. More... | |
var | getParticleColor () |
Get the colour of a particle that will be emitted. More... | |
local | getParticleColor () |
Get the colour of a particle that will be emitted. More... | |
void | setParticleColor (const Vec4 &particleColour) |
Set the colour of an emitted particle. More... | |
const Vec4 & | getParticleColorRangeStart (void) const |
Get the colour range start of an emitted particle. More... | |
var | getParticleColorRangeStart () |
Get the colour range start of an emitted particle. More... | |
local | getParticleColorRangeStart () |
Get the colour range start of an emitted particle. More... | |
void | setParticleColorRangeStart (const Vec4 &particleColourRangeStart) |
Set the colour range start of an emitted particle. More... | |
const Vec4 & | getParticleColorRangeEnd (void) const |
Get the colour range end of an emitted particle. More... | |
void | setParticleColorRangeEnd (const Vec4 &particleColourRangeEnd) |
Set the colour range end of an emitted particle. More... | |
const unsigned short & | getParticleTextureCoords (void) const |
Get the texture coords of an emitted particle. More... | |
void | setParticleTextureCoords (const unsigned short &particleTextureCoords) |
Set the texture coords of an emitted particle. More... | |
const unsigned short & | getParticleTextureCoordsRangeStart (void) const |
Get the texture coords range start of an emitted particle. More... | |
local | getParticleTextureCoordsRangeStart () |
Get the texture coords range start of an emitted particle. More... | |
void | setParticleTextureCoordsRangeStart (const unsigned short &particleTextureCoordsRangeStart) |
Set the texture coords range start of an emitted particle. More... | |
var | setParticleTextureCoordsRangeStart ( var particleTextureCoordsRangeStart) |
Set the texture coords range start of an emitted particle. More... | |
local | setParticleTextureCoordsRangeStart ( local particleTextureCoordsRangeStart) |
Set the texture coords range start of an emitted particle. More... | |
const unsigned short & | getParticleTextureCoordsRangeEnd (void) const |
Get the texture coords range end of an emitted particle. More... | |
void | setParticleTextureCoordsRangeEnd (const unsigned short &particleTextureCoordsRangeEnd) |
Set the texture coords range end of an emitted particle. More... | |
var | setParticleTextureCoordsRangeEnd ( var particleTextureCoordsRangeEnd) |
Set the texture coords range end of an emitted particle. More... | |
local | setParticleTextureCoordsRangeEnd ( local particleTextureCoordsRangeEnd) |
Set the texture coords range end of an emitted particle. More... | |
bool | isKeepLocal (void) const |
Todo. More... | |
void | setKeepLocal (bool keepLocal) |
If this attribute is set to 'true', the particles are emitted relative to the emitter. More... | |
bool | makeParticleLocal (PUParticle3D *particle) |
Transforms the particle position in a local position relative to the emitter. More... | |
Public Member Functions inherited from Particle3DEmitter | |
void | setEnabled (bool enabled) |
Enables or disables the emitter. More... | |
bool | isEnabled (void) const |
virtual | ~Particle3DEmitter () |
Public Member Functions inherited from Ref | |
void | retain () |
Retains the ownership. More... | |
void | release () |
Releases the ownership immediately. More... | |
Ref * | autorelease () |
Releases the ownership sometime soon automatically. More... | |
unsigned int | getReferenceCount () const |
Returns the Ref's current reference count. More... | |
virtual | ~Ref () |
Destructor. More... | |
Static Public Member Functions | |
static PUMeshSurfaceEmitter * | create () |
local | create () |
Public Attributes | |
CC_CONSTRUCTOR_ACCESS | __pad0__: PUMeshSurfaceEmitter(void) |
var | __pad0__: PUMeshSurfaceEmitter(void) |
local | __pad0__: PUMeshSurfaceEmitter(void) |
Public Attributes inherited from Particle3DEmitter | |
CC_CONSTRUCTOR_ACCESS | __pad0__: Particle3DEmitter() |
var | __pad0__: Particle3DEmitter() |
local | __pad0__: Particle3DEmitter() |
Protected Attributes | |
std::string | _meshName |
Quaternion | _orientation |
Vec3 | _scale |
var | _scale |
local | _scale |
MeshInfo::MeshSurfaceDistribution | _distribution |
var | _distribution |
local | _distribution |
MeshInfo * | _meshInfo |
size_t | _triangleIndex |
bool | _directionSet |
Protected Attributes inherited from PUEmitter | |
Vec3 | _position |
Vec3 | _latestPosition |
Vec3 | _latestPositionDiff |
Vec3 | _derivedPosition |
Vec3 | _emitterScale |
Although the scale is on a Particle System level, the emitter can also be scaled. More... | |
std::string | _emitterType |
std::string | _name |
Vec3 | _particleDirection |
Direction (and speed) of the emitted particle. More... | |
var | _particleDirection |
Direction (and speed) of the emitted particle. More... | |
local | _particleDirection |
Direction (and speed) of the emitted particle. More... | |
Vec3 | _originalParticleDirection |
The original direction of the emitted particle. More... | |
Quaternion | _particleOrientation |
Orientation of the particle as soon as it is emitted. More... | |
Quaternion | _particleOrientationRangeStart |
If set, the range generates a random orientation between start and end. More... | |
Quaternion | _particleOrientationRangeEnd |
bool | _particleOrientationRangeSet |
PUDynamicAttribute * | _dynAngle |
PUDynamicAttribute * | _dynEmissionRate |
std::string | _emitsName |
PUDynamicAttribute * | _dynTotalTimeToLive |
Dynamic attribute used to generate the total time to live. More... | |
var | _dynTotalTimeToLive |
Dynamic attribute used to generate the total time to live. More... | |
local | _dynTotalTimeToLive |
Dynamic attribute used to generate the total time to live. More... | |
PUDynamicAttribute * | _dynParticleMass |
Dynamic attribute used to generate the mass of a particle. More... | |
var | _dynParticleMass |
Dynamic attribute used to generate the mass of a particle. More... | |
local | _dynParticleMass |
Dynamic attribute used to generate the mass of a particle. More... | |
PUDynamicAttribute * | _dynVelocity |
Dynamic attribute used to generate the velocity of a particle. More... | |
PUDynamicAttribute * | _dynDuration |
Dynamic attribute used to define the duration of the emitter. More... | |
var | _dynDuration |
Dynamic attribute used to define the duration of the emitter. More... | |
local | _dynDuration |
Dynamic attribute used to define the duration of the emitter. More... | |
PUDynamicAttribute * | _dynRepeatDelay |
Dynamic attribute used to define the repeat/delay of the emitter. More... | |
PUDynamicAttribute * | _dynParticleAllDimensions |
Dynamic attribute used to define the (own) dimensions of a particle. More... | |
var | _dynParticleAllDimensions |
Dynamic attribute used to define the (own) dimensions of a particle. More... | |
local | _dynParticleAllDimensions |
Dynamic attribute used to define the (own) dimensions of a particle. More... | |
bool | _dynParticleAllDimensionsSet |
PUDynamicAttribute * | _dynParticleWidth |
Dynamic attribute used to define the (own) width of a particle. More... | |
bool | _dynParticleWidthSet |
PUDynamicAttribute * | _dynParticleHeight |
Dynamic attribute used to define the (own) height of a particle. More... | |
bool | _dynParticleHeightSet |
PUDynamicAttribute * | _dynParticleDepth |
Dynamic attribute used to define the (own) depth of a particle. More... | |
bool | _dynParticleDepthSet |
Vec3 | _upVector |
Notional up vector, just used to speed up generation of variant directions. More... | |
float | _remainder |
Particles that are left to be emitted from the previous time. More... | |
PUDynamicAttributeHelper | _dynamicAttributeHelper |
Helper factory. More... | |
var | _dynamicAttributeHelper |
Helper factory. More... | |
float | _durationRemain |
Duration remainder. More... | |
bool | _dynDurationSet |
Indication to determine whether duration is set. More... | |
float | _repeatDelayRemain |
Repeat/delay remainder. More... | |
bool | _dynRepeatDelaySet |
Indication to determine whether repeat/delay is set. More... | |
bool | _autoDirection |
Auto direction means that the direction of a particle is not determined by the direction vector that has been set, but the direction vector is generated based on the shape of the emitter. More... | |
bool | _forceEmission |
In normal cases, emission is regulated by time. More... | |
bool | _originalForceEmission |
Original value, used to set it back. More... | |
bool | _forceEmissionExecuted |
If mForceEmission has been set to true and if all particles are emitted, the mForceEmissionExecuted is also set to true, preventing any further 'forced emission'. More... | |
bool | _originalForceEmissionExecuted |
Original value, used to set it back. More... | |
Vec4 | _particleColor |
Colour that is assigned to an emitted particle. More... | |
Vec4 | _particleColorRangeStart |
Used to randomize the colour of an emitted particle. More... | |
Vec4 | _particleColorRangeEnd |
Used to randomize the colour of an emitted particle. More... | |
bool | _particleColorRangeSet |
Used to determine whether the colour range has been set. More... | |
bool | _keepLocal |
Determines whether particle positions should be kept local in relation to the emitter. More... | |
unsigned short | _particleTextureCoords |
Texture coords that is assigned to an emitted particle (only works if the renderer uses it) More... | |
var | _particleTextureCoords |
Texture coords that is assigned to an emitted particle (only works if the renderer uses it) More... | |
local | _particleTextureCoords |
Texture coords that is assigned to an emitted particle (only works if the renderer uses it) More... | |
unsigned short | _particleTextureCoordsRangeStart |
Used to randomize the texture coords of an emitted particle. More... | |
unsigned short | _particleTextureCoordsRangeEnd |
Used to randomize the texture coords of an emitted particle. More... | |
bool | _particleTextureCoordsRangeSet |
Used to determine whether the texture coords range has been set. More... | |
bool | _originEnabled |
bool | _originEnabledSet |
PUParticle3D::ParticleType | _emitsType |
var | _emitsType |
local | _emitsType |
Ref * | _emitsEntity |
bool | _isMarkedForEmission |
Protected Attributes inherited from Particle3DEmitter | |
ParticleSystem3D * | _particleSystem |
int | _emitRate |
bool | _isEnabled |
Protected Attributes inherited from Ref | |
unsigned int | _referenceCount |
count of references More... | |
local | _referenceCount |
count of references More... | |
Additional Inherited Members | |
Protected Member Functions inherited from PUEmitter | |
virtual void | initParticleOrientation (PUParticle3D *particle) |
Internal method for generating the particle orientation. More... | |
var | initParticleOrientation ( var particle) |
Internal method for generating the particle orientation. More... | |
local | initParticleOrientation ( local particle) |
Internal method for generating the particle orientation. More... | |
virtual void | initParticleVelocity (PUParticle3D *particle) |
virtual void | initParticleMass (PUParticle3D *particle) |
var | initParticleMass ( var particle) |
local | initParticleMass ( local particle) |
virtual void | initParticleColor (PUParticle3D *particle) |
virtual void | initParticleTextureCoords (PUParticle3D *particle) |
virtual float | initParticleTimeToLive () |
virtual void | initParticleDimensions (PUParticle3D *particle) |
local | initParticleDimensions ( local particle) |
virtual void | initParticleForEmission (PUParticle3D *particle) |
var | initParticleForEmission ( var particle) |
local | initParticleForEmission ( local particle) |
void | initTimeBased (void) |
Initialise some attributes that are time-based. More... | |
void | generateAngle (float &angle) |
Internal method for generating the angle. More... | |
Protected Member Functions inherited from Ref | |
Ref () | |
Constructor. More... | |
Ref () | |
Constructor. More... | |
The MeshSurfaceEmitter is a ParticleEmitter that emits particles on the surface of a mesh.
|
virtual |
|
virtual |
|
virtual |
void build | ( | void | ) |
Build all the data needed to generate the particles.
var build | ( | ) |
Build all the data needed to generate the particles.
local build | ( | ) |
Build all the data needed to generate the particles.
|
overridevirtual |
See ParticleEmitter.
Reimplemented from PUEmitter.
|
overridevirtual |
See ParticleEmitter.
Reimplemented from PUEmitter.
|
overridevirtual |
See ParticleEmitter.
Reimplemented from PUEmitter.
|
overridevirtual |
Implements PUEmitter.
|
overridevirtual |
Implements PUEmitter.
|
overridevirtual |
Implements PUEmitter.
|
overridevirtual |
Reimplemented from PUEmitter.
|
overridevirtual |
Reimplemented from PUEmitter.
|
static |
|
static |
|
static |
const MeshInfo::MeshSurfaceDistribution getDistribution |
( | void | ) | const |
Returns the type op distribution.
var getDistribution | ( | ) |
Returns the type op distribution.
local getDistribution | ( | ) |
Returns the type op distribution.
const std::string& getMeshName | ( | void | ) | const |
Returns the mesh name.
var getMeshName | ( | ) |
Returns the mesh name.
local getMeshName | ( | ) |
Returns the mesh name.
const Vec3& getScale | ( | void | ) | const |
Returns the scale of the mesh.
var getScale | ( | ) |
Returns the scale of the mesh.
local getScale | ( | ) |
Returns the scale of the mesh.
|
overridevirtual |
Determine the particle direction.
Reimplemented from PUEmitter.
|
overridevirtual |
Determine the particle direction.
Reimplemented from PUEmitter.
|
overridevirtual |
Determine the particle direction.
Reimplemented from PUEmitter.
|
overridevirtual |
Determine a particle position on the mesh surface.
Reimplemented from PUEmitter.
|
overridevirtual |
Determine a particle position on the mesh surface.
Reimplemented from PUEmitter.
|
overridevirtual |
Determine a particle position on the mesh surface.
Reimplemented from PUEmitter.
|
overridevirtual |
Build the data if the mesh name has been set.
Reimplemented from PUEmitter.
|
overridevirtual |
Build the data if the mesh name has been set.
Reimplemented from PUEmitter.
|
overridevirtual |
Build the data if the mesh name has been set.
Reimplemented from PUEmitter.
void setDistribution | ( | MeshInfo::MeshSurfaceDistribution | distribution | ) |
Set the type of particle distribution on the surface of a mesh.
var setDistribution | ( | var | distribution | ) |
Set the type of particle distribution on the surface of a mesh.
local setDistribution | ( | local | distribution | ) |
Set the type of particle distribution on the surface of a mesh.
void setMeshName | ( | const std::string & | meshName, |
bool | doBuild = true |
||
) |
Sets the mesh name.
var setMeshName | ( | var | meshName, |
var | doBuild = true |
||
) |
Sets the mesh name.
local setMeshName | ( | local | meshName, |
local | doBuild = true |
||
) |
Sets the mesh name.
void setScale | ( | const Vec3 & | scale | ) |
Set the scale of the mesh.
var setScale | ( | var | scale | ) |
Set the scale of the mesh.
local setScale | ( | local | scale | ) |
Set the scale of the mesh.
void setUseNormals | ( | bool | useNormals | ) |
Set indication whether normals are used for the particle direction.
var setUseNormals | ( | var | useNormals | ) |
Set indication whether normals are used for the particle direction.
local setUseNormals | ( | local | useNormals | ) |
Set indication whether normals are used for the particle direction.
|
overridevirtual |
Reverse it.
Reimplemented from PUEmitter.
|
overridevirtual |
Reverse it.
Reimplemented from PUEmitter.
|
overridevirtual |
Reverse it.
Reimplemented from PUEmitter.
bool useNormals | ( | void | ) | const |
Returns true if normals are used for the particle direction.
var useNormals | ( | ) |
Returns true if normals are used for the particle direction.
local useNormals | ( | ) |
Returns true if normals are used for the particle direction.
CC_CONSTRUCTOR_ACCESS __pad0__ |
var __pad0__ |
local __pad0__ |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |