Hey.
In the last two weeks, I've worked a lot on my little rigging script. It's not a addon or extension yet, the UX is pretty horrific and it's missing at couple of important features. The code so far is just a long list of pretty straightforward operators, as well as a Panel, with Buttons to execute every one of these operators. The operators basically fall into four categories:
- the ones that have to do with Vertex Groups (these are mainly there to complement the "Ctrl G" and "Shift G" shortcuts)
- the operators that add bones to an armature and place them correctly - the advantage to normal bone duplication+extrusion is, that the bones will be automatically renamed in the same step
- the operators that add constraints to a group of bones
- some additional utilities that deal with bones, like one to change the custom shapes and color of selected bones, and one to quickly align location/rotation/scale of a a group of bones with another group of bones
One of the most important features that isn't done yet are what I called "rig relations", it's basically the idea that some operators can only take effect, if for every selected bone, there is a bone with a similar name in the armature. An example, where this is useful, is a FK/IK switch, where the rigger needs to create relationships between the deform bones and the FK bones, as well as between the deform bones and the IK bones as well. So, I hope I get time to add that asap.
I also want to split up the code into multiple files and make the thing into an addon / extension, that's maybe important, too.
Here's the script so far:
So, yeah, that's pretty much where I am at the moment.
I do have to say that I thought the Blender API wasn't very intuitive to learn for me (my experience with coding was mostly with JS web development and GDScript). I still have some question (like why the vertex selection data doesn't update unless you switch to object mode ... ?). But overall, I think I made progress.