arc
An electrical discharge crossing a gap, drawn on a ribbon standing between the two things it jumps between. `uv.y` runs from one terminal to the other and `uv.x` across the ribbon; the shader draws a channel that wanders across it, pinned at both ends because that is where it is…
arc
An electrical discharge crossing a gap, drawn on a ribbon standing between the
two things it jumps between. uv.y runs from one terminal to the other and
uv.x across the ribbon; the shader draws a channel that wanders across it,
pinned at both ends because that is where it is attached.
There is a white-hot core inside a wider sheath, a second channel that only appears while the strike is at its hardest, and a re-strike flicker — a gap does not conduct once and stop, it conducts in bursts until the voltage across it collapses.
One material serves a whole rack of arcs through lane 0 of the per-instance
data: .x is life, 1 at the strike falling to 0; .y is a seed so no two
channels wander together; .z is a per-arc brightness multiplier. An arc whose
life has reached zero returns nothing at all.
core_w and glow_w are the two widths as fractions of the ribbon, jag how
far the channel wanders, branch how strong the second channel is. Draw it with
an additive, cull: none, depth_write: false material.
Scoped to this part · feeds back into the world's score.