In order to runtime synthesize natural looking grasps on objects during grasp interaction, VirtualGrasp requires a preprocessing step of these objects. Like game developers know the concepts of “light baking” or “texture baking” in order to preprocess expensive computations and have faster access during runtime, we call the preprocessing of the objects object baking. Since object baking is for the purpose of dynamically synthesizing grasps, object baking is often referred to as “grasp baking” or “baking grasps”, and the baking result is referred to as “grasp DB”.

To bake an object, we need to access the 3D mesh data of the object. So if the 3D mesh data of the object changed, a new object baking is needed. Table below lists when a new bake is needed:

When do we need new baking Why?
Object mesh changed Because mesh defines object shape.
Object scale changed Because grasp depends on the object size.
Object pivot (origin) changed Because the shape analysis result is stored in the object’s coordinate frame.
If you have not baked your project, you can still enjoy the object interactive behaviors supported by object articulation. However, note that there will only be unnatural looking sticky hand like grasps (see grasp interaction type).

See VG_BakingClient to learn how to bake the objects in your Unity project.