aurora
An auroral curtain, drawn as light rather than as a lit surface.
aurora
An auroral curtain, drawn as light rather than as a lit surface.
The mesh it shades is a vertical XY sheet whose normal runs along +Z, with
uv.x across it and uv.y up it — 0 at the base, 1 at the top. fragment()
builds the ray structure out of fBm across the width, gates it with a slow
envelope so sheets arrive and leave, and shapes it vertically with a hard lower
edge fading to nothing at the top. Colour runs green at the base through cyan
in the middle to violet at the top, and the violet only reaches full weight as
storm does.
vertex() folds the sheet out of its own plane, reading its clock from
v.time so the previous-frame evaluation reports where the fold stood then and
the curtain publishes a real motion vector.
Drive storm from carrington.timeline.storm(t) and intensity from how much
of the sky the shot wants. ripple is the fold amplitude in metres, ray_scale
how many ray periods fit across the sheet, and drift how fast they scroll.
Draw it with an additive, cull: none, depth_write: false material.
Scoped to this part · feeds back into the world's score.