40 lines
1.2 KiB
Text
Executable file
40 lines
1.2 KiB
Text
Executable file
# Adapted from "wonder 'bout" by zamuz (Winamp AVS / visbot.net)
|
|
# The original spawned Texer II ring sprites: ss = ss + .05 per frame,
|
|
# size = |ss| * min(w,h)*.006, random color & position on wrap,
|
|
# grow-scale sampled from the bass (getspec(.1,.1,0)).
|
|
name: wonder 'bout
|
|
author: zamuz (adapted)
|
|
mode: lines
|
|
blend: additive
|
|
persist: 0.88
|
|
linewidth: 1.8
|
|
|
|
[init]
|
|
n = 480
|
|
groups = 12
|
|
hue = 0
|
|
|
|
[frame]
|
|
# expansion speed rises with the smoothed bass (original: reg01 = .05/frame)
|
|
speed = 0.25 + bass_att * 0.9
|
|
hue = hue + dt * 0.1
|
|
|
|
[point]
|
|
g = floor(i * groups)
|
|
gi = frac(i * groups)
|
|
# per-ring phase, drifting at its own tempo
|
|
ph = frac(rand(g * 7.3 + 1) + time * speed * (0.7 + rand(g + 31) * 0.6))
|
|
px0 = rand(g + 3.7) * 1.7 - 0.85
|
|
py0 = rand(g + 9.1) * 1.7 - 0.85
|
|
rad = ph * (0.3 + bass * 0.6)
|
|
cr = rand(g + 21.7)
|
|
cg = rand(g + 15.3)
|
|
cb = rand(g + 27.9)
|
|
fade = (1 - ph) * (0.25 + ph * 2.2)
|
|
a = 6.28318 * (gi * 1.05 - 0.025)
|
|
x = px0 + cos(a) * rad / aspect
|
|
y = py0 + sin(a) * rad
|
|
red = cr * fade * (0.7 + 0.3 * sin(hue * 6.28318 + g))
|
|
green = cg * fade * (0.7 + 0.3 * sin(hue * 6.28318 + g + 2.09))
|
|
blue = cb * fade * (0.7 + 0.3 * sin(hue * 6.28318 + g + 4.19))
|
|
skip = if(below(gi, 0.025), 1, 0)
|