Although this is all working as a armature posing shapekey, if i then try to use an actual pose the the the bones driven by the shapekey override the bone rotations of the pose(aka the pose dont work on these bones now) This might be quite simple as im not really too familiar with drivers and googling this is stressing me out finding random none relevant topics. So i thought to just ask my self
Essentially what id like if for these shapekeys to work over the top of a pose, so it basically takes whatever rotation the bones want to be in from a pose and then adds onto it from there. I have a few morphs that simply require slight moving/rotating to help. Im sure there are perhaps overlay to do this but i am specifically interested in this method(assuming it is at all possible to do) I want to know if this is a valid method regardless of other methods being available. I know the standard way is to get bones to drive shapekeys, but who wants to just do standard things
Im essentially trying to emulate what is possible in Daz3d with there âBone Morphsâ
Sorry, but Iâm not sure Iâve understood what you are looking for.
Though, if itâs something non-conventional as youâre saying, then most probably youâre not looking for a Corrective Shape Key; you might want something like a Shape Key (Value change) that is able to affect other Bonesâ Transformations from that same Armature in a more directive fashion.
If that is the case, Iâve been investigating some ways to do that also; the discussion on this > link proved to be clarifying to me, although I have not be very successful on my particular case.
Essentially, Âżif Shape Keys transform vertexes (mesh), can Bones follow somehow those transforming vertexes âand still be well responding to further mesh transformations? It looks like there are different ways to do that, but it can get more or less complicated depending on what weâre trying to achieve. And, likely, the more conventional way of Rigging would be: Bones driving Shape Keys (changes to the mesh), not the inverse
Hay, So adding the driver shown to a bone on the x rotation that bone will rotate live as i slide the shapekey value. so you can do that with position. You can then add a diver modifier âgeneratorâ and set the min/max to control how much the bone moves/rotates according to the shapekeys 0 to 1 percentage. So that bit works and if the bones in question dont also need to be controlled by animation/poses then great, but in my case i do need them to work.
I thought about if perhaps you make a duplicate bone and have that try to follow âbone1â and have âbone1â try to follow âbone2â. So there both slaved to each other so if a pose moved âbone1â, âbone2â moves with it or if a shapekey moved âbone2â âbone1â follows that
So you have animation work on one bone and shapekeys work on the other and you let and control which follows who in wich order so to speak. But iv not figured out how to try this as a theory
Dazâs bone morphs move/rotate bones instead of vertices
Think like a shapekey but for bones instead of using poses or animation
They use them for when they have a mesh morph that requires a bone to slightly adjust for that morph to look right, instead of applying a pose or adjust animations a bone morphs is used instead.
Think like if you had a body mesh and made a morph of a bigger belly and you have the character play an animation where they put there and on the belly but was designed for the flat none morphed belly. The bone morph would account for this and move where the arm bones go so its sits over the now bigger belly automatically. You can then have these mesh and bone morphs as one actual slider so you activate one and it dose both morphs.
Sometimes these bone morphs are used just like corrective shapekeys for meshes so they only do a bone morph when certain joints are at certain rotations, this whey they can be setup to only apply in certain conditions just like you would a regular shapekey for meshes. So for the belly example the bone morph would be driven any time the any of the arm bones are in the rotations needed where the arm would be over the belly area, this would automatically push ot the arm to not clip into the bigger belly where otherwise the animation would. This would essentially work across animations not just one as it has nothing to do with a specific animation, there are other ways to achieve the same thing but there less automatic and honestly less intuitive. Daz as kind of matured this concept for quite some time as its i guess one of its staples along with its auto clothes fitting system
Basically it a animation/poseless bone placement adjustment system, Daz has many assets for this an im looking to get them to work in blender âproperlyâ so to speak
In my blender example is a functioning shapekey that rotates the bones into there desired âposeâ but currently this overrides any rotations form actual real poses and animations. What im now looking for is to set this up to make it so the âbone morphâ is an additional rotation not an exact rotation. So instead of the bone morph setting a bone to 40 degrees exactly it âaddsâ 40 degrees ontop of whatever the bone is at be it its reset pose or an animation/pose ect
Hope that makes more sense, im hoping its a case of setting the driver differently or maybe using an action constraint im really not sure
Iâm starting to understand what you want a bit better , but itâs still a bit foggyâŚ
This can be done by adding an extra bone and parenting.
You want to add 40° to the arm, then the arm bone needs to be parented to a âmorph armâ bone,
the morph arm is driven , so if you change the body shape it rotates, but still the arm is free to have whatever rotation you want.
You are planning to make a rig that change shape, so you can animate it and have some sliders that change the size proportions of the character ?
So theres no way to condition the shapekey driver that controls the bone to only function at certain conditions and not all the time. Even if it was a manual toggle that would be good enough
It is a multi purpose rig thats morphs into lots shapes, done partly by vertices morphing and some by bone morphing. Its used to balance shape vs weight painting, by moving bones it allows me to not have the mesh surface too far away from the bone locations
Imagen i morph a human character into Shrek the human shaped rig really wouldnt work on the Shrek shape mesh(I mean it might but its an example) so i would also morphs the rig into a Shrek shaped rig. This would be bone position morphing, i would actually start by morphing the bone into the shape then shapekey sculpt the rest on the mesh
For duplicate bone i would basically need to make all of them duplicate, i mean if it works then its an option. But id like to see if there is actually a better option, like some not very well documented driver or action constraint thing
That should be possible, it really depends on how you set your expression.
I understand that in Daz3D the shapes are driving everything else, that makes sense probably because of how the software evolved.
If I had to do a similar system in blender, Iâd probably start with the rig : Iâll make a rig that can change proportions, and then drives the shapes of the mesh according to that.
Another solution, would be to work with shapes and make an auto-rig that match the mesh proportions, that would be a two step process then . First build the character and then rig it . But thatâs maybe not what you want. That would give more a character generator than an adaptable rig.
Have you looked at this ?
and this ?
These look like similar attempt of what youâre trying to acheive, maybe itâs worth checking how they did it !
The universal human is just using follow constraints and is using dupe bones, its basically got a bone for scaling and other bones are simply constrained to follow that theres no use of drivers. Its a nice rig but not helpful for me in this case
This other thing is interesting, its basically scripting to do sort of what im looking for. Its seemingly doing this not using drivers. So it leaves the bones to do there thing for animation but allows a morph to change a bones position/rotation as an additional. just wish i knew how to script like this so i could setup my own bone controls like i would a driver
It doesnât seems so, the script part is only the UI.
If you look at meshes they have shapes keys with drivers, some bones on the rig also have drivers. And then there are some constraints on many other bones, probably some of them use the driven bones as targets.
And the controllers bones ( the char shaped bones to adjust the proportions) got a bunch of custom properties that probably drives the shapes and the bones.
Itâs a complex rig , so it may takes some time to figure out how it works but the basic concept behind it doesnât seems too complicated.
In the end itâs a bit similar to the universal human rig, but with different meshes and shape keys to make character variations.
Ah yes i see now, many of the hidden bone. So this is just parenting bones and driving them instead like i thought i would have to do. At the very least i have a confirmation that method works, would still love to know if its doable just with the drivers them selves.
Thanks for showing that rig to me, its an interesting project. I realize i can do something similar to change clothing but within the keyshape menu instead of the custom ui thing
I use https://github.com/MichaelGlenMontague/shape_keys_plus as it allows for a folder style sorting system in the shapekey menu so i can have all kinds of sliders setup for bones or clothing and such that just drive the custom properties. No haste with scripts and its all located in one space that i can natively organize
Blenders drivers system really needs a rework as it hasnt really been changed in a long time and kinda dosnt fit in with blenders new âlets stop being awkwardâ approach to ui and such
Iâm not sure to understand what do you mean, generally you can replace constraints by drivers.
Itâs also possible to get rid of some bones, this rig is quite layered.
Getting rig of all parenting and strive to have the minimal amount of bones ( only the deforming ones) will probably do more harm than good. Because youâll end up with complex driver expressions and it will probably be way harder to get something that doesât break easily.
I agree that it can be simpler, while I never find the driver interface user friendly Iâve got a hard time to see how I would improve it. Needless to say that in every software Iâve seen it always looks a bit convoluted. What would you change to make it better ?
Honestly alot more options and or dropdown menus in the driver i would be helpful, so like where you currently type expressions if the had a dropdown arrow to the right you can reveal a bunch of preset expressions with tooltips saying what they do would help anyone really look at them to see if its something they need. The skapekey addon i posted also adds control for drivers when a selected shapekey has one which is super useful not having to navigate all over the place
I should say i will be using a daz rig an various content i own as i have it sat on my hdd so i want to put it to use, Iv never made my own rig before but i have edited a few. making a dupe bone isnt too hard though.
ÂĄHey, @sozap! I know you didnât asked me directly, but thatâs one intriguing question even for me.
I would create something like a 3D Viewport Driver Manager Panel at the Properties Shelf, so that the user could immediatly test any Driver (with sort of a meta-clone of its Value) from that list (even the colored Values, the ones from Shape Keys locked down by the presence of a Driver on them, would be affected by the meta-clone) and regardless of the existance of already configured Driving Bones or anything else driving the operation. So a Panel that would be a parallel collection of Values for all the Drivers.
When I was trying to make rigs with Bones, Shape Keys, Drivers, the Graph, the Properties and the 3D Viewport Editor, I wasted infinite amount of time simply because I didnât have any automatic way to check certain forms of results on my working progress; this was also related to the switching of the Modes on the 3D Viewport.
Well, at least as far as I know, for the user experience itâs often terrible to manage all those things together when Rigging.
Yer it echoâs back to old blender before 2.8 with the awkward ui and not very intuitive experience
I used to hate blender, and chose to use sketchup over it but now i love blender
Btw they rig from the blend sozap showed is not bad for demonstration if that method suites your need for what you was trying to do, you dont need to use the scripted ui as you can just make a shapekey be the driver instead
Although itâs not a priority anymore as Iâve recently switched to something easier to make, Iâll be checking on that file. So, thanks for mentioning.
Yes I see what you mean !
Especially with shape keys you need to go back and forth edit mode on the mesh to edit shape key and pose mode to test the driver⌠And the Driver editor if something is wrong with the driverâŚ
What you describe could probably be made into an addon.
I think maya as a kind of global driver editor where every driver is listed. That doesnât make it way more user friendly, but itâs another approach than blender and probably it has some benefits.
I think a few tricks makes making simple drivers a bit easier, like coping something âas new driverâ and edit the expression right in the value, but well itâs not perfect either, once you start editing complex expressions with multiple variables it doesnât work anymore.
If your are really into rigging Iâd suggest learning a bit of python, eventually itâs always possible to automate some tasks. That can be useful if you have a lot of driver to setup to create a script for that and edit the script rather than going back and forth between editors and modes. It may sounds like a nightmare but I do think rigging and scripting comes along very well !
This is that addon it replaces the shapekey ui give you the ability to group shapekeys into folders ect and also has the driver ui right there underneath its a god send
Just need like mentioned some sort of global driver list menu
or have bone drivers available in an npanel menu even outside pose mode
That looks nice indeed.
In spite of the incredible Blender development success on the last years, there should still be more attention addressed to Rigging; for instance, Iâve got information that the âShape Keysâ system in Maya, allows for âBreakdown Keysâ, like, favoring Non-Linear shape transformations. From my animatorâs perspective, this would be a fundamental feature to have in Blender.
Youâre right, even some Blender artists approach that; I have an artist friend that has been working with Blender for a long time by now, and he eventually started making his own scripting tweaks in Blender, because of his special needs and his communication with Dev people that make Addons and etc.
At the moment, Iâm somewhat overwhelmed so I canât really spare time for learning such a different skillset; but I wonder what a creative mind could make today, with such resources at hand in Blender; that would be even fun.
For the time being, though, Itâs already a too fortunate thing to be able to Model 3D characters and even Rig those characters, both with fine results. I believe would need a Real Problem to drive me in on this research at some point in the future.