Combining bones animation with blendshapes

   3629   8   1
User Avatar
Member
47 posts
Joined: Dec. 2016
Offline
Hello,

I can't figure out how to make a facial rig that uses bone capture to control the jaw movement and the head turning from the neck but uses blendshapes to control facial expression. So what I'm looking for is the appropriate workflow to mix bones and blendshapes, specifically for a facial rig.

Right now I am making my different blendshapes separately in zbrush and then importing them into a geo node and plugging them into a blendshapes node. However, I don't know where to put the blendshapes node in relation to the bone capture and bone deform nodes. Any one know how to do this properly?

I can elaborate more if what I want to do is unclear.
User Avatar
Member
12 posts
Joined: March 2017
Offline
As far as i know you usually put blendshapes before the bone deformations.
You can look into Simple Male or Simple Female from the shelf, they use both bones and blendshapes.
Edited by pashakabush - Sept. 12, 2018 06:22:52
User Avatar
Staff
3455 posts
Joined: July 2005
Offline
yep - Blends then Bones.
and they SimpleMale and SimpleFemale have exactly this setup - RMB on their nodes and choose Allow Editing of Contents, then look for their ‘geo_skin’ geo nodes (near the top).
Michael Goldfarb | www.odforce.net
Training Lead
SideFX
www.sidefx.com
User Avatar
Member
47 posts
Joined: Dec. 2016
Offline
Thanks for pointing out the simple male and female characters.

So I just took a look in them and yes they seem to achieve what I'm going for, but I'm still a little confused at how they get there. In the ‘geo_skin’ network I see the blendshapes at the top, but then they just feed into a single bone deform node at the bottom. There is no capture node, and I can't find a reference to the skeleton hierarchy or any individual bones either. Could you explain how the bone capturing is being done here?
User Avatar
Staff
3455 posts
Joined: July 2005
Offline
the capturing of those assets was done in another file and the Capture Attributes were stored on the geometry itself - MMB on the file node at the very top to see this. This is done to make the file lighter and faster.
there will be a number of attributes:
boneCapture
pCaptAlpha
pCaptFrame
pCaptSkelRoot
you can check out the values of these attributes in the Geometry Spreadsheet
Michael Goldfarb | www.odforce.net
Training Lead
SideFX
www.sidefx.com
User Avatar
Member
47 posts
Joined: Dec. 2016
Offline
Michael,

Ahh, I see. Thats interesting. So then would this be an appropriate workflow?:

1) Import a .obj into a new scene and then build up the skeleton and capture the geometry there. Then have some kind of export node for this captured geo and save it out to disk.
2) Delete the capturing network
3) Import the captured geo from disk, apply blendshapes and feed into deform sop.

In step 1 I actually don't know how I would export this in order to maintain the capture attributes. I've only really just saved out obj files from houdini. Could you tell me what to do here?

Other than that, does this sound about right? I'm away from my work computer so I won't be able to try until I get home but I'd like to give it a go tonight.
User Avatar
Staff
3455 posts
Joined: July 2005
Offline
sure sounds good
if you save to bgeo (or bgeo.sc for a compressed file) that format will save these attributes (FBX will also save the attribs of your are going to export the mesh to another program)

in the SimpleFemele and SimpleMale you might notice that the ‘shapes’ feeding into the BlendShapes node are actually Edit SOPs - these were created by importing the individual head sculpts for each different shape and then using an HScript command called ‘sopcreateedit’ - this will remove the need to hold a ton of geometry in your character just for blendshapes - read up on it here: http://www.sidefx.com/docs/houdini/commands/sopcreateedit [www.sidefx.com]

here is a very simple workflow:

1 ) Import a .obj into a new scene
2 ) Convert it to bgeo - on disk
3 ) import the new bgeo and then build up the skeleton and capture the geometry there.
4 ) you can save out geometry with the capture attributes from SOPs by RMB on the node and selecting “Save…”, or use a ROP Geometry Output node
4a ) don't delete the capture network - just start a new file - you can always go back to the capture network and make changed etc
5 ) Import the captured geo from disk, apply blendshapes and feed into deform sop.
Edited by goldfarb - Oct. 31, 2017 14:21:11
Michael Goldfarb | www.odforce.net
Training Lead
SideFX
www.sidefx.com
User Avatar
Member
483 posts
Joined: Dec. 2006
Offline
Maybe helpy, too:
https://www.orbolt.com/asset/ik_::RampBlend

and the nice wiredeform node, play the animation, to see the effect :-)
Edited by matthias_k - Oct. 31, 2017 15:36:20

Attachments:
wire_deform_simple.hip (156.0 KB)

English is not my native language, sorry in advance for any misunderstanding :-)
User Avatar
Member
47 posts
Joined: Dec. 2016
Offline
Michael,

Thanks! That is very helpful!

Matthias, thank you for letting me know about that! I will look into it.
  • Quick Links