Patent ID: 7372463

Claim:
A method for intelligent parallel processing for scalable computer animation, comprising: receiving at a controlling animation server an animation frame from an animation client; distributing, from the controlling animation server, animation tasks for the received animation frame among one or more scalable animation servers, including the controlling animation server, by: (1) spatially partitioning animation tasks for the animation frame into animation volumes based on number of performers contained in a spatial volume and number of the one or more scalable animation servers such that the animation volumes are at least as numerous as the one or more scalable animation servers, (2) assigning the animation volumes to the one or more scalable animation servers, (3) if performers in animation volumes assigned to a scalable animation server are more numerous than maximum for the scalable animation server, reassigning excess performer animation tasks among one or more animation servers, (4) assigning weights to the animation volumes based on likelihood of performers to move across volume boundaries, (5) grouping the animation volumes together based on cumulative weights assigned, (6) re-calculating the weights utilizing statistical parameters from previous animation frames, and (7) distributing the animation volumes among the one or more scalable animation servers, wherein the animation volumes with higher weights are sent to animation servers with higher priorities; executing at the one or more scalable animation servers animation tasks contained in the animation volumes received from the controlling animation server; returning animation results to the animation client; and outputting resulting animation or simulations to one or more of: a display system, memory of the one or more scalable animation servers, and memory of the animation client.