1. A method comprising: classifying individual ones of objects in a virtual world provided by software executing from a non-transitory medium on a processor of a network-connected server, into different kinds of objects, including, but not limited to, two or more of humanoid characters, assemblies of parts constrained by pinned rotary joints, liquid, gases, slurries, objects floating in liquid, projectiles, and large heavy objects; preparing a specific physics simulation engine optimized to simulate motion for each one of the kinds of objects into which objects in the virtual world are classified; determining that simulation is required for one of the objects in the virtual world; calling, from the plurality of specific simulation engines, the specific simulation engine optimized for objects of the kind of object for which it is determined that simulation is required; and applying the specific simulation engine to the state of the object for which it is determined simulation is required, determining any display change for that object.