Hello everyone,
I'm looking for the best workflow to retarget blendshape animation from an original animated skeleton to the sliders on a new Apex rig.
My source skeleton has animated attributes that drive the blendshapes. My new Apex rig has corresponding blendshape sliders created by the auto-rig tool. I want to use the animation from the source skeleton to drive these sliders procedurally.
I've been exploring how to connect them, but I'm not sure of the standard approach. Is there a way to drive these abstract slider controls from skeleton attributes?
As an alternative, I was wondering if it's possible to procedurally generate or modify an Apex .clip file with this animation data. Could a script be used to write the skeleton's animation into a clip that I can then apply to the rig?
Any advice or examples on how to achieve this would be a great help.
Thanks in advance!
Retarget apex blendshapes from animated skeleton
506 5 3-
- alexandrkchaika
- Member
- 1 posts
- Joined: April 2021
- Offline
-
- edward
- Member
- 8071 posts
- Joined: July 2005
- Offline
-
- luoqiulin
- Member
- 322 posts
- Joined: May 2007
- Offline
-
- coonerdltd
- Member
- 1 posts
- Joined: Dec. 2020
- Offline
-
- edward
- Member
- 8071 posts
- Joined: July 2005
- Offline
Here's the code. But you need to make sure you customize this for your FBX file and rig so that the names match. Also, if you have too old a Houdini version, you might not even have the "fbx_custom_attributes" geometry attribute when you import.
node = hou.pwd() geo = node.geometry() old_attrib_name = "fbx_custom_attributes" new_attrib_name = "parms" old_attrib = geo.findPointAttrib("fbx_custom_attributes") old_dict = geo.points()[0].attribValue(old_attrib) new_attrib = geo.addAttrib(hou.attribType.Global, "parms", {}) geo.setGlobalAttribValue(new_attrib, old_dict)
-
- tamte
- Member
- 9300 posts
- Joined: July 2007
- Online
in case your parms are on point 0 as suggested in the above code you can also use
Attribute Promote SOP
- Original Class: Point
- New Class: Detail
- Promotion Method: First Match
- Original Name: fbx_custom_attributes
- New Name: Parms
then you can append Attribute Adjust Dictionary and its Rename Keys multiparm to adjust your mapping, you can also use wildcards when renaming
e.g. (again using above example)
From: browDown*
to: CTRL_*_brow_down_start_x
etc...
Attribute Promote SOP
- Original Class: Point
- New Class: Detail
- Promotion Method: First Match
- Original Name: fbx_custom_attributes
- New Name: Parms
then you can append Attribute Adjust Dictionary and its Rename Keys multiparm to adjust your mapping, you can also use wildcards when renaming
e.g. (again using above example)
From: browDown*
to: CTRL_*_brow_down_start_x
etc...
Edited by tamte - Oct. 14, 2025 16:37:33
Tomas Slancik
CG Supervisor
Framestore, NY
CG Supervisor
Framestore, NY
-
- Quick Links