
Bouncing Balls (Real Physics)
PhysicsAny rendererReal physics8 seconds
A long line of dominoes topples one after another, simulated with real forces — then the camera pulls back.
Your current settings go with it. Combine several clips and hand them over together from your sequence.
Presets
Distance between dominoes as a fraction of their height. Closer falls faster.
How hard the first domino is flicked. Too soft and it will not tip — that is physics.
9.81 behaves like metre-tall dominoes. Raise it for a quicker, smaller-looking chain.
The preview runs the same code your AI receives. These settings travel with the hand-off.
Push the first domino and watch the wave run down the line. Each domino is simulated with gravity and contact forces, so the speed of the wave, the way pieces lean on each other and the final resting angles come from the physics rather than a keyframed animation. Change how many dominoes there are, how far apart they stand, how hard the first one is pushed and the colour gradient along the line.
src/domino-chain.js is the ingredient your AI reuses. demo.js is only the example scene around it, and uses the demo harness only for the demo.
src/domino-chain.jssimulateDominoChain({ count?, spacing?, thickness?, gravity?, push?, fps?, durationSeconds?, stepHz? }) => { angleAt(frame, i), pivotX(i), frontAt(frame), count, spacing, thickness, height, frameCount, stats }drawDomino(ctx, sim, frame, i, view, fill?, pip?) => voidapw-runtime@1.0.0 (demo) — Demo harness and colour helpers. src/domino-chain.js has no dependencies.Coordinates: Side view. Domino height = 1 unit, floor at y = 0, domino i pivots on its front-bottom edge at x = i × spacing.
Lighting: None (motion only).
Timing: Bake once; frames are random-access lookups.
npm install
npm run render -- domino-chain/1.1.0 --out my-video.mp4Needs Node 18+, ffmpeg and Chrome/Chromium. Add --params my-settings.json (from Copy settings) for your own settings.sha256:67bd6f2636033cde… · other versions: 1.0.0
PhysicsAny rendererReal physics8 seconds

Full example3DReal physics8 seconds

3D object3DSeamless loop9.6 seconds

3D object3DSeamless loop12 seconds

MotionAny rendererSeamless loop4 seconds

3D object3DSeamless loop12 seconds

3D object3DSeamless loop16 seconds

3D object3DSeamless loop10 seconds