motionlab/AGENTS.md
0xrsydn a20d3310db 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>
2026-10-05 20:33:18 +07:00

14 lines
824 B
Markdown

# MotionLab
A small native macOS app: camera in, a chain of Metal shader effects, out to a window, a recording or a virtual camera.
- **Adding or changing an effect:** read `EFFECTS.md` first. An effect is one file in `effects/`; the Swift code does not need to change.
- **Build:** `swift build -c release` (Command Line Tools are enough, no Xcode).
- **Check effects without a camera or window:** `.build/release/MotionLab --check`
- **Run:** `.build/release/MotionLab` (options are listed at the top of `Sources/MotionLab/main.swift`).
Layout:
- `Sources/MotionLab/` the app. `Shaders.swift` holds the wrapper every effect is compiled into; `Analysis.swift` computes the motion inputs; `Renderer.swift` runs the chain.
- `effects/` one `.metal` file per effect.
- `captures/` screenshots and recordings (not in git).