Bunch of fixes for UI messages.
authorBastien Montagne <montagne29@wanadoo.fr>
Sun, 27 Jan 2013 18:14:24 +0000 (18:14 +0000)
committerBastien Montagne <montagne29@wanadoo.fr>
Sun, 27 Jan 2013 18:14:24 +0000 (18:14 +0000)
Also generate rigid body constraint types in py bullet code from RNA enum values (simpler than having to sync the code when something is changed here!).

Side note: RNA API about icons still needs to expose icons for enum values, and conversion funcs between icon_name and icon_value!

release/scripts/modules/bl_i18n_utils/spell_check_utils.py
release/scripts/startup/bl_operators/rigidbody.py
release/scripts/startup/bl_ui/space_view3d_toolbar.py
source/blender/editors/physics/rigidbody_object.c
source/blender/makesrna/intern/rna_rigidbody.c

index 1dcba6a62d152e2fdd9bd681b2ec204b45b8fb59..2aa3598e4a1e306458153a465846277f90f377f6 100644 (file)
@@ -246,6 +246,7 @@ dict_uimsgs = {
     "tri", "tris",
     "uv", "uvs", "uvw", "uw", "uvmap",
     "vec",
+    "vel",  # velocity!
     "vert", "verts",
     "vis",
     "xyz", "xzy", "yxz", "yzx", "zxy", "zyx",
@@ -311,6 +312,7 @@ dict_uimsgs = {
     "inpaint",
     "lightmap",
     "lossless", "lossy",
+    "matcap",
     "midtones",
     "mipmap", "mipmaps", "mip",
     "ngon", "ngons",
index bad861639323bcbcfb737119aeb8e7b526521056..50aecfd7c6336a94e64d69d6f0e4461d5d6b6e5e 100644 (file)
@@ -27,7 +27,7 @@ from bpy.props import EnumProperty
 class CopyRigidbodySettings(Operator):
     '''Copy Rigid Body settings from active object to selected'''
     bl_idname = "rigidbody.object_settings_copy"
-    bl_label = "Copy Rigidbody Settings"
+    bl_label = "Copy Rigid Body Settings"
     bl_options = {'REGISTER', 'UNDO'}
 
     @classmethod
@@ -190,23 +190,17 @@ class BakeToKeyframes(Operator):
 
 
 class ConnectRigidBodies(Operator):
-
-
     '''Connect selected rigid bodies to active'''
     bl_idname = "rigidbody.connect"
-    bl_label = "ConnectRigidBodies"
+    bl_label = "Connect Rigid Bodies"
     bl_options = {'REGISTER', 'UNDO'}
 
     con_type = EnumProperty(
         name="Type",
-        description="Type of generated contraint",
-        items=(('FIXED', "Fixed", "Glues ridig bodies together"),
-               ('POINT', "Point", "Constrains rigid bodies to move aound common pivot point"),
-               ('HINGE', "Hinge", "Restricts rigid body rotation to one axis"),
-               ('SLIDER', "Slider", "Restricts rigid boddy translation to one axis"),
-               ('PISTON', "Piston", "Restricts rigid boddy translation and rotation to one axis"),
-               ('GENERIC', "Generic", "Restricts translation and rotation to specified axes"),
-               ('GENERIC_SPRING', "Generic Spring", "Restricts translation and rotation to specified axes with springs")),
+        description="Type of generated constraint",
+        # XXX Would be nice to get icons too, but currently not possible ;)
+        items=tuple((e.identifier, e.name, e.description, e. value)
+                    for e in bpy.types.RigidBodyConstraint.bl_rna.properties["type"].enum_items),
         default='FIXED',)
 
     pivot_type = EnumProperty(
@@ -214,7 +208,7 @@ class ConnectRigidBodies(Operator):
         description="Constraint pivot location",
         items=(('CENTER', "Center", "Pivot location is between the constrained rigid bodies"),
                ('ACTIVE', "Active", "Pivot location is at the active object position"),
-               ('SELECTED', "Selected", "Pivot location is at the slected object position")),
+               ('SELECTED', "Selected", "Pivot location is at the selected object position")),
         default='CENTER',)
 
     @classmethod
index ca79c6cb7fa25bfd58a31bb7d8e96005dbbaf50b..0faac7cce3ff451cb04944c54ee6d9f29b79827c 100644 (file)
@@ -113,7 +113,7 @@ class VIEW3D_PT_tools_objectmode(View3DPanel, Panel):
 
 class VIEW3D_PT_tools_rigidbody(View3DPanel, Panel):
     bl_context = "objectmode"
-    bl_label = "Rigidbody Tools"
+    bl_label = "Rigid Body Tools"
     bl_options = {'DEFAULT_CLOSED'}
 
     def draw(self, context):
index fc1e24840a41c9c7afecb3abd2a3f5c1cbd310a6..38ed903a161f0bf3d30b32fdc68b31163fabb77b 100644 (file)
@@ -615,8 +615,7 @@ void RIGIDBODY_OT_mass_calculate(wmOperatorType *ot)
        ot->prop = prop = RNA_def_enum(ot->srna, "material",
                                       DummyRNA_DEFAULT_items, 0,
                                       "Material Preset",
-                                      "Type of material that objects are made of. "
-                                      "Determines material density");
+                                      "Type of material that objects are made of (determines material density)");
        RNA_def_enum_funcs(prop, rigidbody_materials_itemf);
 
        RNA_def_float(ot->srna, "density", 1.0, FLT_MIN, FLT_MAX,
index c1eb3b9b000b21c6936604aaf24bfba78502e3ce..938ef7a50321134ae102fc8f714e61bc5706b346 100644 (file)
@@ -55,19 +55,23 @@ EnumPropertyItem rigidbody_ob_shape_items[] = {
        {RB_SHAPE_CAPSULE, "CAPSULE", ICON_OUTLINER_OB_META, "Capsule", ""},
        {RB_SHAPE_CYLINDER, "CYLINDER", ICON_MESH_CYLINDER, "Cylinder", ""},
        {RB_SHAPE_CONE, "CONE", ICON_MESH_CONE, "Cone", ""},
-       {RB_SHAPE_CONVEXH, "CONVEX_HULL", ICON_MESH_ICOSPHERE, "Convex Hull", "A mesh-like surface encompassing (i.e. shrinkwrap over) all verts. Best results with fewer vertices"},
-       {RB_SHAPE_TRIMESH, "MESH", ICON_MESH_MONKEY, "Mesh", "Mesh consisting of triangles only, allowing for more detailed interactions than convex hulls"},
+       {RB_SHAPE_CONVEXH, "CONVEX_HULL", ICON_MESH_ICOSPHERE, "Convex Hull",
+                          "A mesh-like surface encompassing (i.e. shrinkwrap over) all vertices (best results with "
+                          "fewer vertices)"},
+       {RB_SHAPE_TRIMESH, "MESH", ICON_MESH_MONKEY, "Mesh",
+                          "Mesh consisting of triangles only, allowing for more detailed interactions than convex hulls"},
        {0, NULL, 0, NULL, NULL}};
 
 /* collision shapes of constraints in rigid body sim */
 EnumPropertyItem rigidbody_con_type_items[] = {
-       {RBC_TYPE_FIXED, "FIXED", ICON_FORCE_FORCE, "Fixed", "Glues rigid bodies together"},
-       {RBC_TYPE_POINT, "POINT", ICON_FORCE_FORCE, "Point", "Constrains rigid bodies to move aound common pivot point"},
-       {RBC_TYPE_HINGE, "HINGE", ICON_FORCE_FORCE, "Hinge", "Restricts rigid body rotation to one axis"},
-       {RBC_TYPE_SLIDER, "SLIDER", ICON_FORCE_FORCE, "Slider", "Restricts rigid boddy translation to one axis"},
-       {RBC_TYPE_PISTON, "PISTON", ICON_FORCE_FORCE, "Piston", "Restricts rigid boddy translation and rotation to one axis"},
-       {RBC_TYPE_6DOF, "GENERIC", ICON_FORCE_FORCE, "Generic", "Restricts translation and rotation to specified axes"},
-       {RBC_TYPE_6DOF_SPRING, "GENERIC_SPRING", ICON_FORCE_FORCE, "Generic Spring", "Restricts translation and rotation to specified axes with springs"},
+       {RBC_TYPE_FIXED, "FIXED", ICON_FORCE_FORCE, "Fixed", "Glue rigid bodies together"},
+       {RBC_TYPE_POINT, "POINT", ICON_FORCE_FORCE, "Point", "Constrain rigid bodies to move around common pivot point"},
+       {RBC_TYPE_HINGE, "HINGE", ICON_FORCE_FORCE, "Hinge", "Restrict rigid body rotation to one axis"},
+       {RBC_TYPE_SLIDER, "SLIDER", ICON_FORCE_FORCE, "Slider", "Restrict rigid body translation to one axis"},
+       {RBC_TYPE_PISTON, "PISTON", ICON_FORCE_FORCE, "Piston", "Restrict rigid body translation and rotation to one axis"},
+       {RBC_TYPE_6DOF, "GENERIC", ICON_FORCE_FORCE, "Generic", "Restrict translation and rotation to specified axes"},
+       {RBC_TYPE_6DOF_SPRING, "GENERIC_SPRING", ICON_FORCE_FORCE, "Generic Spring",
+                              "Restrict translation and rotation to specified axes with springs"},
        {0, NULL, 0, NULL, NULL}};
 
 
@@ -560,7 +564,7 @@ static void rna_def_rigidbody_world(BlenderRNA *brna)
        RNA_def_property_range(prop, 0.0f, 100.0f);
        RNA_def_property_ui_range(prop, 0.0f, 10.0f, 1, 3);
        RNA_def_property_float_default(prop, 1.0f);
-       RNA_def_property_ui_text(prop, "Time Scale", "Changes the speed of the simulation");
+       RNA_def_property_ui_text(prop, "Time Scale", "Change the speed of the simulation");
        RNA_def_property_update(prop, NC_SCENE, "rna_RigidBodyWorld_reset");
        
        /* timestep */
@@ -569,7 +573,9 @@ static void rna_def_rigidbody_world(BlenderRNA *brna)
        RNA_def_property_range(prop, 1, SHRT_MAX);
        RNA_def_property_ui_range(prop, 60, 1000, 1, 0);
        RNA_def_property_int_default(prop, 60);
-       RNA_def_property_ui_text(prop, "Steps Per Second", "Number of simulation steps taken per second (higher values are more accurate but slower)");
+       RNA_def_property_ui_text(prop, "Steps Per Second",
+                                "Number of simulation steps taken per second (higher values are more accurate "
+                                "but slower)");
        RNA_def_property_update(prop, NC_SCENE, "rna_RigidBodyWorld_reset");
        
        /* constraint solver iterations */
@@ -579,14 +585,18 @@ static void rna_def_rigidbody_world(BlenderRNA *brna)
        RNA_def_property_ui_range(prop, 10, 100, 1, 0);
        RNA_def_property_int_default(prop, 10);
        RNA_def_property_int_funcs(prop, NULL, "rna_RigidBodyWorld_num_solver_iterations_set", NULL);
-       RNA_def_property_ui_text(prop, "Solver Iterations", "Number of constraint solver iterations made per simulation step (higher values are more accurate but slower)");
+       RNA_def_property_ui_text(prop, "Solver Iterations",
+                                "Number of constraint solver iterations made per simulation step (higher values are more "
+                                "accurate but slower)");
        RNA_def_property_update(prop, NC_SCENE, "rna_RigidBodyWorld_reset");
        
        /* split impulse */
        prop = RNA_def_property(srna, "use_split_impulse", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBW_FLAG_USE_SPLIT_IMPULSE);
        RNA_def_property_boolean_funcs(prop, NULL, "rna_RigidBodyWorld_split_impulse_set");
-       RNA_def_property_ui_text(prop, "Split Impulse", "Reduces extra velocity that can build up when objects collide (lowers simulation stabilty a litte so use only when necessary)");
+       RNA_def_property_ui_text(prop, "Split Impulse",
+                                "Reduce extra velocity that can build up when objects collide (lowers simulation "
+                                "stability a little so use only when necessary)");
        RNA_def_property_update(prop, NC_SCENE, "rna_RigidBodyWorld_reset");
 
        /* cache */
@@ -626,7 +636,7 @@ static void rna_def_rigidbody_object(BlenderRNA *brna)
        prop = RNA_def_property(srna, "enabled", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", RBO_FLAG_DISABLED);
        RNA_def_property_boolean_funcs(prop, NULL, "rna_RigidBodyOb_disabled_set");
-       RNA_def_property_ui_text(prop, "Enabled", "Rigid Body actively participated in the simulation");
+       RNA_def_property_ui_text(prop, "Enabled", "Rigid Body actively participates to the simulation");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
        
        prop = RNA_def_property(srna, "collision_shape", PROP_ENUM, PROP_NONE);
@@ -639,7 +649,7 @@ static void rna_def_rigidbody_object(BlenderRNA *brna)
        prop = RNA_def_property(srna, "kinematic", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBO_FLAG_KINEMATIC);
        RNA_def_property_boolean_funcs(prop, NULL, "rna_RigidBodyOb_kinematic_state_set");
-       RNA_def_property_ui_text(prop, "Kinematic", "Allows rigid body to be controlled by the animation system");
+       RNA_def_property_ui_text(prop, "Kinematic", "Allow rigid body to be controlled by the animation system");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
        
        /* Physics Parameters */
@@ -659,12 +669,14 @@ static void rna_def_rigidbody_object(BlenderRNA *brna)
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBO_FLAG_USE_DEACTIVATION);
        RNA_def_property_boolean_default(prop, TRUE);
        RNA_def_property_boolean_funcs(prop, NULL, "rna_RigidBodyOb_activation_state_set");
-       RNA_def_property_ui_text(prop, "Enable Deactivation", "Enables deactivation of resting rigid bodies (increases performance and stability but can cause glitches)");
+       RNA_def_property_ui_text(prop, "Enable Deactivation",
+                                "Enable deactivation of resting rigid bodies (increases performance and stability "
+                                "but can cause glitches)");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
        
        prop = RNA_def_property(srna, "start_deactivated", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBO_FLAG_START_DEACTIVATED);
-       RNA_def_property_ui_text(prop, "Start Deactivated", "Deactivates rigid body at the start of the simulation");
+       RNA_def_property_ui_text(prop, "Start Deactivated", "Deactivate rigid body at the start of the simulation");
        RNA_def_property_clear_flag(prop, PROP_ANIMATABLE);
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
        
@@ -673,7 +685,8 @@ static void rna_def_rigidbody_object(BlenderRNA *brna)
        RNA_def_property_range(prop, FLT_MIN, FLT_MAX); // range must always be positive (and non-zero)
        RNA_def_property_float_default(prop, 0.4f);
        RNA_def_property_float_funcs(prop, NULL, "rna_RigidBodyOb_linear_sleepThresh_set", NULL);
-       RNA_def_property_ui_text(prop, "Linear Velocity Deactivation Threshold", "Linear Velocity below which simulation stops simulating object");
+       RNA_def_property_ui_text(prop, "Linear Velocity Deactivation Threshold",
+                                "Linear Velocity below which simulation stops simulating object");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
        
        prop = RNA_def_property(srna, "deactivate_angular_velocity", PROP_FLOAT, PROP_UNIT_VELOCITY);
@@ -681,7 +694,8 @@ static void rna_def_rigidbody_object(BlenderRNA *brna)
        RNA_def_property_range(prop, FLT_MIN, FLT_MAX); // range must always be positive (and non-zero)
        RNA_def_property_float_default(prop, 0.5f);
        RNA_def_property_float_funcs(prop, NULL, "rna_RigidBodyOb_angular_sleepThresh_set", NULL);
-       RNA_def_property_ui_text(prop, "Angular Velocity Deactivation Threshold", "Angular Velocity below which simulation stops simulating object");
+       RNA_def_property_ui_text(prop, "Angular Velocity Deactivation Threshold",
+                                "Angular Velocity below which simulation stops simulating object");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
        
        /* Dynamics Parameters - Damping Parameters */
@@ -717,14 +731,17 @@ static void rna_def_rigidbody_object(BlenderRNA *brna)
        RNA_def_property_ui_range(prop, 0.0f, 1.0f, 1, 3);
        RNA_def_property_float_default(prop, 0.0f);
        RNA_def_property_float_funcs(prop, NULL, "rna_RigidBodyOb_restitution_set", NULL);
-       RNA_def_property_ui_text(prop, "Restitution", "Tendency of object to bounce after colliding with another (0 = stays still, 1 = perfectly elastic)");
+       RNA_def_property_ui_text(prop, "Restitution",
+                                "Tendency of object to bounce after colliding with another "
+                                "(0 = stays still, 1 = perfectly elastic)");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
        
        /* Collision Parameters - Sensitivity */
        prop = RNA_def_property(srna, "use_margin", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBO_FLAG_USE_MARGIN);
        RNA_def_property_boolean_default(prop, FALSE);
-       RNA_def_property_ui_text(prop, "Collision Margin", "Use custom collision margin (some shapes will have a visible gap around them)");
+       RNA_def_property_ui_text(prop, "Collision Margin",
+                                "Use custom collision margin (some shapes will have a visible gap around them)");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_shape_reset");
        
        prop = RNA_def_property(srna, "collision_margin", PROP_FLOAT, PROP_UNIT_LENGTH);
@@ -733,13 +750,15 @@ static void rna_def_rigidbody_object(BlenderRNA *brna)
        RNA_def_property_ui_range(prop, 0.0f, 1.0f, 0.01, 3);
        RNA_def_property_float_default(prop, 0.04f);
        RNA_def_property_float_funcs(prop, NULL, "rna_RigidBodyOb_collision_margin_set", NULL);
-       RNA_def_property_ui_text(prop, "Collision Margin", "Threshold of distance near surface where collisions are still considered (best results when non-zero)");
+       RNA_def_property_ui_text(prop, "Collision Margin",
+                                "Threshold of distance near surface where collisions are still considered "
+                                "(best results when non-zero)");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_shape_reset");
        
        prop = RNA_def_property(srna, "collision_groups", PROP_BOOLEAN, PROP_LAYER_MEMBER);
        RNA_def_property_boolean_sdna(prop, NULL, "col_groups", 1);
        RNA_def_property_array(prop, 20);
-       RNA_def_property_ui_text(prop, "Collison Groups", "Collision Groups Rigid Body belongs to");
+       RNA_def_property_ui_text(prop, "Collision Groups", "Collision Groups Rigid Body belongs to");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
        RNA_def_property_flag(prop, PROP_LIB_EXCEPTION);
 }
@@ -751,7 +770,8 @@ static void rna_def_rigidbody_constraint(BlenderRNA *brna)
 
        srna = RNA_def_struct(brna, "RigidBodyConstraint", NULL);
        RNA_def_struct_sdna(srna, "RigidBodyCon");
-       RNA_def_struct_ui_text(srna, "Rigid Body Constraint", "Constraint influencing Objects inside Rigid Body Simulation");
+       RNA_def_struct_ui_text(srna, "Rigid Body Constraint",
+                              "Constraint influencing Objects inside Rigid Body Simulation");
        RNA_def_struct_path_func(srna, "rna_RigidBodyCon_path");
 
        /* Enums */
@@ -772,7 +792,7 @@ static void rna_def_rigidbody_constraint(BlenderRNA *brna)
        prop = RNA_def_property(srna, "disable_collisions", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_DISABLE_COLLISIONS);
        RNA_def_property_boolean_funcs(prop, NULL, "rna_RigidBodyCon_disable_collisions_set");
-       RNA_def_property_ui_text(prop, "Disable Collisions", "Disables collisions between constrained ridid bodies");
+       RNA_def_property_ui_text(prop, "Disable Collisions", "Disable collisions between constrained rigid bodies");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "object1", PROP_POINTER, PROP_NONE);
@@ -793,7 +813,8 @@ static void rna_def_rigidbody_constraint(BlenderRNA *brna)
        prop = RNA_def_property(srna, "use_breaking", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_USE_BREAKING);
        RNA_def_property_boolean_funcs(prop, NULL, "rna_RigidBodyCon_use_breaking_set");
-       RNA_def_property_ui_text(prop, "Breakable", "Constraint can be broaken if it receives an impulse above the threshold");
+       RNA_def_property_ui_text(prop, "Breakable",
+                                "Constraint can be broken if it receives an impulse above the threshold");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "breaking_threshold", PROP_FLOAT, PROP_NONE);
@@ -802,14 +823,16 @@ static void rna_def_rigidbody_constraint(BlenderRNA *brna)
        RNA_def_property_ui_range(prop, 0.0f, 1000.0f, 100.0, 2);
        RNA_def_property_float_default(prop, 10.0f);
        RNA_def_property_float_funcs(prop, NULL, "rna_RigidBodyCon_breaking_threshold_set", NULL);
-       RNA_def_property_ui_text(prop, "Breaking Threshold", "Impulse threshold that must be reached for the constraint to break");
+       RNA_def_property_ui_text(prop, "Breaking Threshold",
+                                "Impulse threshold that must be reached for the constraint to break");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
 
        /* Solver Iterations */
        prop = RNA_def_property(srna, "override_solver_iterations", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_OVERRIDE_SOLVER_ITERATIONS);
        RNA_def_property_boolean_funcs(prop, NULL, "rna_RigidBodyCon_override_solver_iterations_set");
-       RNA_def_property_ui_text(prop, "Override Solver Iterations", "Overrides the number of solver iterations for this constraint");
+       RNA_def_property_ui_text(prop, "Override Solver Iterations",
+                                "Override the number of solver iterations for this constraint");
        RNA_def_property_update(prop, NC_OBJECT | ND_POINTCACHE, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "num_solver_iterations", PROP_INT, PROP_NONE);
@@ -818,131 +841,133 @@ static void rna_def_rigidbody_constraint(BlenderRNA *brna)
        RNA_def_property_ui_range(prop, 1, 100, 1, 0);
        RNA_def_property_int_default(prop, 10);
        RNA_def_property_int_funcs(prop, NULL, "rna_RigidBodyCon_num_solver_iterations_set", NULL);
-       RNA_def_property_ui_text(prop, "Solver Iterations", "Number of constraint solver iterations made per simulation step (higher values are more accurate but slower)");
+       RNA_def_property_ui_text(prop, "Solver Iterations",
+                                "Number of constraint solver iterations made per simulation step (higher values are more "
+                                "accurate but slower)");
        RNA_def_property_update(prop, NC_OBJECT, "rna_RigidBodyOb_reset");
 
        /* Limits */
        prop = RNA_def_property(srna, "use_limit_lin_x", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_USE_LIMIT_LIN_X);
-       RNA_def_property_ui_text(prop, "X Axis", "Limits translation on x axis");
+       RNA_def_property_ui_text(prop, "X Axis", "Limit translation on X axis");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "use_limit_lin_y", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_USE_LIMIT_LIN_Y);
-       RNA_def_property_ui_text(prop, "Y Axis", "Limits translation on y axis");
+       RNA_def_property_ui_text(prop, "Y Axis", "Limit translation on Y axis");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "use_limit_lin_z", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_USE_LIMIT_LIN_Z);
-       RNA_def_property_ui_text(prop, "Z Axis", "Limits translation on z axis");
+       RNA_def_property_ui_text(prop, "Z Axis", "Limit translation on Z axis");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "use_limit_ang_x", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_USE_LIMIT_ANG_X);
-       RNA_def_property_ui_text(prop, "X Angle", "Limits rotation around x axis");
+       RNA_def_property_ui_text(prop, "X Angle", "Limit rotation around X axis");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "use_limit_ang_y", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_USE_LIMIT_ANG_Y);
-       RNA_def_property_ui_text(prop, "Y Angle", "Limits rotation around y axis");
+       RNA_def_property_ui_text(prop, "Y Angle", "Limit rotation around Y axis");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "use_limit_ang_z", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_USE_LIMIT_ANG_Z);
-       RNA_def_property_ui_text(prop, "Z Angle", "Limits rotation around z axis");
+       RNA_def_property_ui_text(prop, "Z Angle", "Limit rotation around Z axis");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "use_spring_x", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_USE_SPRING_X);
-       RNA_def_property_ui_text(prop, "X Spring", "Enables spring on X axis");
+       RNA_def_property_ui_text(prop, "X Spring", "Enable spring on X axis");
        RNA_def_property_update(prop, NC_OBJECT, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "use_spring_y", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_USE_SPRING_Y);
-       RNA_def_property_ui_text(prop, "Y Spring", "Enables spring on Y axis");
+       RNA_def_property_ui_text(prop, "Y Spring", "Enable spring on Y axis");
        RNA_def_property_update(prop, NC_OBJECT, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "use_spring_z", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", RBC_FLAG_USE_SPRING_Z);
-       RNA_def_property_ui_text(prop, "Z Spring", "Enables spring on Z axis");
+       RNA_def_property_ui_text(prop, "Z Spring", "Enable spring on Z axis");
        RNA_def_property_update(prop, NC_OBJECT, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_lin_x_lower", PROP_FLOAT, PROP_UNIT_LENGTH);
        RNA_def_property_float_sdna(prop, NULL, "limit_lin_x_lower");
        RNA_def_property_float_default(prop, -1.0f);
-       RNA_def_property_ui_text(prop, "Lower X Limit", "Lower limit of x axis translation");
+       RNA_def_property_ui_text(prop, "Lower X Limit", "Lower limit of X axis translation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_lin_x_upper", PROP_FLOAT, PROP_UNIT_LENGTH);
        RNA_def_property_float_sdna(prop, NULL, "limit_lin_x_upper");
        RNA_def_property_float_default(prop, 1.0f);
-       RNA_def_property_ui_text(prop, "Upper X Limit", "Upper limit of x axis translation");
+       RNA_def_property_ui_text(prop, "Upper X Limit", "Upper limit of X axis translation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_lin_y_lower", PROP_FLOAT, PROP_UNIT_LENGTH);
        RNA_def_property_float_sdna(prop, NULL, "limit_lin_y_lower");
        RNA_def_property_float_default(prop, -1.0f);
-       RNA_def_property_ui_text(prop, "Lower Y Limit", "Lower limit of y axis translation");
+       RNA_def_property_ui_text(prop, "Lower Y Limit", "Lower limit of Y axis translation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_lin_y_upper", PROP_FLOAT, PROP_UNIT_LENGTH);
        RNA_def_property_float_sdna(prop, NULL, "limit_lin_y_upper");
        RNA_def_property_float_default(prop, 1.0f);
-       RNA_def_property_ui_text(prop, "Upper Y Limit", "Upper limit of y axis translation");
+       RNA_def_property_ui_text(prop, "Upper Y Limit", "Upper limit of Y axis translation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_lin_z_lower", PROP_FLOAT, PROP_UNIT_LENGTH);
        RNA_def_property_float_sdna(prop, NULL, "limit_lin_z_lower");
        RNA_def_property_float_default(prop, -1.0f);
-       RNA_def_property_ui_text(prop, "Lower Z Limit", "Lower limit of z axis translation");
+       RNA_def_property_ui_text(prop, "Lower Z Limit", "Lower limit of Z axis translation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_lin_z_upper", PROP_FLOAT, PROP_UNIT_LENGTH);
        RNA_def_property_float_sdna(prop, NULL, "limit_lin_z_upper");
        RNA_def_property_float_default(prop, 1.0f);
-       RNA_def_property_ui_text(prop, "Upper Z Limit", "Upper limit of z axis translation");
+       RNA_def_property_ui_text(prop, "Upper Z Limit", "Upper limit of Z axis translation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_ang_x_lower", PROP_FLOAT, PROP_ANGLE);
        RNA_def_property_float_sdna(prop, NULL, "limit_ang_x_lower");
        RNA_def_property_range(prop, -M_PI * 2, M_PI * 2);
        RNA_def_property_float_default(prop, -M_PI_4);
-       RNA_def_property_ui_text(prop, "Lower X Angle Limit", "Lower limit of x axis rotation");
+       RNA_def_property_ui_text(prop, "Lower X Angle Limit", "Lower limit of X axis rotation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_ang_x_upper", PROP_FLOAT, PROP_ANGLE);
        RNA_def_property_float_sdna(prop, NULL, "limit_ang_x_upper");
        RNA_def_property_range(prop, -M_PI * 2, M_PI * 2);
        RNA_def_property_float_default(prop, M_PI_4);
-       RNA_def_property_ui_text(prop, "Upper X Angle Limit", "Upper limit of x axis rotation");
+       RNA_def_property_ui_text(prop, "Upper X Angle Limit", "Upper limit of X axis rotation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_ang_y_lower", PROP_FLOAT, PROP_ANGLE);
        RNA_def_property_float_sdna(prop, NULL, "limit_ang_y_lower");
        RNA_def_property_range(prop, -M_PI * 2, M_PI * 2);
        RNA_def_property_float_default(prop, -M_PI_4);
-       RNA_def_property_ui_text(prop, "Lower Y Angle Limit", "Lower limit of y axis rotation");
+       RNA_def_property_ui_text(prop, "Lower Y Angle Limit", "Lower limit of Y axis rotation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_ang_y_upper", PROP_FLOAT, PROP_ANGLE);
        RNA_def_property_float_sdna(prop, NULL, "limit_ang_y_upper");
        RNA_def_property_range(prop, -M_PI * 2, M_PI * 2);
        RNA_def_property_float_default(prop, M_PI_4);
-       RNA_def_property_ui_text(prop, "Upper Y Angle Limit", "Upper limit of y axis rotation");
+       RNA_def_property_ui_text(prop, "Upper Y Angle Limit", "Upper limit of Y axis rotation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_ang_z_lower", PROP_FLOAT, PROP_ANGLE);
        RNA_def_property_float_sdna(prop, NULL, "limit_ang_z_lower");
        RNA_def_property_range(prop, -M_PI * 2, M_PI * 2);
        RNA_def_property_float_default(prop, -M_PI_4);
-       RNA_def_property_ui_text(prop, "Lower Z Angle Limit", "Lower limit of z axis rotation");
+       RNA_def_property_ui_text(prop, "Lower Z Angle Limit", "Lower limit of Z axis rotation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "limit_ang_z_upper", PROP_FLOAT, PROP_ANGLE);
        RNA_def_property_float_sdna(prop, NULL, "limit_ang_z_upper");
        RNA_def_property_range(prop, -M_PI * 2, M_PI * 2);
        RNA_def_property_float_default(prop, M_PI_4);
-       RNA_def_property_ui_text(prop, "Upper Z Angle Limit", "Upper limit of z axis rotation");
+       RNA_def_property_ui_text(prop, "Upper Z Angle Limit", "Upper limit of Z axis rotation");
        RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_RigidBodyOb_reset");
 
        prop = RNA_def_property(srna, "spring_stiffness_x", PROP_FLOAT, PROP_UNIT_LENGTH);