Inclusive prefix sum of weights per source.
Sources in use.
Four free floats per source (read by the shading and forces as source.data).
Velocity xyz and opacity per source (default 0, 0, 0, 1).
Scratch list of the sources kept, reused by fillSourceTable (no garbage per refresh).
x, y, z, weight per source.
Sum of weights.
A weighted list of spawn points that the CPU refreshes cheaply.
positionsiscount × 4floats (x, y, z, weight),dataiscount × 4free floats per source,motionis velocity and opacity per source (moving emitters: vehicle exhausts),cdfthe running sum of weights that the GPU binary-searches with a random number.