Annotations
This commit is contained in:
@@ -20,6 +20,8 @@ float4 shadeVideo(ShaderContext context)
|
||||
float2 p = (fragCoord + fragCoord - resolution) / resolution.y / safeScale;
|
||||
p -= center + float2(sin(seed * 6.2831853), cos(seed * 6.2831853)) * 0.035;
|
||||
|
||||
// Build a skewed coordinate system around an offset "black hole" so the
|
||||
// waves pinch and stretch instead of staying radially symmetric.
|
||||
float iterator = 0.2;
|
||||
float2 diagonal = normalize(float2(-1.0 + seed * 0.5, 1.0 - seed * 0.35));
|
||||
float2 blackholeCenter = p - iterator * diagonal;
|
||||
@@ -30,6 +32,8 @@ float4 shadeVideo(ShaderContext context)
|
||||
float2 v = singularitySpiral(c, time, iterator);
|
||||
float2 waves = float2(0.0001, 0.0001);
|
||||
|
||||
// Iterative sine feedback creates the accretion texture; the iterator value
|
||||
// also damps later steps to keep the pattern stable.
|
||||
for (; iterator < 9.0; iterator += 1.0)
|
||||
{
|
||||
waves += 1.0 + sin(v);
|
||||
@@ -40,6 +44,8 @@ float4 shadeVideo(ShaderContext context)
|
||||
float disk = 2.0 + diskRadius * diskRadius * (0.25 * safeTightness) - diskRadius;
|
||||
float centerDarkness = 0.5 + 1.0 / max(dot(c, c), 0.0001);
|
||||
float rim = 0.025 + abs(length(p) - safeRingRadius) * safeTightness;
|
||||
// Exponential falloff turns the accumulated wave field into bright rims and
|
||||
// a darker center without hard thresholds.
|
||||
float4 redBlueGradient = exp(c.x * float4(0.6, -0.4, -1.0, 0.0) * colorShift);
|
||||
float4 waveColor = waves.xyyx;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user