1. A method for deforming an object based on training poses of the object, the method comprising: identifying a plurality of animation variables for the object, the animation variables spanning a pose space; receiving a plurality of training poses of the object, each training pose corresponding to specific values for the animation variables, each training pose having a shape of the object corresponding to the specific values for the animation variables; determining a plurality of clusters, wherein each cluster includes one or more training poses in the pose space, wherein at least one cluster of the plurality of clusters includes a plurality of training poses in the pose space, and wherein each training pose is within one cluster; receiving a new pose corresponding to new values for the animation variables, the new pose not being a training pose in a cluster of the plurality of clusters; for each of the plurality of clusters: calculating a bid point for the cluster based on a location of the new pose in the pose space relative to a location of the cluster in the pose space; calculating a contribution of each training pose within the cluster; determining a cluster-fitted shape based on one or more training poses of the cluster and their corresponding contributions; and determining a weight for each cluster-fitted shape; and calculating a weighted combination of each of the cluster-fitted shapes multiplied by the corresponding weight to obtain a new shape of the object corresponding to the new pose, the new shape configured for display on a display of a computer system that determined the new shape.