GPU curves: colour (rgb) + opacity (w) and size, CURVE_KEYS keys each in uniform arrays, so editing a curve never rebuilds a shader.
Readonly
Colour + opacity uniform array.
rgb colour + opacity keys.
Size uniform array.
Size keys (x used).
Colour (rgb) and opacity (w) at life t (0…1).
t
Copies the curves in.
Size multiplier at life t (0…1).
GPU curves: colour (rgb) + opacity (w) and size, CURVE_KEYS keys each in uniform arrays, so editing a curve never rebuilds a shader.