Particle Class
Definition
Namespace: Brine2D.Systems.Rendering
Individual particle data. Position, velocity, and other properties are managed by ParticleSystem.
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. |