Houdini Mocap Tutorial

   33127   21   3
User Avatar
Member
48 posts
Joined: March 2017
Offline
Anyone know of a good Houdini motion capture tutorial? I am particularly interested in consuming mocap data, cleaning it (if necessary), retargeting to a character and then adding animation layers to adjust the mocap animation.

Please note, I would prefer to not use MotionBuilder in the pipeline. I am exploring Houdini as a replacement for much of what can be done in Maya and MotionBuilder. Mocap seems to be a particular weak spot right now.
User Avatar
Member
48 posts
Joined: March 2017
Offline
Is mocap generally not consumed/used in Houdini? I am kind of surprised there are no suggestions.
User Avatar
Staff
3455 posts
Joined: July 2005
Offline
there are two subjects here, one is ingestion of mocap data, the other is re-targeting that data.
Houdini can import a number of different mocap formats:
http://www.sidefx.com/docs/houdini/character/motioncapture [sidefx.com]

currently Houdini has very limited re-targeting abilities.
Michael Goldfarb | www.odforce.net
Training Lead
SideFX
www.sidefx.com
User Avatar
Member
48 posts
Joined: March 2017
Offline
Hi arctor,

Thank you for your response. To clarify…

Are you saying that I can bring mocap data into Houdini, but cannot re-target it to a character? If so, then I have two follow-up questions:

1. Is there a product (other than MotionBuilder) that you would recommend for this purpose that would fit nicely within a Houdini-centric pipeline?
2. Are there any plans to implement re-targeting capabilities in Houdini?
Edited by JabbaTheNut - May 11, 2017 14:30:12
User Avatar
Staff
3455 posts
Joined: July 2005
Offline
JabbaTheNut
1. Is there a product (other than MotionBuilder) that you would recommend for this purpose that would fit nicely within a Houdini-centric pipeline?

not that I knwo of - MB has really been the dominant player - for better or worse.

JabbaTheNut
2. Are there any plans to implement re-targeting capabilities in Houdini?

there are a number of these high level toolsets that we have plans for, but nothing that has a timeline that I can discuss.
Michael Goldfarb | www.odforce.net
Training Lead
SideFX
www.sidefx.com
User Avatar
Member
48 posts
Joined: March 2017
Offline
OK. Here is a follow-up…

I would like to do the following:

1. Model and rig a character in Houdini.
2. Send this character to MotionBuilder/Modo to apply mocap animation.
3. Send the mocap animation back to Houdini and apply it to the rigged character as a base animation layer.
4. Add key frame animation layers on top of the base animation layer in Houdini.
5. Render the final animation in Houdini.

What is the recommended approach for #2 and #3 above?
User Avatar
Staff
3455 posts
Joined: July 2005
Offline
I'd say that should work fine - in fact that is how we built the mocapbiped3 asset on the Character Shelf
we rigged the geometry with a basic hierarchy of bones
then the facility where we did the mocap session re-targeted those motions to our rig and sent animated rigs back to us.
Michael Goldfarb | www.odforce.net
Training Lead
SideFX
www.sidefx.com
User Avatar
Member
48 posts
Joined: March 2017
Offline
Would the steps be as follows:

1. Create the rigged character in Houdini (including controls, blendshapes, etc.)
2. Export the rigged character via FBX (includes skeleton, but not controls and blendshapes?)
3. Import into MotionBuilder/Modo and bake mocap animation to skeleton.
4. Import the character with skeleton and animation back into Houdini.
5. Apply animation to fully rigged character in Houdini (the one with rig, controls, blendshapes, etc).

I do not know how to do #5. How do you do this?
Edited by JabbaTheNut - May 13, 2017 14:10:31
User Avatar
Member
48 posts
Joined: March 2017
Offline
JabbaTheNut
Would the steps be as follows:

1. Create the rigged character in Houdini (including controls, blendshapes, etc.)
2. Export the rigged character via FBX (includes skeleton, but not controls and blendshapes?)
3. Import into MotionBuilder/Modo and bake mocap animation to skeleton.
4. Import the character with skeleton and animation back into Houdini.
5. Apply animation to fully rigged character in Houdini (the one with rig, controls, blendshapes, etc).

I do not know how to do #5. How do you do this?

I was poking around on Google and found this article: Houdini CHOPs: Curves from animation [www.andynicholas.com]. It describes using a Fetch CHOP to retrieve animation from an object and expose the animation channels through an OUT null. Other objects can get the animation from the OUT null (i.e., tx, ty and tz data).

Is this the typical approach to use for achieving #5 in my list quoted above? If so, then how is this done for an animated character that has a number of bones, each with tx, ty and tz values? …Map each individually?
Edited by JabbaTheNut - May 15, 2017 12:58:22
User Avatar
Member
806 posts
Joined: Oct. 2016
Offline
Moin,

if you own modo, you could have a look at how ACS deals with retargeting and, more important so, with layering animations (your own on top of mocap data). It's not really complicated and with some scripting experience it should be possible to quickly mimic modo's complete retargeting system in Houdini.
(Yes, I am willing to dabble with that - but unfortunately I neither got the time to do it for free right now nor do I have the required Houdini API experience. But I'd like to discuss this experiment no less.)

In general your mocap data almost certainly will be Xfo data, no IK (though IK often is used to clean up the mocap along the way). That makes it more or less straight forward to mix/blend control Xfo values with your own rig - so you'd probably have “your rig” for your own animation and the mocap rig driving the deformation, then you have some mix controls, properly “rigged up” to some common control station, to “blend” between “your” values and “mocap”.

I hope this makes sense.

Marc
---
Out of here. Being called a dick after having supported Houdini users for years is over my paygrade.
I will work for money, but NOT for "you have to provide people with free products" Indie-artists.
Good bye.
https://www.marc-albrecht.de [www.marc-albrecht.de]
User Avatar
Member
48 posts
Joined: March 2017
Offline
malbrecht
Moin,


In general your mocap data almost certainly will be Xfo data, no IK (though IK often is used to clean up the mocap along the way). That makes it more or less straight forward to mix/blend control Xfo values with your own rig - so you'd probably have “your rig” for your own animation and the mocap rig driving the deformation, then you have some mix controls, properly “rigged up” to some common control station, to “blend” between “your” values and “mocap”.


Marc

malbrecht,

I like this idea. However, I am not sure how to execute the notion of “have your rig for your own animation and the mocap rig driving the deformation”. This is at the heart of my problem.

How does one get the mocap rig to drive the main rig?

I realize this is a newbie question. I have been searching for an answer. However, for some reason information on implementing mocap into your own rigs is either missing or mostly incomplete. The information SideFX provides does not seem to contemplate animation layers above a mocap layer. They seem to assume it is all mocap or all keyframe/procedural, but not both.
Edited by JabbaTheNut - May 15, 2017 16:51:50
User Avatar
Member
806 posts
Joined: Oct. 2016
Offline
Like Michael said, Houdini does not yet have shelf-tools for retargetting. I am still working my way through Houdini rigging and animation myself - but I am pretty sure that at least the most basic approach would work, which would be some “parent the rig's controls to matching mocap controls”. The more sophisticated way then would be to set up a constraint network, which would allow you to weave in additional controls.
Actually, it might be an idea to create a default constraint setup where you could just “wire in” both elements (mocap “in” controls, your additional “in” controls, rig “out” controls), which would be reusable to some degree.

However, this is a bit of manual work. If SideFX is tackling retargeting in any way in the near future, I would consider it more of an “etude” than a perfect solution.

Marc
---
Out of here. Being called a dick after having supported Houdini users for years is over my paygrade.
I will work for money, but NOT for "you have to provide people with free products" Indie-artists.
Good bye.
https://www.marc-albrecht.de [www.marc-albrecht.de]
User Avatar
Member
48 posts
Joined: March 2017
Offline
malbrecht,

Thanks for your responses. I will explore the reusable constraint setup. As I intend to use hybrid animation (mocap and keyframe/procedural) for many of my characters, such a setup will be critical.

I currently have Maya and MotionBuilder. Hybrid animation is pretty straight forward and well documented for these applications. In recent days, I had been considering moving away from Autodesk. Many have suggested that Houdini would be the way to go. However, I think Houdini would need to be combined with another one or two applications to get the same functionality you can get from the Maya and Motionbuilder combo. This reality is making me rethink a move away from Autodesk. From a cost perspective, it may be cheaper for me to stay with Autodesk. Crazy, I know
Edited by JabbaTheNut - May 15, 2017 17:13:31
User Avatar
Member
806 posts
Joined: Oct. 2016
Offline
Hi,

in my world, there is no “silver bullet” that can do everything. I do understand that both developers, marketing and a good bunch of the user community of any application would see a “one stop solution” as the golden cow that lays platin eggs and gives Mithril wool - but I think that specialized tools often serve you better, since they are not expected to press workflows into “UXP consistency” that just does not fit well.
That said, Houdini will get there, eventually. SideFX has made great steps with 15 and 16 to cater for animation (and with that for character rigging) - and that's only been two years. It isn't easy beating the “end boss” (read: Maya) that's been sitting on his butt for decades.

Having more than a single Swiss Army Knife in your tool bag, again: to me, sounds like a way better plan if you want to climb a mountain (do character rigging AND mocap clean up AND hero animation).

Marc
Edited by malbrecht - May 15, 2017 17:16:22
---
Out of here. Being called a dick after having supported Houdini users for years is over my paygrade.
I will work for money, but NOT for "you have to provide people with free products" Indie-artists.
Good bye.
https://www.marc-albrecht.de [www.marc-albrecht.de]
User Avatar
Member
48 posts
Joined: March 2017
Offline
malbrecht,

I agree whole-heartedly. For an indie, like myself, capital is fairly limited. Getting as much functionality out of each super-expensive application as one can is important. I currently find the Modo, ZBrush and Houdini combo to be a contender to replace the Autodesk suite. I have not yet figured out how to translate the Autodesk suite workflow to this new combo. I am sure I will figure it out sooner or later. Houdini is very impressive and seems to be very close to being the lead tool in a pipeline. When they get there, I will definitely be interested.

With Autodesk's recent middle finger to its customer base, SideFX has a real opportunity to capture market share. Truthfully, that is the reason I am here exploring Houdini now. It kills me that I may have to continue with Autodesk, effectively telling them that it was ok to stick it to their customers. In time, I hope I will get the opportunity to walk away.
Edited by JabbaTheNut - May 15, 2017 17:30:47
User Avatar
Member
48 posts
Joined: March 2017
Offline
I found a discussion in the Houdini SI Users forum here [www.sidefx.com]. They discuss transferring motion from character to character using Houdini Pose Library clips. It would appear that you can also add keyframe animation on top of these clips. One of the forum posters indicated that they used the Pose Library for mocap animation and edited it in CHOPs. They didn't really explain how, they just indicated that they did it.

I wonder if this may be the approach I am looking for.

Would the Pose Library be suitable for hybrid animation in Houdini? By “hybrid”, I mean imported animation (mocap or baked skeleton) with additional animation layers containing keyframed animation.

If so, could you explain how to import animation (mocap or baked to a skeleton) into a Pose Library clip?
User Avatar
Member
48 posts
Joined: March 2017
Offline
I found a discussion in the Houdini SI Users forum here [www.sidefx.com]. They discuss transferring motion from character to character using Houdini Pose Library clips. It would appear that you can also add keyframe animation on top of these clips. One of the forum posters indicated that they used the Pose Library for mocap animation and edited it in CHOPs. They didn't really explain how, they just indicated that they did it.

I wonder if this may be the approach I am looking for.

Would the Pose Library be suitable for hybrid animation in Houdini? By “hybrid”, I mean imported animation (mocap or baked skeleton) with additional animation layers containing keyframed animation.

If so, could you explain how to import animation (mocap or baked to a skeleton) into a Pose Library clip?
User Avatar
Member
806 posts
Joined: Oct. 2016
Offline
Hi,

I am not sure if your questions are addressing me … it would seem more obvious to ask in the thread you linked to about an introduction into the technique they used (especially since my suggestion looks a bit different), but I may be misunderstanding you.

A “pose” - to me - is a “frozen” (or “baked”, depending on your nomenclature) state of controls on a rig. Mocap data (not cleaned up) can be seen as a series of poses in that respect, because it often, if not always, comes as “frozen” data on every single keyframe for all controls - like poses on each keyframe. So, yes, sure you can use a pose library to manage that.
I'd still go a different root, but … I haven't even tried that one

Marc
---
Out of here. Being called a dick after having supported Houdini users for years is over my paygrade.
I will work for money, but NOT for "you have to provide people with free products" Indie-artists.
Good bye.
https://www.marc-albrecht.de [www.marc-albrecht.de]
User Avatar
Member
48 posts
Joined: March 2017
Offline
Hi malbrecht,

Sorry, I should have specified that I was asking the community in general. I appreciate, however, your quick response

To restate and clarify…

I understand that Houdini does not do mocap cleanup and retargeting. Consequently, I am considering the following workflow:

1. Create a rigged character in Houdini (including controls, blendshapes, etc.)
2. Export the rigged character via FBX (includes skeleton, but not controls and blendshapes?)
3. Import into MotionBuilder/Modo to clean, retarget and bake mocap animation to character's skeleton.
4. Import the character with skeleton and animation back into Houdini.
5. Apply animation to fully rigged character in Houdini (the one with rig, controls, blendshapes, etc).

My difficulty has been with step #5. Houdini does not have a well understood way of applying the imported animation back onto the fully rigged character.

You have suggested a couple of approaches. In particular, I was interested in the reusable constraint approach. Before I went down that more sophisticated road, however, I wanted to continue looking for an already developed solution.

In my continuing quest, I stumbled onto the forum thread that I supplied in my previous post. It was in an SI Users forum and was quite old, from 2015. I decided to ask about using the Pose Library for imported animation here because there seems to be a lot of interest in the topic (based on the number of thread views thus far) and this thread is more current.

So my questions remain (slightly revised)…

Would the Pose Library be suitable for hybrid animation in Houdini? By “hybrid”, I mean imported animation that has been baked to the character's skeleton in MotionBuilder/Modo/Other with additional animation layers containing keyframed animation.

If so, could you explain how to import said animation into a Pose Library clip?
User Avatar
Member
7722 posts
Joined: July 2005
Offline
JabbaTheNut
If so, could you explain how to import animation (mocap or baked to a skeleton) into a Pose Library clip?

As far as I recall, the Pose Library saves motion data in its own format. So I think the workflow to import animation is to tell the Pose Library to save animation from a specific rig. I think also that the Pose Library works assuming the use of HDAs, ie. that all the animation of the entire character rig is on a single node.

The difficulty with using FBX as an rig interchange format in general is that uses “joints” whereas Houdini natively uses “bones”. So whenever Houdini imports an FBX skeleton, null objects are created for the joints and then bones are added only for visualization purposes. So the easiest thing to do with imported FBX skeleton is to animate on these joints as opposed to the bones (as is traditional in Houdini). I think this also means that if you've got a bone skeleton in Houdini, it might be better to convert it to a joint rig by exporting it as FBX and re-importing it.

So there is a bunch of hurdles you would have to go through to figure out how exactly to do it. A lot of it will likely involve massaging the channels in CHOPs.
  • Quick Links