Urho3D::ParticleEffect Class Reference
Public Member Functions |
Static Public Member Functions |
Private Member Functions |
Private Attributes |
List of all members
Urho3D::ParticleEffect Class Reference
Particle effect definition. More...
#include <Urho3D/Graphics/ParticleEffect.h>
Inheritance diagram for Urho3D::ParticleEffect:
Collaboration diagram for Urho3D::ParticleEffect:
Public Member Functions | |
ParticleEffect (Context *context) | |
Construct. | |
virtual | ~ParticleEffect () |
Destruct. | |
virtual bool | BeginLoad (Deserializer &source) |
Load resource from stream. May be called from a worker thread. Return true if successful. | |
virtual bool | EndLoad () |
Finish resource loading. Always called from the main thread. Return true if successful. | |
virtual bool | Save (Serializer &dest) const |
Save resource. Return true if successful. | |
bool | Save (XMLElement &dest) const |
Save resource to XMLElement. Return true if successful. | |
bool | Load (const XMLElement &source) |
Load resource from XMLElement synchronously. Return true if successful. | |
void | SetMaterial (Material *material) |
Set material. | |
void | SetNumParticles (unsigned num) |
Set maximum number of particles. | |
void | SetUpdateInvisible (bool enable) |
Set whether to update when particles are not visible. | |
void | SetRelative (bool enable) |
Set whether billboards are relative to the scene node. | |
void | SetScaled (bool enable) |
Set whether scene node scale affects billboards' size. | |
void | SetSorted (bool enable) |
Set whether billboards are sorted by distance. | |
void | SetFixedScreenSize (bool enable) |
Set whether billboards have fixed size on screen (measured in pixels) regardless of distance to camera. | |
void | SetAnimationLodBias (float lodBias) |
Set animation LOD bias. | |
void | SetEmitterType (EmitterType type) |
Set emitter type. | |
void | SetEmitterSize (const Vector3 &size) |
Set emitter size. | |
void | SetMinDirection (const Vector3 &direction) |
Set negative direction limit. | |
void | SetMaxDirection (const Vector3 &direction) |
Set positive direction limit. | |
void | SetConstantForce (const Vector3 &force) |
Set constant force acting on particles. | |
void | SetDampingForce (float force) |
Set particle velocity damping force. | |
void | SetActiveTime (float time) |
Set emission active period length (0 = infinite.) | |
void | SetInactiveTime (float time) |
Set emission inactive period length (0 = infinite.) | |
void | SetMinEmissionRate (float rate) |
Set minimum emission rate. | |
void | SetMaxEmissionRate (float rate) |
Set maximum emission rate. | |
void | SetMinParticleSize (const Vector2 &size) |
Set particle minimum size. | |
void | SetMaxParticleSize (const Vector2 &size) |
Set particle maximum size. | |
void | SetMinTimeToLive (float time) |
Set particle minimum time to live. | |
void | SetMaxTimeToLive (float time) |
Set particle maximum time to live. | |
void | SetMinVelocity (float velocity) |
Set particle minimum velocity. | |
void | SetMaxVelocity (float velocity) |
Set particle maximum velocity. | |
void | SetMinRotation (float rotation) |
Set particle minimum rotation. | |
void | SetMaxRotation (float rotation) |
Set particle maximum rotation. | |
void | SetMinRotationSpeed (float speed) |
Set particle minimum rotation speed. | |
void | SetMaxRotationSpeed (float speed) |
Set particle maximum rotation speed. | |
void | SetSizeAdd (float sizeAdd) |
Set particle size additive modifier. | |
void | SetSizeMul (float sizeMul) |
Set particle size multiplicative modifier. | |
void | SetFaceCameraMode (FaceCameraMode mode) |
Set how the particles should rotate in relation to the camera. Default is to follow camera rotation on all axes (FC_ROTATE_XYZ.) | |
void | AddColorTime (const Color &color, const float time) |
Add a color frame sorted in the correct position based on time. | |
void | AddColorFrame (const ColorFrame &colorFrame) |
Add a color frame sorted in the correct position based on time. | |
void | RemoveColorFrame (unsigned index) |
Remove color frame at index. | |
void | SetColorFrames (const Vector< ColorFrame > &colorFrames) |
Set color animation of particles. | |
void | SetColorFrame (unsigned index, const ColorFrame &colorFrame) |
Set color animation frame at index. If index is greater than number of color frames, new color frames are added. | |
void | SetNumColorFrames (unsigned number) |
Set number of color frames. | |
void | SortColorFrames () |
Sort the list of color frames based on time. | |
void | AddTextureTime (const Rect &uv, const float time) |
Add a texture frame sorted in the correct position based on time. | |
void | AddTextureFrame (const TextureFrame &textureFrame) |
Add a texture frame sorted in the correct position based on time. | |
void | RemoveTextureFrame (unsigned index) |
Remove texture frame at index. | |
void | SetTextureFrames (const Vector< TextureFrame > &animation) |
Set particle texture animation. | |
void | SetTextureFrame (unsigned index, const TextureFrame &textureFrame) |
Set number of texture animation frames. | |
void | SetNumTextureFrames (unsigned number) |
Set number of texture frames. | |
void | SortTextureFrames () |
Sort the list of texture frames based on time. | |
SharedPtr< ParticleEffect > | Clone (const String &cloneName=String::EMPTY) const |
Clone the particle effect. More... | |
Material * | GetMaterial () const |
Return material. | |
unsigned | GetNumParticles () const |
Return maximum number of particles. | |
bool | GetUpdateInvisible () const |
Return whether to update when particles are not visible. | |
bool | IsRelative () const |
Return whether billboards are relative to the scene node. | |
bool | IsScaled () const |
Return whether scene node scale affects billboards' size. | |
bool | IsSorted () const |
Return whether billboards are sorted. | |
bool | IsFixedScreenSize () const |
Return whether billboards are fixed screen size. | |
float | GetAnimationLodBias () const |
Return animation Lod bias. | |
EmitterType | GetEmitterType () const |
Return emitter type. | |
const Vector3 & | GetEmitterSize () const |
Return emitter size. | |
const Vector3 & | GetMinDirection () const |
Return negative direction limit. | |
const Vector3 & | GetMaxDirection () const |
Return positive direction limit. | |
const Vector3 & | GetConstantForce () const |
Return constant force acting on particles. | |
float | GetDampingForce () const |
Return particle velocity damping force. | |
float | GetActiveTime () const |
Return emission active period length (0 = infinite.) | |
float | GetInactiveTime () const |
Return emission inactive period length (0 = infinite.) | |
float | GetMinEmissionRate () const |
Return minimum emission rate. | |
float | GetMaxEmissionRate () const |
Return maximum emission rate. | |
const Vector2 & | GetMinParticleSize () const |
Return particle minimum size. | |
const Vector2 & | GetMaxParticleSize () const |
Return particle maximum size. | |
float | GetMinTimeToLive () const |
Return particle minimum time to live. | |
float | GetMaxTimeToLive () const |
Return particle maximum time to live. | |
float | GetMinVelocity () const |
Return particle minimum velocity. | |
float | GetMaxVelocity () const |
Return particle maximum velocity. | |
float | GetMinRotation () const |
Return particle minimum rotation. | |
float | GetMaxRotation () const |
Return particle maximum rotation. | |
float | GetMinRotationSpeed () const |
Return particle minimum rotation speed. | |
float | GetMaxRotationSpeed () const |
Return particle maximum rotation speed. | |
float | GetSizeAdd () const |
Return particle size additive modifier. | |
float | GetSizeMul () const |
Return particle size multiplicative modifier. | |
const Vector< ColorFrame > & | GetColorFrames () const |
Return all color animation frames. | |
unsigned | GetNumColorFrames () const |
Return number of color animation frames. | |
const ColorFrame * | GetColorFrame (unsigned index) const |
Return a color animation frame, or null if outside range. | |
const Vector< TextureFrame > & | GetTextureFrames () const |
Return all texture animation frames. | |
unsigned | GetNumTextureFrames () const |
Return number of texture animation frames. | |
const TextureFrame * | GetTextureFrame (unsigned index) const |
Return a texture animation frame, or null if outside range. | |
FaceCameraMode | GetFaceCameraMode () const |
Return how the particles rotate in relation to the camera. | |
Vector3 | GetRandomDirection () const |
Return random direction. | |
Vector2 | GetRandomSize () const |
Return random size. | |
float | GetRandomVelocity () const |
Return random velocity. | |
float | GetRandomTimeToLive () const |
Return random timetolive. | |
float | GetRandomRotationSpeed () const |
Return random rotationspeed. | |
float | GetRandomRotation () const |
Return random rotation. | |
Public Member Functions inherited from Urho3D::Resource | |
Resource (Context *context) | |
Construct. | |
bool | Load (Deserializer &source) |
Load resource synchronously. Call both BeginLoad() & EndLoad() and return true if both succeeded. | |
bool | LoadFile (const String &fileName) |
Load resource from file. | |
virtual bool | SaveFile (const String &fileName) const |
Save resource to file. | |
void | SetName (const String &name) |
Set name. | |
void | SetMemoryUse (unsigned size) |
Set memory use in bytes, possibly approximate. | |
void | ResetUseTimer () |
Reset last used timer. | |
void | SetAsyncLoadState (AsyncLoadState newState) |
Set the asynchronous loading state. Called by ResourceCache. Resources in the middle of asynchronous loading are not normally returned to user. | |
const String & | GetName () const |
Return name. | |
StringHash | GetNameHash () const |
Return name hash. | |
unsigned | GetMemoryUse () const |
Return memory use in bytes, possibly approximate. | |
unsigned | GetUseTimer () |
Return time since last use in milliseconds. If referred to elsewhere than in the resource cache, returns always zero. | |
AsyncLoadState | GetAsyncLoadState () const |
Return the asynchronous loading state. | |
Public Member Functions inherited from Urho3D::Object | |
Object (Context *context) | |
Construct. | |
virtual | ~Object () |
Destruct. Clean up self from event sender & receiver structures. | |
virtual StringHash | GetType () const =0 |
Return type hash. | |
virtual const String & | GetTypeName () const =0 |
Return type name. | |
virtual const TypeInfo * | GetTypeInfo () const =0 |
Return type info. | |
virtual void | OnEvent (Object *sender, StringHash eventType, VariantMap &eventData) |
Handle event. | |
bool | IsInstanceOf (StringHash type) const |
Check current instance is type of specified type. | |
bool | IsInstanceOf (const TypeInfo *typeInfo) const |
Check current instance is type of specified type. | |
template<typename T > | |
bool | IsInstanceOf () const |
Check current instance is type of specified class. | |
void | SubscribeToEvent (StringHash eventType, EventHandler *handler) |
Subscribe to an event that can be sent by any sender. | |
void | SubscribeToEvent (Object *sender, StringHash eventType, EventHandler *handler) |
Subscribe to a specific sender's event. | |
void | UnsubscribeFromEvent (StringHash eventType) |
Unsubscribe from an event. | |
void | UnsubscribeFromEvent (Object *sender, StringHash eventType) |
Unsubscribe from a specific sender's event. | |
void | UnsubscribeFromEvents (Object *sender) |
Unsubscribe from a specific sender's events. | |
void | UnsubscribeFromAllEvents () |
Unsubscribe from all events. | |
void | UnsubscribeFromAllEventsExcept (const PODVector< StringHash > &exceptions, bool onlyUserData) |
Unsubscribe from all events except those listed, and optionally only those with userdata (script registered events.) | |
void | SendEvent (StringHash eventType) |
Send event to all subscribers. | |
void | SendEvent (StringHash eventType, VariantMap &eventData) |
Send event with parameters to all subscribers. | |
VariantMap & | GetEventDataMap () const |
Return a preallocated map for event data. Used for optimization to avoid constant re-allocation of event data maps. | |
Context * | GetContext () const |
Return execution context. | |
const Variant & | GetGlobalVar (StringHash key) const |
Return global variable based on key. | |
const VariantMap & | GetGlobalVars () const |
Return all global variables. | |
void | SetGlobalVar (StringHash key, const Variant &value) |
Set global variable with the respective key and value. | |
Object * | GetSubsystem (StringHash type) const |
Return subsystem by type. | |
Object * | GetEventSender () const |
Return active event sender. Null outside event handling. | |
EventHandler * | GetEventHandler () const |
Return active event handler. Null outside event handling. | |
bool | HasSubscribedToEvent (StringHash eventType) const |
Return whether has subscribed to an event without specific sender. | |
bool | HasSubscribedToEvent (Object *sender, StringHash eventType) const |
Return whether has subscribed to a specific sender's event. | |
bool | HasEventHandlers () const |
Return whether has subscribed to any event. | |
template<class T > | |
T * | GetSubsystem () const |
Template version of returning a subsystem. | |
const String & | GetCategory () const |
Return object category. Categories are (optionally) registered along with the object factory. Return an empty string if the object category is not registered. | |
Public Member Functions inherited from Urho3D::RefCounted | |
RefCounted () | |
Construct. Allocate the reference count structure and set an initial self weak reference. | |
virtual | ~RefCounted () |
Destruct. Mark as expired and also delete the reference count structure if no outside weak references exist. | |
void | AddRef () |
Increment reference count. Can also be called outside of a SharedPtr for traditional reference counting. | |
void | ReleaseRef () |
Decrement reference count and delete self if no more references. Can also be called outside of a SharedPtr for traditional reference counting. | |
int | Refs () const |
Return reference count. | |
int | WeakRefs () const |
Return weak reference count. | |
RefCount * | RefCountPtr () |
Return pointer to the reference count structure. | |
Static Public Member Functions | |
static void | RegisterObject (Context *context) |
Register object factory. | |
Static Public Member Functions inherited from Urho3D::Object | |
static const TypeInfo * | GetTypeInfoStatic () |
Return type info static. | |
Private Member Functions | |
URHO3D_OBJECT (ParticleEffect, Resource) | |
void | GetFloatMinMax (const XMLElement &element, float &minValue, float &maxValue) |
Read a float range from an XML element. | |
void | GetVector2MinMax (const XMLElement &element, Vector2 &minValue, Vector2 &maxValue) |
Read a Vector2 range from an XML element. | |
void | GetVector3MinMax (const XMLElement &element, Vector3 &minValue, Vector3 &maxValue) |
Read a Vector3 from an XML element. | |
Private Attributes | |
SharedPtr< Material > | material_ |
Material. | |
unsigned | numParticles_ |
Number of particles. | |
bool | updateInvisible_ |
Update when invisible flag. | |
bool | relative_ |
Billboards relative flag. | |
bool | scaled_ |
Scale affects billboard scale flag. | |
bool | sorted_ |
Billboards sorted flag. | |
bool | fixedScreenSize_ |
Billboards fixed screen size flag. | |
float | animationLodBias_ |
Animation LOD bias. | |
EmitterType | emitterType_ |
Emitter shape. | |
Vector3 | emitterSize_ |
Emitter size. | |
Vector3 | directionMin_ |
Particle direction minimum. | |
Vector3 | directionMax_ |
Particle direction maximum. | |
Vector3 | constantForce_ |
Particle constant force. | |
float | dampingForce_ |
Particle velocity damping force. | |
float | activeTime_ |
Active period. | |
float | inactiveTime_ |
Inactive period. | |
float | emissionRateMin_ |
Particles per second minimum. | |
float | emissionRateMax_ |
Particles per second maximum. | |
Vector2 | sizeMin_ |
Particle size minimum. | |
Vector2 | sizeMax_ |
Particle size maximum. | |
float | timeToLiveMin_ |
Particle time to live minimum. | |
float | timeToLiveMax_ |
Particle time to live maximum. | |
float | velocityMin_ |
Particle velocity minimum. | |
float | velocityMax_ |
Particle velocity maximum. | |
float | rotationMin_ |
Particle rotation angle minimum. | |
float | rotationMax_ |
Particle rotation angle maximum. | |
float | rotationSpeedMin_ |
Particle rotation speed minimum. | |
float | rotationSpeedMax_ |
Particle rotation speed maximum. | |
float | sizeAdd_ |
Particle size additive parameter. | |
float | sizeMul_ |
Particle size multiplicative parameter. | |
Vector< ColorFrame > | colorFrames_ |
Particle color animation frames. | |
Vector< TextureFrame > | textureFrames_ |
Texture animation frames. | |
String | loadMaterialName_ |
Material name acquired during BeginLoad(). | |
FaceCameraMode | faceCameraMode_ |
Particle rotation mode in relation to the camera. | |
Additional Inherited Members | |
Protected Attributes inherited from Urho3D::Object | |
Context * | context_ |
Execution context. | |
Detailed Description
Particle effect definition.
Member Function Documentation
SharedPtr< ParticleEffect > Urho3D::ParticleEffect::Clone | ( | const String & | cloneName = String::EMPTY | ) | const |
Clone the particle effect.
- Todo:
- Zero if source was created programmatically
Here is the call graph for this function:
The documentation for this class was generated from the following files:
- Source/Urho3D/Graphics/ParticleEffect.h
- Source/Urho3D/Graphics/ParticleEffect.cpp