BallEngine
Start free

The online
bouncing ball simulator

Set the physics, pick a container, press record. A bouncing ball simulator in your browser, made for short-form video.

  • Runs in your browser
  • Exports vertical 9:16 video
  • Free plan to start
Bouncing ball reel
bounce.beatsFollow

Most satisfying bouncing ball simulator 🔴✨ #satisfying #physics #fyp

Original physics simulation · BallEngine
Bouncing ball reel
@bounce.studio

Most satisfying bouncing ball simulator 🔴✨ #satisfying #physics #fyp

Original physics simulation · BallEngine
Bouncing ball reel
Dislike
Share
Remix
@bouncebeatsSubscribe

Most satisfying bouncing ball simulator 🔴✨ #satisfying #physics #fyp

Original physics simulation · BallEngine
Bouncing ball reel
Bounce Beats·Follow

Most satisfying bouncing ball simulator 🔴✨ #satisfying #physics #fyp

Original physics simulation · BallEngine
TikTokTikTok
Made in BallEngine, ready to post
Modes you can export
18
Export frame rate
60fps
Maximum resolution
4K
Native vertical canvas
9:16

A simulator built for videos people finish

A ball simulator is only useful if the run it produces holds attention. The controls here map to the things that actually change how a clip performs: how fast the ball accelerates, how many balls are on screen at once, how tight the container is, and what the collisions sound like.

Direct physics control

Gravity, bounciness, bounce randomness and ball weight are plain numeric fields. Change one, watch the run change immediately.

Gravity
0 to 0.5
Bounciness
0 to 2.0
Ball Weight
0.1 to 10

Balls that multiply

Accumulate lets one ball become hundreds at a steady pace, with a Max balls cap so the frame stays readable.

Audio mapped to impacts

Collisions drive note playback from a MIDI file or a song, so the sound is generated by the simulation rather than laid over it in an editor.

Why creators use BallEngine

Most bouncing ball tools are physics demos with a record button bolted on. This one is built the other way round, starting from what a short-form clip needs and exposing the physics that changes it.

Speed that escalates

Set a starting speed and a build-up rate so a run gets faster as it plays. This is what keeps a loop watchable past the first few seconds.

Vertical by default

The canvas is 9:16 from the start. No cropping step, no letterboxing, no reframing a square render for a phone.

Nothing to install

It runs in the browser on WebGL. There is a desktop build if you want one, but it is not required to export a finished video.

Saved configurations

Store a look you like and reload it later. Consistency across uploads matters more for a channel than any single clip.

Escalation is built in

Speed build-up, size growth and population caps exist as first-class settings because a run that stays at one intensity loses viewers partway through.

Modes with their own rules

Each mode has its own rules for how the balls move: rings to escape, balls that multiply, songs played by bounces, 3D marble runs and more. 18 are released today, and more 2D and 3D modes are in development.

How to make a bouncing ball video

A first export takes a few minutes. These are the steps in the order the studio presents them.

Start free
  1. 1

    Pick a simulation mode

    Start from Accumulate if you want balls to multiply, or Escape if you want a single ball working its way out of rotating rings. The mode sets which rules are active before you touch anything else.

  2. 2

    Set the container

    Choose the arena shape and its starting size. A tighter arena produces more collisions per second, which reads as more energetic but also more chaotic.

  3. 3

    Tune gravity and bounciness

    Gravity runs from 0 to 0.5 and bounciness from 0 to 2.0. Values above 1.0 add energy on every impact, so the run accelerates on its own without any speed settings.

  4. 4

    Add sound

    Attach a MIDI file or a song and each collision advances to the next note. Silent physics clips underperform against the same clip with audio mapped to impacts.

  5. 5

    Record and export

    Render to a vertical 9:16 file at up to 4K. The export runs off the main thread, so the preview stays responsive while it works.

18 modes, ready today

Each mode is its own simulation with its own rules. Press Make this, sign up free, and the Studio opens on that mode with a short tutorial that makes your first video with you.
  • Rhythmic Mode

    Every bounce plays the next note

    Make this
  • Escape Mode

    Break out through the rings

    Make this
  • Drawer Mode

    The ball paints as it moves

    Make this
  • Accumulate Mode

    One ball becomes hundreds

    Make this
  • Ghost Escape

    Find the gap, dodge the spikes

    Make this
  • Breaker Mode

    Smash the spiral apart

    Make this
  • Glass Tower

    Shatter a tower of glass plates

    Make this
  • Flag Battle

    Country flags battle down to one winner

    Make this
  • Weapon Ball Battle

    Armed balls fight to the last

    Make this
  • Merge Evolution

    Equal pieces merge into bigger ones until the final form

    Make this
  • Glass Rush

    Multiplier gates flood the arena until the glass breaks

    Make this
  • Wave 3D

    A 3D grid rippling in waves

    Make this
  • Marble Run 3D

    A marble plays a real instrument in sync

    Make this
  • Ball Crush 3D

    A heavier ball crushes the cubes each round

    Make this
  • Jelly 3D

    A jelly ball wobbles inside glass

    Make this
  • Cut Count 3D

    1 cut vs 40 cuts: sliced in the air, piled on the board

    Make this
  • Magnet 3D

    A magnet powers up until it encases itself in cubes

    Make this
  • Grid Merge

    Pictures on a grid merge in pairs until one final form

    Make this

Settings reference

Every control below is a real field in the Studio, with the range it accepts.
  • Gravity0 to 0.5Downward acceleration per frame. Zero produces a weightless run where balls travel in straight lines between impacts.
  • Bounciness0 to 2.0Restitution. Below 1.0 the run loses energy and settles; above 1.0 it gains energy on every contact.
  • Bounce Randomness0 to 1.0Jitter added to the reflection angle so repeated collisions do not fall into a visible loop.
  • Ball Weight0.1 to 10Mass used in collision response. Heavier balls displace lighter ones instead of deflecting off them.
  • Starting Arena Size10 to 800Radius of the container at frame zero.

What creators say

Marcus
Marcus
Podcast clipper and short-form editor

We clip podcasts and interviews for TikTok and Shorts. Adding bouncing ball videos to the bottom of the split screen doubled our watch time. It keeps people watching to the end instead of swiping away.

Cassian Vale
Cassian Vale
Runs several TikTok and Shorts channels in the US

After using BallEngine for a while and setting up my presets, running multiple TikTok channels got much easier. Several accounts now post every day on autopilot, and I no longer upload to each platform again and again.

Anonymous creator
Anonymous creator
Creator on TikTok, YouTube and Facebook

Once you pick a simulation mode, it works really well. I am now monetized on TikTok, YouTube Shorts and Facebook without ever showing my face.

One creator's result. Earnings vary and are not guaranteed.

What a ball simulator actually needs to do

The physics part of a bouncing ball simulator is not difficult. Reflecting a velocity vector off a surface and applying a constant downward acceleration covers most of it, and a competent developer can build that in an afternoon. This is why there are so many free bouncing ball demos online and why almost none of them are useful for making video.

The hard part is control. A clip that holds attention needs the run to change over its duration, needs the collisions to line up with audio, and needs to end at a definite moment rather than trailing off. Those requirements are what separate a simulator you can publish from a simulator you can watch.

That is the gap this tool is built to close. Gravity and bounciness are exposed because they set the character of the motion, but so are speed build-up rate, population ceilings, size growth curves and note mapping, because those are what determine whether a finished export is worth uploading.

Choosing gravity and bounciness together

These two settings interact more than any other pair. Bounciness is restitution, the fraction of speed retained through a collision. At exactly 1.0 a ball returns to the same height every time. Below that it settles toward the floor of the container. Above it, the ball gains energy on every contact and the run accelerates without you setting any speed values at all.

Gravity determines how quickly the ball returns to a surface, which sets the collision rate. High gravity with low bounciness gives a fast, tight, percussive run. Low gravity with high bounciness gives long floating arcs with widely spaced impacts. If you are syncing to music, the collision rate is effectively your tempo, so it is worth setting gravity before you attach the audio.

A practical starting point for a music-synced run is gravity near the middle of its range with bounciness just under 1.0, then raising bounce randomness slightly so repeated impacts do not settle into an obvious repeating pattern.

Why population caps matter more than they look

Accumulate runs are the format most associated with bouncing ball video, and the instinct is to push the count as high as it goes. Max balls tops out at 1,000, and in a small arena the frame stops reading as individual balls well before that. Past that point you are rendering texture, and the viewer loses the thing that made the format interesting, which is watching a countable number of balls become an uncountable one.

Max balls and Wait between new balls are the two controls that shape this. The cap sets where the run plateaus, and the wait sets how fast it gets there, so the interesting middle section gets its full share of the clip. Setting both deliberately is usually the difference between a run that builds and a run that simply fills.

Frequently asked questions

Help articles

Every help article in one place.

Your first video is minutes away

Grow a channel with videos only you can make.

Start free

Free to start, no card needed. Paid plans from $19/mo · See plans