Cocos2d-x  v3.12
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups
PUMeshSurfaceEmitter Class Reference

The MeshSurfaceEmitter is a ParticleEmitter that emits particles on the surface of a mesh. More...

Inherits PUEmitter.

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 whether use normal. More...
 
void setUseNormals (bool useNormals)
 Set indication whether normals are used for the particle direction. More...
 
MeshInfo::MeshSurfaceDistribution getDistribution () const
 Returns the type of particle distribution. More...
 
local getDistribution ()
 Returns the type of particle distribution. More...
 
void setDistribution (MeshInfo::MeshSurfaceDistribution distribution)
 Set the type of particle distribution on the surface of a mesh. More...
 
const Vec3getScale (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.
 
virtual void prepare () override
 override. More...
 
var prepare ()
 override. More...
 
local prepare ()
 override. More...
 
virtual void unPrepare () override
 override. More...
 
local unPrepare ()
 override. More...
 
virtual void initParticlePosition (PUParticle3D *particle) override
 override. More...
 
local initParticlePosition ( local particle)
 override. More...
 
virtual unsigned short calculateRequestedParticles (float timeElapsed) override
 override. More...
 
virtual void initParticleDirection (PUParticle3D *particle) override
 override. More...
 
virtual PUMeshSurfaceEmitterclone () override
 override. More...
 
local clone ()
 override. More...
 
virtual void copyAttributesTo (PUEmitter *emitter) override
 override. More...
 
local copyAttributesTo ( local emitter)
 override. More...
 
- Public Member Functions inherited from PUEmitter
virtual void notifyStart ()
 Perform activities when a emitter is started(internal method).
 
virtual void notifyStop ()
 Perform activities when a emitter is stopped(internal method).
 
virtual void notifyPause ()
 Perform activities when a emitter is paused(internal method).
 
virtual void notifyResume ()
 Perform activities when a emitter is paused(internal method).
 
virtual void notifyRescaled (const Vec3 &scale)
 Notify that the emitter is rescaled(internal method).
 
local notifyRescaled ( local scale)
 Notify that the emitter is rescaled(internal method).
 
virtual void preUpdateEmitter (float deltaTime)
 This function is called before the ParticleSystem update-loop where all particles are traversed(internal method). More...
 
var preUpdateEmitter ( var deltaTime)
 This function is called before the ParticleSystem update-loop where all particles are traversed(internal method). More...
 
local preUpdateEmitter ( local deltaTime)
 This function is called before the ParticleSystem update-loop where all particles are traversed(internal method). More...
 
virtual void updateEmitter (Particle3D *particle, float deltaTime) override
 This function is called when the ParticleSystem update-loop where all particles are traversed(internal method). More...
 
virtual void postUpdateEmitter (float deltaTime)
 This function is called after the ParticleSystem update-loop where all particles are traversed(internal method). More...
 
local postUpdateEmitter ( local deltaTime)
 This function is called after the ParticleSystem update-loop where all particles are traversed(internal method). More...
 
virtual void emit (int count) override
 Overwrite function.
 
void setLocalPosition (const Vec3 &pos)
 Set position of emitter. More...
 
const Vec3 getLocalPosition () const
 Get position of emitter. More...
 
const Vec3getDerivedPosition ()
 Calculate the world position of the emitter. More...
 
void setEnabled (bool enabled)
 Set the emitter enable or disable. More...
 
bool isEnabled (void) const
 Get the emitter enabled. More...
 
bool isEmitterDone () const
 Is the emitter emission done. More...
 
const std::string & getEmitterType (void) const
 Get the emitter type. More...
 
void setEmitterType (const std::string &emitterType)
 Set the emitter type. More...
 
const std::string & getName (void) const
 Get the name of emitter. More...
 
void setName (const std::string &name)
 Set the name of emitter. More...
 
PUDynamicAttributegetDynAngle (void) const
 Get the emission angle attribute. More...
 
local getDynAngle ()
 Get the emission angle attribute. More...
 
void setDynAngle (PUDynamicAttribute *dynAngle)
 Set the emission angle attribute. More...
 
PUDynamicAttributegetDynEmissionRate (void) const
 Get the emission rate attribute. More...
 
void setDynEmissionRate (PUDynamicAttribute *dynEmissionRate)
 Set the emission rate attribute. More...
 
PUDynamicAttributegetDynTotalTimeToLive (void) const
 Get the time to live attribute. More...
 
void setDynTotalTimeToLive (PUDynamicAttribute *dynTotalTimeToLive)
 Set the time to live attribute. More...
 
PUDynamicAttributegetDynParticleMass (void) const
 Get the mass of emission particle. More...
 
void setDynParticleMass (PUDynamicAttribute *dynParticleMass)
 Set the mass of emission particle. More...
 
PUDynamicAttributegetDynVelocity (void) const
 Get the emission velocity. More...
 
void setDynVelocity (PUDynamicAttribute *dynVelocity)
 Set the emission velocity. More...
 
PUDynamicAttributegetDynDuration (void) const
 Get the emission duration. More...
 
void setDynDuration (PUDynamicAttribute *dynDuration)
 Set the emission duration. More...
 
void setDynDurationSet (bool durationSet)
 Whether use duration(unused means infinite time). More...
 
var setDynDurationSet ( var durationSet)
 Whether use duration(unused means infinite time). More...
 
local setDynDurationSet ( local durationSet)
 Whether use duration(unused means infinite time). More...
 
PUDynamicAttributegetDynRepeatDelay (void) const
 Get the delay of repeat emission. More...
 
local getDynRepeatDelay ()
 Get the delay of repeat emission. More...
 
void setDynRepeatDelay (PUDynamicAttribute *dynRepeatDelay)
 Set the delay of repeat emission. More...
 
void setDynRepeatDelaySet (bool repeatDelaySet)
 Whether use delay of repeat emission(unused means emit once). More...
 
PUDynamicAttributegetDynParticleAllDimensions (void) const
 Get the all dimensions attribute of particle. More...
 
local getDynParticleAllDimensions ()
 Get the all dimensions attribute of particle. More...
 
void setDynParticleAllDimensions (PUDynamicAttribute *dynParticleAllDimensions)
 Set the all dimensions attribute of particle. More...
 
void setDynParticleAllDimensionsSet (bool particleAllDimensionsSet)
 Whether use all dimensions setting. More...
 
PUDynamicAttributegetDynParticleWidth (void) const
 Get the attribute of particle width. More...
 
void setDynParticleWidth (PUDynamicAttribute *dynParticleWidth)
 Set the attribute of particle width. More...
 
void setDynParticleWidthSet (bool particleWidthSet)
 Whether use the attribute of particle width. More...
 
PUDynamicAttributegetDynParticleHeight (void) const
 Get the attribute of particle height. More...
 
void setDynParticleHeight (PUDynamicAttribute *dynParticleHeight)
 Set the attribute of particle height. More...
 
void setDynParticleHeightSet (bool particleHeightSet)
 Whether use the attribute of particle height. More...
 
PUDynamicAttributegetDynParticleDepth (void) const
 Get the attribute of particle depth. More...
 
void setDynParticleDepth (PUDynamicAttribute *dynParticleDepth)
 Set the attribute of particle depth. More...
 
void setDynParticleDepthSet (bool particleDepthSet)
 Whether use the attribute of particle depth. More...
 
const std::string & getEmitsName (void) const
 Todo. More...
 
void setEmitsName (const std::string &emitsName)
 Set the name of emits. More...
 
PUParticle3D::ParticleType getEmitsType () const
 Get the type of emits. More...
 
local getEmitsType ()
 Get the type of emits. More...
 
void setEmitsType (PUParticle3D::ParticleType type)
 Set the type of emits. More...
 
RefgetEmitsEntityPtr () const
 Get the pointer of emits(PUEmitter, PUParticleSystem3D, etc). More...
 
bool isMarkedForEmission () const
 Whether this emitter marked for emission. More...
 
void setMarkedForEmission (bool isMarked)
 Set this emitter marked for emission. More...
 
const Vec3getParticleDirection (void)
 Returns the base direction of the particle that is going to be emitted. More...
 
const Vec3getOriginalParticleDirection (void) const
 Returns the originally set particle direction. More...
 
const QuaterniongetParticleOrientation (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 QuaterniongetParticleOrientationRangeStart (void) const
 Returns the start orientation of the particle that is going to be emitted The start orientation.
 
void setParticleOrientationRangeStart (const Quaternion &orientationRangeStart)
 Set start orientation of the particle that is going to be emitted. More...
 
const QuaterniongetParticleOrientationRangeEnd (void) const
 Returns the end orientation of the particle that is going to be emitted. More...
 
local getParticleOrientationRangeEnd ()
 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
 Whether use auto direction. More...
 
void setAutoDirection (bool autoDirection)
 Set use auto direction. More...
 
bool isForceEmission (void) const
 Whether force emission. More...
 
void setForceEmission (bool forceEmission)
 Set force emission. More...
 
const Vec4getParticleColor (void) const
 Get the color of a particle that will be emitted. More...
 
local getParticleColor ()
 Get the color of a particle that will be emitted. More...
 
void setParticleColor (const Vec4 &particleColour)
 Set the color of an emitted particle. More...
 
const Vec4getParticleColorRangeStart (void) const
 Get the color range start of an emitted particle. More...
 
void setParticleColorRangeStart (const Vec4 &particleColourRangeStart)
 Set the color range start of an emitted particle The color range start.
 
const Vec4getParticleColorRangeEnd (void) const
 Get the color range end of an emitted particle. More...
 
var getParticleColorRangeEnd ()
 Get the color range end of an emitted particle. More...
 
local getParticleColorRangeEnd ()
 Get the color range end of an emitted particle. More...
 
void setParticleColorRangeEnd (const Vec4 &particleColourRangeEnd)
 Set the color range end of an emitted particle The color range end.
 
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...
 
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...
 
bool isKeepLocal (void) const
 Whether use local coordinate system. More...
 
void setKeepLocal (bool keepLocal)
 Set use local coordinate system, 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 The transformed particle.
 
- Public Member Functions inherited from Particle3DEmitter
void setEnabled (bool enabled)
 Set the emitter enable or disable. More...
 
bool isEnabled (void) const
 Get the emitter enabled. More...
 
- Public Member Functions inherited from Ref
void retain ()
 Retains the ownership. More...
 
local retain ()
 Retains the ownership. More...
 
void release ()
 Releases the ownership immediately. More...
 
Refautorelease ()
 Releases the ownership sometime soon automatically. More...
 
unsigned int getReferenceCount () const
 Returns the Ref's current reference count. More...
 
local getReferenceCount ()
 Returns the Ref's current reference count. More...
 
virtual ~Ref ()
 Destructor.
 

Additional Inherited Members

- Public Attributes inherited from Ref
unsigned int _ID
 object id, ScriptSupport need public _ID
 
local _ID
 object id, ScriptSupport need public _ID
 
int _luaID
 Lua reference id.
 
local _luaID
 Lua reference id.
 
void * _scriptObject
 scriptObject, support for swift
 
local _scriptObject
 scriptObject, support for swift
 
bool _rooted
 When true, it means that the object was already rooted.
 
local _rooted
 When true, it means that the object was already rooted.
 
bool _scriptOwned
 The life of the object is scrolled by the scripting engine. More...
 
local _scriptOwned
 The life of the object is scrolled by the scripting engine. More...
 
- Static Public Attributes inherited from PUEmitter
static const bool DEFAULT_ENABLED
 Default enabled.
 
var DEFAULT_ENABLED
 Default enabled.
 
local DEFAULT_ENABLED
 Default enabled.
 
static const Vec3 DEFAULT_POSITION
 Default position.
 
var DEFAULT_POSITION
 Default position.
 
local DEFAULT_POSITION
 Default position.
 
static const bool DEFAULT_KEEP_LOCAL
 Default whether use local coordinate system.
 
var DEFAULT_KEEP_LOCAL
 Default whether use local coordinate system.
 
local DEFAULT_KEEP_LOCAL
 Default whether use local coordinate system.
 
static const Vec3 DEFAULT_DIRECTION
 Default emitted direction.
 
var DEFAULT_DIRECTION
 Default emitted direction.
 
local DEFAULT_DIRECTION
 Default emitted direction.
 
static const Quaternion DEFAULT_ORIENTATION
 Default emitted orientation.
 
var DEFAULT_ORIENTATION
 Default emitted orientation.
 
local DEFAULT_ORIENTATION
 Default emitted orientation.
 
static const Quaternion DEFAULT_ORIENTATION_RANGE_START
 Default emitted starting orientation.
 
var DEFAULT_ORIENTATION_RANGE_START
 Default emitted starting orientation.
 
local DEFAULT_ORIENTATION_RANGE_START
 Default emitted starting orientation.
 
static const Quaternion DEFAULT_ORIENTATION_RANGE_END
 Default emitted ending orientation.
 
static const unsigned short DEFAULT_START_TEXTURE_COORDS
 Default texture starting coords.
 
static const unsigned short DEFAULT_END_TEXTURE_COORDS
 Default texture ending coords.
 
static const unsigned short DEFAULT_TEXTURE_COORDS
 Default texture coords.
 
static const Vec4 DEFAULT_START_COLOUR_RANGE
 Default color starting range.
 
static const Vec4 DEFAULT_END_COLOUR_RANGE
 Default color ending range.
 
var DEFAULT_END_COLOUR_RANGE
 Default color ending range.
 
local DEFAULT_END_COLOUR_RANGE
 Default color ending range.
 
static const Vec4 DEFAULT_COLOUR
 Default color.
 
local DEFAULT_COLOUR
 Default color.
 
static const bool DEFAULT_AUTO_DIRECTION
 Default whether use auto direction.
 
static const bool DEFAULT_FORCE_EMISSION
 Default whether force emission.
 
var DEFAULT_FORCE_EMISSION
 Default whether force emission.
 
local DEFAULT_FORCE_EMISSION
 Default whether force emission.
 
static const float DEFAULT_EMISSION_RATE
 Default emission rate.
 
var DEFAULT_EMISSION_RATE
 Default emission rate.
 
local DEFAULT_EMISSION_RATE
 Default emission rate.
 
static const float DEFAULT_TIME_TO_LIVE
 Default particle time to live.
 
var DEFAULT_TIME_TO_LIVE
 Default particle time to live.
 
local DEFAULT_TIME_TO_LIVE
 Default particle time to live.
 
static const float DEFAULT_MASS
 Default particle mass.
 
static const float DEFAULT_VELOCITY
 Default particle velocity.
 
static const float DEFAULT_DURATION
 Default emitted duration.
 
var DEFAULT_DURATION
 Default emitted duration.
 
local DEFAULT_DURATION
 Default emitted duration.
 
static const float DEFAULT_REPEAT_DELAY
 Default emitted repeat delay.
 
var DEFAULT_REPEAT_DELAY
 Default emitted repeat delay.
 
local DEFAULT_REPEAT_DELAY
 Default emitted repeat delay.
 
static const float DEFAULT_ANGLE
 Default emitted angle.
 
static const float DEFAULT_DIMENSIONS
 Default emitted particle dimensions.
 
var DEFAULT_DIMENSIONS
 Default emitted particle dimensions.
 
local DEFAULT_DIMENSIONS
 Default emitted particle dimensions.
 
static const float DEFAULT_WIDTH
 Default emitted particle width.
 
static const float DEFAULT_HEIGHT
 Default emitted particle height.
 
static const float DEFAULT_DEPTH
 Default emitted particle depth.
 
var DEFAULT_DEPTH
 Default emitted particle depth.
 
local DEFAULT_DEPTH
 Default emitted particle depth.
 

Detailed Description

The MeshSurfaceEmitter is a ParticleEmitter that emits particles on the surface of a mesh.

Remarks
There are several ways of emitting it on the surface, from the vertices, edges and faces of a mesh. It is also possible to define whether more particles emit on larger faces.

Member Function Documentation

const std::string& getMeshName ( void  ) const

Returns the mesh name.

The mesh nam.

var getMeshName (   )

Returns the mesh name.

The mesh nam.

local getMeshName (   )

Returns the mesh name.

The mesh nam.

void setMeshName ( const std::string &  meshName,
bool  doBuild = true 
)

Sets the mesh name.

The index of triangle. If need build mesh.

var setMeshName ( var  meshName,
var  doBuild = true 
)

Sets the mesh name.

The index of triangle. If need build mesh.

local setMeshName ( local  meshName,
local  doBuild = true 
)

Sets the mesh name.

The index of triangle. If need build mesh.

bool useNormals ( void  ) const

Returns whether use normal.

Whether use normal.

var useNormals (   )

Returns whether use normal.

Whether use normal.

local useNormals (   )

Returns whether use normal.

Whether use normal.

void setUseNormals ( bool  useNormals)

Set indication whether normals are used for the particle direction.

Whether use normal.

var setUseNormals ( var  useNormals)

Set indication whether normals are used for the particle direction.

Whether use normal.

local setUseNormals ( local  useNormals)

Set indication whether normals are used for the particle direction.

Whether use normal.

MeshInfo::MeshSurfaceDistribution
getDistribution
( ) const

Returns the type of particle distribution.

the type of particle distribution.

var getDistribution ( )

Returns the type of particle distribution.

the type of particle distribution.

local getDistribution ( )

Returns the type of particle distribution.

the type of particle distribution.

void setDistribution ( MeshInfo::MeshSurfaceDistribution  distribution)

Set the type of particle distribution on the surface of a mesh.

the type of particle distribution.

var setDistribution ( var  distribution)

Set the type of particle distribution on the surface of a mesh.

the type of particle distribution.

local setDistribution ( local  distribution)

Set the type of particle distribution on the surface of a mesh.

the type of particle distribution.

const Vec3& getScale ( void  ) const

Returns the scale of the mesh.

the scale.

var getScale (   )

Returns the scale of the mesh.

the scale.

local getScale (   )

Returns the scale of the mesh.

the scale.

void setScale ( const Vec3 scale)

Set the scale of the mesh.

the scale.

var setScale ( var  scale)

Set the scale of the mesh.

the scale.

local setScale ( local  scale)

Set the scale of the mesh.

the scale.

virtual void prepare ( )
overridevirtual

override.

Reimplemented from PUEmitter.

var prepare ( )
overridevirtual

override.

Reimplemented from PUEmitter.

local prepare ( )
overridevirtual

override.

Reimplemented from PUEmitter.

virtual void unPrepare ( )
overridevirtual

override.

Reimplemented from PUEmitter.

var unPrepare ( )
overridevirtual

override.

Reimplemented from PUEmitter.

local unPrepare ( )
overridevirtual

override.

Reimplemented from PUEmitter.

virtual void initParticlePosition ( PUParticle3D particle)
overridevirtual

override.

Reimplemented from PUEmitter.

var initParticlePosition ( var  particle)
overridevirtual

override.

Reimplemented from PUEmitter.

local initParticlePosition ( local  particle)
overridevirtual

override.

Reimplemented from PUEmitter.

virtual unsigned short
calculateRequestedParticles
( float  timeElapsed)
overridevirtual

override.

Reimplemented from PUEmitter.

var calculateRequestedParticles ( var  timeElapsed)
overridevirtual

override.

Reimplemented from PUEmitter.

local calculateRequestedParticles ( local  timeElapsed)
overridevirtual

override.

Reimplemented from PUEmitter.

virtual void initParticleDirection ( PUParticle3D particle)
overridevirtual

override.

Reimplemented from PUEmitter.

var initParticleDirection ( var  particle)
overridevirtual

override.

Reimplemented from PUEmitter.

local initParticleDirection ( local  particle)
overridevirtual

override.

Reimplemented from PUEmitter.

virtual PUMeshSurfaceEmitter* clone ( )
overridevirtual

override.

Implements PUEmitter.

var clone ( )
overridevirtual

override.

Implements PUEmitter.

local clone ( )
overridevirtual

override.

Implements PUEmitter.

virtual void copyAttributesTo ( PUEmitter emitter)
overridevirtual

override.

Reimplemented from PUEmitter.

var copyAttributesTo ( var  emitter)
overridevirtual

override.

Reimplemented from PUEmitter.

local copyAttributesTo ( local  emitter)
overridevirtual

override.

Reimplemented from PUEmitter.


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