So i was thinking of rigging and how tedious it can be to create the complex system of bones and constraints that are required for a good qaulity facial rig.
Then i got thinking, why not have a tool that allows the user to effectively paint on layers of muscle, layer and influence those muscles (muscles groups) and finally add user definsed anchor points to those muscles to quickly allow a user to rig a complex character.
This is just an idea, something i was thinking about, i don’t posses the talent to code this, i wish i did, but anyway i’m posting it here in the hopes that a developer/ script writer may see it as a good idea.
(I’ve ommited how this would tie in with the current system i.e. add a armature first, make it a modifer, make it an item in the context drop down for the 3D window along with wieght pant etc).
- User goes into mode/ applies modifier for muscle drawing (something along those lines)
- User creates muscle layer one, called muscle.001
- User renames layer to R.Cheek_muscle.001
- User paints a streak from the corner of the mouth to a point just infront of the characters ear, a blue line is drawn across/ over the mesh
- Two anchor points are created, one at the start and one at the end
- The user wants an anchor point in the middle to allow more flexible control of the cheek area, so he ctrl+clicks on that area over the muscle
- An anchor point is created and added under the R.Cheek_muscle.001 layer
Now the layer (A layer is essentially a muscle, but it’s stored as a layer in the UI, this is needed because the user can layer bones, during this process anchor points and influences can be changed i.e. anchor points can be merged if several anchor points fall in one place).
(This is how i see it working, or could possibly work)
When a user is drawing a muscle, blender is drawing a group of bones, the user has an option to enable this as viewable, but its hidden as default, that way the user only sees a muscle being drawn on screen.
These bones are given an IK setup, with a root and target, the root is the bone which cannot be moved from the position it is placed, in this case it would be the bone that lands next to the ear, the user would have to select this as the root anchor point.
The target is the bone which basically has control over the group. It was placed at the corner of the mouth so when moving this anchor point it would move the corner of the lip, some of the lip area, the cheek area and the parts around the root (but only very slightly).
The user would be able to wieght/ influence paint onto the muscle directly, like wieght painting. The higher the influence the more area it moves, the lower, the less it moves, also the user can choose the fall off type (with a curve?).
Now the anchor points can also have an influence value, the main reason why i think thisshould be is because a user may layer several bones over one another to create a complex system, some of these anchor points may fall over one another, which means the user would need to control how much these anchors influence the muscle, and the surrounding muscles (if possible). This would just be with a number from 0.0 to 1.0 and also with a curve to control how sharp/ smooth the fall off is.
Also the merging of anchor points would warrant the user to set influences per muscle per anchor.
Here is a very very rough screenshot of how this would look with one muscle/ layer and 3 anchor points drawn onto a model.