Table of Contents

Class InitialPositionArc

Namespace
Stride.Particles.Initializers
Assembly
Stride.Particles.dll

The InitialPositionArc is an initializer which sets the particle's initial position along a line or an arc

[DataContract("InitialPositionArc")]
[Display("Position (Arc)", null)]
public class InitialPositionArc : ParticleInitializer
Inheritance
InitialPositionArc
Inherited Members

Constructors

InitialPositionArc()

Default constructor which also registers the fields required by this updater

public InitialPositionArc()

Fields

ArcHeight

The height of the arc in the center, which is also subject to scale and rotation if inherited

[DataMember(20)]
[Display("Arc Height", null)]
public float ArcHeight

Field Value

float

FallbackTarget

In case the Target is null, the FallbackTarget offset will be used

[DataMember(12)]
[Display("Fallback Target", null)]
public Vector3 FallbackTarget

Field Value

Vector3

FixedLength

If positive, it will limit the number of possible positions where the particles can appear along the arc to the specified count. More particles will start appearing over from the biginning of the arc path.

[DataMember(35)]
[Display("Fixed Count", null)]
public int FixedLength

Field Value

int

Sequential

If true the particles will appear along the arc path in the order they are added. Otherwise, their positions will be random along the arc, not preserving the order of appearance.

[DataMember(30)]
[Display("Ordered", null)]
public bool Sequential

Field Value

bool

Target

An arc initializer needs a second point so that it can position the particles in a line or arc between two locators

[DataMember(10)]
[Display("Target", null)]
public TransformComponent Target

Field Value

TransformComponent

Properties

PositionMax

The right upper front corner of the box

[DataMember(42)]
[Display("Position max", null)]
public Vector3 PositionMax { get; set; }

Property Value

Vector3

PositionMin

The left bottom back corner of the box

[DataMember(40)]
[Display("Position min", null)]
public Vector3 PositionMin { get; set; }

Property Value

Vector3

SeedOffset

The seed offset used to match or separate random values

[DataMember(50)]
[Display("Random Seed", null)]
public uint SeedOffset { get; set; }

Property Value

uint

Methods

Initialize(ParticlePool, int, int, int)

Override Initialize if your module acts as an Initializer and change its type to Initializer

public override void Initialize(ParticlePool pool, int startIdx, int endIdx, int maxCapacity)

Parameters

pool ParticlePool

Particle pool to target

startIdx int

Starting index (included from the array)

endIdx int

End index (excluded from the array)

maxCapacity int

Max pool capacity (loops after this point) so that it's possible for (endIdx < startIdx)