1. A method of generating weights on a 3D model in the form of a polygonal mesh for linear blend skinning (LBS) transformations based on an input mesh and a skeleton, the method comprising: receiving 3D mesh information and skeleton information related to the model; utilizing a plurality of representative structure preserving deformation exemplars of said skeleton taken from a manipulation space, optimizing said linear blend skinning weights for said deformities by optimizing for as rigid as possible (ARAP) transformations over said plurality of exemplars; and wherein said linear blend skinning weights deform a surface of said 3D mesh in an ARAP fashion when said skeleton is manipulated by a user.