[SOLVED] Driven keys for a facial rig

   2667   5   0
User Avatar
Member
29 posts
Joined: 1月 2018
Offline
I'm working on a bone driven facial rig. What I want to achieve is a facial action based solution, where you predefine a set of bone positions and control them using a list of parameters corresponding to these positions. The way I'd usually do it in maya would be to create a control object with a list of parameters in range either 0, 1 or -1, 1, and set driven keys for the bone positions with each parameter. There doesn't seem to be a tool like that in Houdini though.

I had a discussion about it on Discord channel and one solution I got is to store positions of bones in point clouds with a python script, then create geometry from each of the cloud and use this geometry as blendshapes. This, however, feels like a big workaround and I cannot believe that Houdini doesn't have any option to store frozen transform data for multiple objects, that you could later add or interpolate.

Do you have any other ideas how I could approach this problem? Bear in mind that I'm a Houdini beginner, a slightly more extensive explanation is always appreciated
Edited by n2e - 2020年9月2日 11:01:43
User Avatar
Member
679 posts
Joined: 2月 2017
Offline
Hey n2e,

I think it is all very easy if you do it all in SOP level (so inside one geo node).
Maybe it is a good idea to wait for the release of 18.5. I heard rumors that it might contain a new rigging approach.

Cheers
CYTE
User Avatar
Member
29 posts
Joined: 1月 2018
Offline
Hi,
Although a new rigging approach would be really nice, as I said, I'm also learning Houdini from scratch. That's why I'm asking about ideas, so that I can implement them and fully understand how this program works.
Edited by n2e - 2020年8月31日 10:31:21
User Avatar
Member
679 posts
Joined: 2月 2017
Offline
Hey n2e,

give this a try then: Blend Pose Tool [www.sidefx.com]

Cheers
CYTE
User Avatar
Member
29 posts
Joined: 1月 2018
Offline
Hi,
I just wanted to update, that the blend pose tool works just as expected. The way you do it is you create custom attributes in a null or another interface object, name them properly and add to the drivers list when creating chops network. Then you just set one of the attributes to desired value, set the desired pose and hit ‘update’. I still don't fully understand how these poses are stored (there are no additional nodes created on every pose I set), but I'll get to that eventually
User Avatar
Member
56 posts
Joined: 8月 2016
Offline
Easy way to do it is to create each bone with null as root. Duplicate the root and name it controller then use expression to link a root and new controller by copying controller parameters and paste them to the root parameters.
Edited by seifdune - 2020年9月20日 08:46:19
  • Quick Links