Class BaseShapeEmitter<T>
Base class that represents the base particle emitter.
Inheritance
BaseShapeEmitter<T>
Inherited Members
Namespace: Evergine.Framework.Particles.Shape
Assembly: Evergine.Framework.dll
Syntax
public abstract class BaseShapeEmitter<T> : BaseShapeEmitter where T : ShapeDescription
Type Parameters
Name | Description |
---|---|
T | The type of the emitter shape. |
Constructors
BaseShapeEmitter(T)
Initializes a new instance of the BaseShapeEmitter<T> class.
Declaration
public BaseShapeEmitter(T description)
Parameters
Type | Name | Description |
---|---|---|
T | description | The shape description. |
Fields
randomizeDirectionMode
The randomized mode of the emitter.
Declaration
protected EmitRandomized randomizeDirectionMode
Field Value
Type | Description |
---|---|
EmitRandomized |
Properties
Description
Gets the description of the shape.
Declaration
public T Description { get; }
Property Value
Type | Description |
---|---|
T |
RandomizeDirection
Gets or sets the directional randomness of the particle's emission velocity.
Declaration
[RenderPropertyAsFInput(0, 1, CustomPropertyName = "Randomized Direction", Tooltip = "Modifies the initial particle direction with a random direction.")]
public float RandomizeDirection { get; set; }
Property Value
Type | Description |
---|---|
float |
ShapeType
Gets the type of the shape.
Declaration
public override EmitterShapes ShapeType { get; }
Property Value
Type | Description |
---|---|
EmitterShapes |
Overrides
VelocityOffset
Gets or sets the directional randomness of the particle's emission velocity.
Declaration
[RenderProperty(CustomPropertyName = "Velocity Offset", Tooltip = "Vector added to the initial velocity.")]
public override Vector3 VelocityOffset { get; set; }
Property Value
Type | Description |
---|---|
Vector3 |
Overrides
Methods
BindShape(ComputeEmitterSimulator)
Sets the shape properties for the particle compute.
Declaration
public override void BindShape(ComputeEmitterSimulator computeEmitter)
Parameters
Type | Name | Description |
---|---|---|
ComputeEmitterSimulator | computeEmitter | The compute emitter simulator. |
Overrides
EmitParticleCPU(CPUEmitterSimulator, ref uint, ref Vector3, out Vector3)
CPU particle emission.
Declaration
protected abstract void EmitParticleCPU(CPUEmitterSimulator cpuEmitter, ref uint seed, ref Vector3 position, out Vector3 initDirection)
Parameters
Type | Name | Description |
---|---|---|
CPUEmitterSimulator | cpuEmitter | The CPU emitter simulator. |
uint | seed | The seed. |
Vector3 | position | The initial position. |
Vector3 | initDirection | The initial direction. |
RefreshShapeParameters(CommandBuffer, EmitterSimulator)
Refreshes the shape parameters.
Declaration
public override void RefreshShapeParameters(CommandBuffer commandBuffer, EmitterSimulator emitter)
Parameters
Type | Name | Description |
---|---|---|
CommandBuffer | commandBuffer | The command buffer. |
EmitterSimulator | emitter | The particle emitter. |
Overrides
UnbindShape(ComputeEmitterSimulator)
Unsets the shape properties for the particle compute.
Declaration
public override void UnbindShape(ComputeEmitterSimulator computeEmitter)
Parameters
Type | Name | Description |
---|---|---|
ComputeEmitterSimulator | computeEmitter | The compute emitter simulator. |