Without walls, consider the momentum of all balls.
Play the model to record a collision.
Model notes
Balls move on a frictionless plane. The engine finds the time of contact within each step, including multiple successive collisions.
Elasticity is the coefficient of restitution along the contact normal. Kinetic energy is conserved only in perfectly elastic collisions; walls exert external impulses on the balls.
The2D mode allows5–100% elasticity;0% is explored in1D or the inelastic mode. Sticking and tangential slipping are distinct models.
Radii normally follow mass at constant spherical density. Constant radius changes the corresponding mass distribution and geometry; it does not give the balls equal masses.
Before/after values are recorded at each collision event, not inferred from adjacent animation frames.