Go native-only: remove the Python POC, move the Swift app to the top level

Adds --check (compile every effect without camera or window), EFFECTS.md
(the contract for writing effects) and AGENTS.md. The POC stays available
at the 'poc' tag.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Rasyidan Akbar F. 2026-10-05 20:33:18 +07:00
commit a20d3310db
29 changed files with 160 additions and 775 deletions

13
effects/liquid.metal Normal file
View file

@ -0,0 +1,13 @@
// Liquid trails: the previous output is dragged along the motion, swirled a little,
// and slowly fades back to the live picture.
// order 45
// slider persistence 0.0 0.99 0.92
// slider drag 0.0 6.0 2.5
// slider swirl 0.0 0.01 0.002
float4 effect(float2 uv, Inputs in) {
float2 centred = uv - 0.5;
float2 from = uv - in.flow.sample(in.smp, uv).xy * in.p.drag + float2(-centred.y, centred.x) * in.p.swirl;
float3 trail = in.prev.sample(in.smp, from).rgb;
float3 live = in.image.sample(in.smp, uv).rgb;
return float4(mix(live, trail, in.p.persistence), 1.0);
}