While I did not find a very preferred simple button or gui solution, it turned out that hacking native Python code in Blender is easier than you might think.
The cubes I work with are more like domino stones. Subsequently, all objects that look like dominoes have a name starting with "Domino". It is very easy to change all the objects in the scene based on their name:
for o in bpy.data.objects: if not "Domino" in o.name: continue o.rigid_body.mass = 500 o.rigid_body.friction = 0.4 o.rigid_body.restitution = 0.95 o.rigid_body.angular_damping = 0.2 o.rigid_body.linear_damping = 0.05
To use this code, I simply opened a new window (drag the upper right triangle icon into any existing Blender window), changed the window type to "Python Console" (lower left window type selection icon), and then paste above the code into it.
The code can be edited in an external text editor. You can also open a text editor window inside Blender. After saving the scene, both the Python console and the internal text editor are saved along the 3D model, which provides a very good workflow.
Finding the right object names, such as bpy.data.objects["Domino.033"].rigid_body.mass , is very simple because Blender displays them when you hover over any form input field. If you have identified the object, use the Python dir() function to get a list of all known methods and attributes of the object. Maybe more than gui allows you to modify or use.
It was a lot easier than I thought. This probably explains why you might think of some complex manipulations for which there is no gui element - it is easier to handle in code. I will probably use this to duplicate and position objects along lines, circles, spirals instead of using the attributes of my own Blender attribute. This will simplify subsequent position adjustments.
source share