Rigidbody: Add option to choose mesh source for collision shapes
[blender.git] / source / blender / makesrna / intern / rna_rigidbody.c
index cc14e60f45a900618819fa5234afbf019734b7fa..34b0f6a335a02bd467b885c3a69544550de0e0ed 100644 (file)
@@ -76,6 +76,13 @@ EnumPropertyItem rigidbody_constraint_type_items[] = {
        {RBC_TYPE_MOTOR, "MOTOR", ICON_NONE, "Motor", "Drive rigid body around or along an axis"},
        {0, NULL, 0, NULL, NULL}};
 
+/* mesh source for collision shape creation */
+EnumPropertyItem rigidbody_mesh_source_items[] = {
+       {RBO_MESH_BASE, "BASE", 0, "Base", "Base mesh"},
+       {RBO_MESH_DEFORM, "DEFORM", 0, "Deform", "Deformations (shaps keys, deform modifiers"},
+       {RBO_MESH_FINAL, "FINAL", 0, "Final", "All modifiers"},
+       {0, NULL, 0, NULL, NULL}};
+
 
 #ifdef RNA_RUNTIME
 
@@ -769,6 +776,13 @@ static void rna_def_rigidbody_object(BlenderRNA *brna)
        RNA_def_property_clear_flag(prop, PROP_ANIMATABLE);
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
        
+       prop = RNA_def_property(srna, "mesh_source", PROP_ENUM, PROP_NONE);
+       RNA_def_property_enum_sdna(prop, NULL, "mesh_source");
+       RNA_def_property_enum_items(prop, rigidbody_mesh_source_items);
+       RNA_def_property_ui_text(prop, "Mesh Source", "Source of the mesh used to create collision shape");
+       RNA_def_property_clear_flag(prop, PROP_ANIMATABLE);
+       RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
+       
        /* booleans */
        prop = RNA_def_property(srna, "enabled", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", RBO_FLAG_DISABLED);