View Full Version : Facial Wires/Blendshapes Conflict
Boucha 09-22-2008, 02:46 AM Hi Everyone...
I have a bit of a problem here...What I have done is, I have created a descent facial setup with wires, lattices and tons of blendShapes for a cartoony character. The problem is that when I trigger a blendShape for example, brow up...there is a problem with the wire deformers...The wires just stay in there one place regardless of the deformation created by the blendshape...As a result the influence of the wires are not appropriate. I have tried a lot of tricks like creating a proxy head which will wrap deform the wires...So that when the blendShape is triggered...the proxy head will deform along side the actual head...The proxy head will then deform the wires...It works great until I place some joints or clusters to control the wires...It gives and additive result (not good)...
Does any one have any ideas/tips and tricks to solve this issue???
Thanks in advance...
|
|
Klaudi
09-22-2008, 01:35 PM
Try to change the deformation order in the inputs.
Hitchcock
09-23-2008, 06:05 PM
yeah my suggestion would also be check the input order. It seems as if the hierachy could be slightly out of line. Something like the wires being parented in the wrong spot.
Boucha
09-24-2008, 03:12 AM
Hey guys...thanks for the feedback but I have already tried ordering the deformation order...and it didn't work...But I manage to fix the issue by using maya hair follicle system and utility nodes...Basically the thing that was going wrong was double transformation and weird influences. So, I created maya hair follicles on selected faces(could also use closest point on surface node)...then i created some clusters out of the wires..created some offset nodes which will negate the double transformation by using multiplyDivide node and parented the clusters...It did solve the issue that I was facing but know my rig is super slow...so I need to optimize it...
thanks....
yenvalmar
09-25-2008, 07:15 AM
thats silly, of course its slow. thats a very over complicated solution to a fairly easy problem. dont apply blend shapes and wires on the same mesh at the same time.
just set up your wires on a blend shape target, along with all your other blend conventional static blend shapes. have them both be blend shape targets to your final rigged mesh, ALL ON THE SAME BLEND SHAPE NODE! (important!) (well not really but makes it faster to work witth later i think, because you can get all the attributes in the same node..)
so then you just keep the wire rigged mesh always blended 100% to the final, and it will nicely combine your blend shape targets with the effect of the wire deformer on the final mesh.
the only thing is the wires themselves wont deform on the final mesh, BUT, they will still influence the mesh properly because they are connected to a mesh that only they are deforming, they wont fight with the blend shapes, they wont double transform.. and i think it will perform much better than what you are trying to do, its very elegant and fast to work with.
i do this every time to combine wire and blend shape rigs without double transforms or huge slowdowns.
if you want, you can then make a THIRD rig with custom controls to drive your blend shape and wire rigs, that behaves like you want your rig to work. but its a very different process to make a rig out of simple pieces controlled by one UI, than putting 3 types of deformer functions simultaneously influencing on the same given vertex at one time.. if you always rig one simple thing at a time each step is very simple. and if you add it to your blend shape node you can make an infinitely complex and flexible rig, but each step is very simple, as close to foolproof as possible :)
think of it like using layers in photoshop to make a complex drawing, how much time it saves instead of trying to paint it all at once. if you try do too much directly in one complex do everything rig it always takes a long time. and never works in production either. i hate people that do over complicated rigs. almost as much as i hate bankers. they think they are good because what they are doing is hard. well in a way they are right, but why should i wait around for them and deal with their buggy rigs, when theres much easier and better ways? its foolish.
or you could read a few 900 page books and study it for 3 years, then do the rig you realy think you want. i'm not knocking real high quality rigs, i just hate waiting for them to get done when i have to animate by a deadline.
speaking of deadlines, did i mention you can add an entirely new rig at any time during the project if you put in that blend shape node as i suggest, so you can start animating immediately and never have to revise a rig thats used in a shot already, just keep adding new rigs to the blend shape node as you need... so much better for all concerned. i hate it when they revise a rig because half way through the project a new requirement came up that the original rig couldnt do, and as a result all my animations have to becopied to new scenes, often then debugged, sometimes re-done entirely, consuming time. this never happens when im in charge of the pipeline.
Boucha
09-26-2008, 02:06 AM
Hey yenvalmar...Thanks for your suggestion on using wires on blendShapes that will deform the actual geometry...It's a cool trick/layered approach to rigging. Yes it will optimize the scene speed greatly and I am thankful to that. Also, I have added a low resolution body rig with high resolution facial setup, which has greatly benifitted the speed of the rig.
I love the fact that you hate slow/complex rig...and it's true. Animators will love to work on a rig that is fast/efficient and does what they really want to do...Yes we should never create technical barrier towards the creativity and the love for animation...
Thanks for your suggestion...
Cheers!!!
CGTalk Moderation
09-26-2008, 02:06 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.
vBulletin v3.0.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.