Class ParticleEmitter
- Namespace
- Lime
- Assembly
- Lime.dll
[TangerineNodeBuilder("BuildForTangerine")]
[TangerineAllowedChildrenTypes(new Type[] { typeof(ParticleModifier), typeof(EmitterShapePoint) })]
[TangerineVisualHintGroup("/All/Nodes/Particles", null)]
public class ParticleEmitter : Widget, IDisposable, IAnimatorHost, IRenderChainBuilder, IAnimable, ICloneable, ITangerinePreviewAnimationListener, IUpdatableNode, IMaterialComponentOwner
- Inheritance
-
ParticleEmitter
- Implements
- Inherited Members
- Extension Methods
Constructors
ParticleEmitter()
public ParticleEmitter()
Fields
GloballyEnabled
public static bool GloballyEnabled
Field Value
Particles
public List<ParticleEmitter.Particle> Particles
Field Value
Properties
Action
[TangerineKeyframeColor(1)]
public EmitterAction Action { get; set; }
Property Value
AlongPathOrientation
Whether particles are oriented along track.
[YuzuMember]
[TangerineKeyframeColor(16)]
public bool AlongPathOrientation { get; set; }
Property Value
AngularVelocity
Angular velocity of emitter (degrees)
[YuzuMember]
[TangerineKeyframeColor(30)]
public NumericRange AngularVelocity { get; set; }
Property Value
AspectRatio
Designates width to height ratio.
[YuzuMember]
[TangerineKeyframeColor(27)]
public NumericRange AspectRatio { get; set; }
Property Value
BurstDistance
Pixel distance to trigger burst-generation of particles. When BurstDistance > 0 ParticleEmitter will generate Number particles for every BurstDistance pixels of ParticleEmitter's movement.
[YuzuMember]
[Validation.Range(0, Infinity)]
[TangerineKeyframeColor(7)]
public float BurstDistance { get; set; }
Property Value
DefaultMaterial
public IMaterial DefaultMaterial { get; }
Property Value
Direction
Rotation angle of emitter (degrees, clockwise)
[YuzuMember]
[TangerineKeyframeColor(24)]
public NumericRange Direction { get; set; }
Property Value
EmissionType
[YuzuMember]
[TangerineKeyframeColor(10)]
public EmissionType EmissionType { get; set; }
Property Value
GravityAmount
[YuzuMember]
[TangerineKeyframeColor(21)]
public NumericRange GravityAmount { get; set; }
Property Value
GravityDirection
degrees (0 - right, 90 - down)
[YuzuMember]
[TangerineKeyframeColor(20)]
public NumericRange GravityDirection { get; set; }
Property Value
ImmortalParticles
Particles are generated once and live forever.
[YuzuMember]
[TangerineKeyframeColor(8)]
public bool ImmortalParticles { get; set; }
Property Value
InitialColor
Initial color of the particle at the moment of birth.
[YuzuMember]
public Color4 InitialColor { get; set; }
Property Value
Lifetime
Particle lifetime in seconds
[YuzuMember]
[TangerineKeyframeColor(25)]
public NumericRange Lifetime { get; set; }
Property Value
LinkageWidgetName
When ParticleLinkage is Other
this makes sense as name of widget particle emitter is linked to.
[YuzuMember]
[TangerineKeyframeColor(12)]
public string LinkageWidgetName { get; set; }
Property Value
MagnetAmount
[YuzuMember]
[TangerineKeyframeColor(22)]
public NumericRange MagnetAmount { get; set; }
Property Value
Material
public IMaterial Material { get; set; }
Property Value
Number
Number of particles generated per second.
[YuzuMember]
[TangerineKeyframeColor(13)]
public float Number { get; set; }
Property Value
NumberPerBurst
[YuzuMember]
public bool NumberPerBurst { get; set; }
Property Value
Orientation
Rotation angle of generated particles
[YuzuMember]
[TangerineKeyframeColor(23)]
public NumericRange Orientation { get; set; }
Property Value
ParticlesLinkage
[YuzuMember]
[TangerineKeyframeColor(11)]
public ParticlesLinkage ParticlesLinkage { get; set; }
Property Value
RandomMotionAspectRatio
[YuzuMember]
[TangerineKeyframeColor(2)]
public float RandomMotionAspectRatio { get; set; }
Property Value
RandomMotionRadius
[YuzuMember]
[TangerineKeyframeColor(31)]
public NumericRange RandomMotionRadius { get; set; }
Property Value
RandomMotionRotation
[YuzuMember]
[TangerineKeyframeColor(3)]
public NumericRange RandomMotionRotation { get; set; }
Property Value
RandomMotionSpeed
[YuzuMember]
[TangerineKeyframeColor(1)]
public NumericRange RandomMotionSpeed { get; set; }
Property Value
Seed
public int Seed { get; set; }
Property Value
Shape
[YuzuMember]
[TangerineKeyframeColor(9)]
public EmitterShape Shape { get; set; }
Property Value
SpawnBetweenFrames
[YuzuMember]
public bool SpawnBetweenFrames { get; set; }
Property Value
Speed
Update: delta *= Speed
[YuzuMember]
[TangerineKeyframeColor(15)]
public float Speed { get; set; }
Property Value
Spin
Angular velocity of particles.
[YuzuMember]
[TangerineKeyframeColor(29)]
public NumericRange Spin { get; set; }
Property Value
TimeShift
Simulate TimeShift seconds on first update.
[YuzuMember]
[TangerineKeyframeColor(14)]
public float TimeShift { get; set; }
Property Value
UV0
public Vector2 UV0 { get; }
Property Value
UV1
public Vector2 UV1 { get; }
Property Value
UseCustomSeed
public bool UseCustomSeed { get; set; }
Property Value
Velocity
[YuzuMember]
[TangerineKeyframeColor(28)]
public NumericRange Velocity { get; set; }
Property Value
WindAmount
[YuzuMember]
[TangerineKeyframeColor(19)]
public NumericRange WindAmount { get; set; }
Property Value
WindDirection
degrees (0 - right, 90 - down)
[YuzuMember]
[TangerineKeyframeColor(17)]
public NumericRange WindDirection { get; set; }
Property Value
Zoom
Scale of generated particles
[YuzuMember]
[TangerineKeyframeColor(26)]
public NumericRange Zoom { get; set; }
Property Value
Methods
AddToRenderChain(RenderChain)
Adds widget and all its descendants to render chain.
public override void AddToRenderChain(RenderChain chain)
Parameters
chain
RenderChain
ApplyAspectRatio(Vector2, float)
public static Vector2 ApplyAspectRatio(Vector2 scale, float aspectRatio)
Parameters
Returns
ApplyAspectRatio(float, float)
public static Vector2 ApplyAspectRatio(float zoom, float aspectRatio)
Parameters
Returns
ClearParticles()
public void ClearParticles()
DecomposeScale(Vector2, out float, out float)
public static void DecomposeScale(Vector2 scale, out float aspectRatio, out float zoom)
Parameters
DeleteAllParticles()
public void DeleteAllParticles()
Dispose()
Stops all tasks and calls Dispose of all descendants.
public override void Dispose()
DrawCustomShape(Color4, Color4, Matrix32)
public void DrawCustomShape(Color4 areaColor, Color4 lineColor, Matrix32 transform)
Parameters
GetLinkageWidget()
public Widget GetLinkageWidget()
Returns
GetRenderObject()
TODO: Add summary.
protected override RenderObject GetRenderObject()
Returns
OnTrigger(string, object, double)
Invokes when the trigger property has been changed by animation.
public override void OnTrigger(string property, object value, double animationTimeCorrection = 0)
Parameters
property
stringA property name.
value
objectA new property value.
animationTimeCorrection
doubleAn animation time correction.
OnUpdate(float)
public virtual void OnUpdate(float delta)
Parameters
delta
float
ResetRandom()
public void ResetRandom()