Skip to content

Particle Class

Definition

Namespace: Brine2D.Systems.Rendering

Individual particle data. Position, velocity, and other properties are managed by ParticleSystem.

C#
public class Particle : Brine2D.Pooling.IPoolable

Inheritance System.Object → Particle

Implements IPoolable

Fields
FiredFractionTriggers Tracks which LifetimeFractionSubEmitter indices \(by position in the emitter's list\) have already fired for this particle, preventing double-triggers across frames. Null when no lifetime-fraction sub-emitters are configured.
TrailColors Per-slot sampled color recorded at the moment each trail position is written. Ensures trail segments reflect the particle's color at the time they were laid down, rather than the particle's current \(potentially faded\) color.
TrailFilled How many trail slots have been written since spawn. Capped at TrailPositions.Length. Used to avoid rendering unwritten \(zero\) slots at particle birth.
TrailFrameIndices Per-slot animation frame index recorded at the moment each trail position is written. Ensures trail segments use the frame that was active when that position was laid down, not the particle's current \(potentially advanced\) frame.
Properties
BaseSpeed Magnitude of BaseVelocity at spawn. Used as the reference speed for StartSpeedMultiplier / EndSpeedMultiplier.
BaseVelocity The non-gravity component of velocity. Updated each frame for damping and speed-over-lifetime. The public Brine2D.Systems.Rendering.Particle.Velocity equals BaseVelocity + GravityVelocity.
GravityVelocity Accumulated gravity contribution to velocity. Dampened alongside BaseVelocity when Damping is non-zero.