To Character Rig... or Not

   11643   60   15
User Avatar
Member
16 posts
Joined: Feb. 2017
Offline
Hallo

This is mainly for other ‘artist’ looking at Houdini as character rigging software pipeline.

I am a Modo user looking to expand my tools. Since H16 was recently released with new character focused features, I was really hoping that Houdini can be an alternative to Modo.

Unfortunately my experience with character rigging was not good.

I have been reading the docs and googling Houdini rigging for days now and I am getting to grips with rigging. However… Since I want a solution for both CG and Game Engines, I have come to the conclusion that Houdini is not going to work.

Factors
Houdini is Bones based and not Joints, so importing fbx for example is a complete mess. Ex: Ue4 skeleton is supposed to have around 63 joints, however Houdini convert it to their paradigm of bones and ends up with 136 nodes for the skeleton.
Even if you would create a manual UE4 skeleton, exporting a FBX generates additional _end_effector nodes and there is no way to switch this off. Trying to recreate the UE4 skeleton will not happen.
How bones are shaped is also a complete mystery. What I mean with this, a bone has two ends, the base/begin and the tip. However there is no way to determine where the tip is, nor can you snap to it.

There is very little being done from SideFX to help people understand rigging and it seems the companies testing new features does not really use rigging in a pipeline solution.

Perhaps, one day, when SideFX will decide to create their own game engine…
User Avatar
Member
1425 posts
Joined: March 2014
Offline
However there is no way to determine where the tip is, nor can you snap to it.

That's a valid point. There are times when one needs to snap to the tip of a bone, and short of adding an IK to a bone so that one can use the created effector null, you can't do anything else. Or at least I haven't thought of something else.

The rest of what you said is related to import/export of rigs/skeleton and doesn't say much about Houdini's rigging capabilities, which are stellar.

edit: edited for grammar
Edited by inhiding - Feb. 24, 2017 10:35:21
https://www.artstation.com/artist/mcnistor [www.artstation.com]
Happy place escapee.
User Avatar
Member
16 posts
Joined: Feb. 2017
Offline
Its not really about Houdini's rigging capabilities, its about using Houdini in a pipeline with other software for character rigging. I am sure Houdini is more than capable.

As long as there are import/export issues, then anything more is wasting time. Sooner or later, the issues will take over. I used UE4's skeleton as an example. Another example is animations and retargeting, or scripting.

These posts talks about the biggest problem for me regarding export.

https://www.sidefx.com/forum/topic/45599/ [sidefx.com]
https://www.sidefx.com/forum/topic/40848/ [sidefx.com]

And seeing they are not answered, I presume the problem is still there.
Edited by FLS-Eugene - Feb. 24, 2017 09:28:54
User Avatar
Member
439 posts
Joined: Oct. 2016
Offline
Moin,

I know that for some game-oriented people this is a religious topic and discussions tend to get messy instead of constructive, yet, I feel urged to ask:

> Houdini is Bones based and not Joints

… what is the difference?

In my world a bone is the connection of two joints - done. A bone has a center (or pivot, not going into modo's separation of the both here) and, for purely visual purpose (and none technical) a “length”. You can ignore the length and what you end up with is … a joint.

As far as converting rigs between systems goes: It would be cool if we would all just used Kraken in Fabric, sure. But we don't live in a perfect world (yet) Converting rigs between systems, for quite some time, is tricky and expecting it to work “just so” feels not exactly “professional” to me. Not that “professional” would be anything one *has* to be. I love being an amateur in about every other thing I do.

But your claim that “Houdini is not going to work” is a strong word. In fact, Houdini's rigging world is very powerful - but with great power comes some slight responsibility. After all, Houdini is not a game engine, there are people who want to do *more* with it. If you want a tool that does *only* game engine stuff - use a game engine. If you want a tool that can do more, you may have to learn a bit more.

Houdini 16 has been out for a few hours now and you are already claiming that it is incapable of being used in a game pipeline - impressive.
My suggestion is: Wait for Michael Goldfarb's master class on rigging in Houdini 16 and then, if you have the knowledge, the technical background and the expertise, judge again.

My other suggestion is: Try to come up with a precise plan for improving Houdini's “game capabilities” and file a RFE to SideFX. I know they are very interested both in getting that input and trying their best to meet users' expectations.

Marc

https://www.patreon.com/marcalbrecht [www.patreon.com] (https://vimeo.com/marcalbrecht)
User Avatar
Staff
135 posts
Joined: Nov. 2012
Offline
Hi FLS-Eugene

I'm sorry your initial impressions didn't play out as you hoped.

I just wanted to chime in and reassure you that we are indeed looking at it. I have managed to get the UE4 mannequin doing a round trip from the exporter Hero_TPP FBX back into Unreal with animation data. We have also fixed a bug that should be in the next daily build which lets you properly export the new biharmonic weighting to FBX (and subsequently game engines) and the updates for H16 make it even easier to do some of the things needed to get a game skeleton exported (parenting whole hierarchies, etc). And we have a masterclass on rigging coming very soon.

As McNistor mentioned, there are a lot of incredibly powerful rigging capabilities in Houdini, just biharmonic skinning alone would've won me over if I was still in production.

We are very actively looking into ways of smoothing the edges in regards to getting characters/animation data out of Houdini and into game engines. And you are correct, a lot of it is just putting out the resources and examples on how to do the workflows, and the other bit is making sure the tools are intuitive enough to pick up.

Hopefully you'll keep an eye out for the updates,

Have a great day,

Luiz
Luiz Kruel
Senior Technical Artist
SideFX
User Avatar
Member
1425 posts
Joined: March 2014
Offline
@FLS-Eugene Ah, I see. I've strawmanned you by addressing Houdini's rigging capabilities when you were actually talking about that in the context of a game pipeline. My bad, I guess my memory is short enough to forget how a post started.

As Marc suggested, your best way to see your problems solved is to file RFEs. Ranting is good for something - soul, (should such a thing exist) but not for much else.

edit: edited for grammar
Edited by inhiding - Feb. 24, 2017 10:35:58
https://www.artstation.com/artist/mcnistor [www.artstation.com]
Happy place escapee.
User Avatar
Member
16 posts
Joined: Feb. 2017
Offline
malbrecht
Houdini is Bones based and not Joints

… what is the difference?

For me a bone is simply the link between two joints. According to Houdini's docs, not so much.
Documentation: https://www.sidefx.com/docs/houdini/character/bonesvsjoints [sidefx.com]

With the new autorig and being limited to 60mins, I doubt Michael Goldfarb will talk much about manual rigging. I could be wrong.

I plan to do a RFE, but figured other people's experience input might be wise first.
User Avatar
Staff
135 posts
Joined: Nov. 2012
Offline
Great conversation, so maybe a better way to phrase it would be. What would you like to learn?

Do you want to get the UE4 character doing a round trip? Do you want to animate in Houdini? Do you want to apply animation data to the UE4 character? Having more information can help us build the right learning materials and like the other people have said… RFEs are great and it helps us know what to build, saying “this sucks I can't use it” is also good piece of information but doesn't tell us much about how to move forward
Luiz Kruel
Senior Technical Artist
SideFX
User Avatar
Member
439 posts
Joined: Oct. 2016
Offline
> For me a bone is simply the link between two joints. According to Houdini's docs, not so much.

yeah … sure, you can go semantic on that :-D

That documentation snippet underlines what I was trying to say. It's, at its core, the same. But visually, for the “artist”, it feels different. I am not an artist, so I don't care

> other people's experience input might be wise first.

Sounds like a good plan. It would help, though, if you could describe your experience in some more detail than just saying “Rigging in Houdini sucks because of import/export problems” or because of some phylosophical difference in how parenting items works. “Input” should, in my world, be specific, constructive, sample based. Not grumbling …

Marc

P.S. I tried to give improvement suggestions over the last 10 weeks or so, some of which got me into some discussion about (other) philosophical things, others we could agree to disagree on and some, few, may make it into some future daily build, who knows. What I tried to give were use cases where what I wished for might be helpful - I am under the impression that this smoothened out the risk of getting a “we are Houdini. We don't do like others” …
Edited by malbrecht - Feb. 24, 2017 10:27:55

https://www.patreon.com/marcalbrecht [www.patreon.com] (https://vimeo.com/marcalbrecht)
User Avatar
Member
16 posts
Joined: Feb. 2017
Offline
Two more posts while I was busy with the last, I have to re-write and re-read my posts multiple times before I try submit.

I am sorry if I was sounding negative. English is not my first language but I did try put it “natural”. Unfortunately emotion is every subjective to interpretation when it come to a text based message.

Thanks lkruel for the reassurance. I will obviously keep my eye on Houdini, as there are more than Character rigging that I am trying to solve.
User Avatar
Member
16 posts
Joined: Feb. 2017
Offline
malbrecht
if you could describe your experience in some more detail than just saying “Rigging in Houdini sucks because of import/export problems” or because of some phylosophical difference in how parenting items works. “Input” should, in my world, be specific, constructive, sample based. Not grumbling …

Marc

I thought I did under the Factors section of my first post.
User Avatar
Member
16 posts
Joined: Feb. 2017
Offline
On a side note:

I never used the word suck, nor did I try grumble.
I actually put in effort in the posts describing my experience.

Please try refrain adding words or emotion to my posts and keep this professional.
User Avatar
Member
439 posts
Joined: Oct. 2016
Offline
Before Luiz kicks me out for going German …

Let's nitpick on your factors then:

> Houdini is Bones based and not Joints

… in my eyes: Semantics without any meaning for the real world, because if you rig in Houdini, you rig in Houdini. Different systems use different workflows. That may be enough for you to not use Houdini, but you may get very limited in the future if you insist in one specific visual representation of parenting items.

> so importing fbx for example is a complete mess.

Doesn't apply to rigging, because this is Export. Different topic.

> Ex: Ue4 skeleton is supposed to have around 63 joints, however Houdini convert it to their paradigm of bones and ends up with 136 nodes for the skeleton.

… import/export: Doesn't apply to rigging. It *is* a pipeline thing and I am sure there will be tutorials on how to deal with this better in the future.

> Even if you would create a manual UE4 skeleton, exporting a FBX generates additional _end_effector nodes and there is no way to switch this off. Trying to recreate the UE4 skeleton will not happen.

… this is about rigging in UE4, not about rigging in Houdini. Does not apply.

> How bones are shaped is also a complete mystery. What I mean with this, a bone has two ends, the base/begin and the tip. However there is no way to determine where the tip is, nor can you snap to it.

I did file a bug and I think a RFE on that topic, I think Michael is aware of the display issue. You might want to file another report on it, because it seems to be a general problem - personally I consider it a bug, not a workflow issue. And bugs have been invented to keep developers in pay.

> There is very little being done from SideFX to help people understand rigging and it seems the companies testing new features does not really use rigging in a pipeline solution.

That may be true for the past. The reason why I am now using Houdini is that Houdini 16 is the first (big) step in taking rigging and animation much more publically serious than in the past.

To me your “factors” don't describe your problems in Houdini but your specific pipeline issues - which is OK, because Houdini *is* a pipeline tool. But try to come up with suggestions - like “I would like to see this and that”

Marc

https://www.patreon.com/marcalbrecht [www.patreon.com] (https://vimeo.com/marcalbrecht)
User Avatar
Member
16 posts
Joined: Feb. 2017
Offline
Marc, thanks for your input. I have to be honest, I am not sure if you are trying to be helpful or something else.


I, and hopefully others, need to be able to import rigged characters and re-export them. There are services like Mixamo, or character software like Daz, MakeHuman, IClone with rigged characters. At times I need to fix, adjust, remodel, animate etc, these rigged characters.

In my case, I have already rigged characters in need of a better software to do animations and export them again. As well as UE4 has a skeleton. Animations typically require IK, so the imported rigs needs to be modified, yet exported as the original rig.

Simply put, I need to import and export rigs and while the export remains the same hierachy.

lkruel understand what my requirements are and did mention he was able to do a “round trip”, which should answer most if not all my issues.
Edited by FLS-Eugene - Feb. 24, 2017 11:08:44
User Avatar
Staff
135 posts
Joined: Nov. 2012
Offline
Marc got carried away…

Yes I understand what the problem is and we're actively working on improving that workflow Hopefully we'll have something to show soon

Luiz
Luiz Kruel
Senior Technical Artist
SideFX
User Avatar
Staff
562 posts
Joined: July 2005
Offline
FLS-Eugene
malbrecht
Houdini is Bones based and not Joints

… what is the difference?



With the new autorig and being limited to 60mins, I doubt Michael Goldfarb will talk much about manual rigging. I could be wrong.


There is no hard limit on how long a Houdini masterclass should run.

We plan to cover all the features that are important to our users. Please hang in there.

Cristin
User Avatar
Staff
3010 posts
Joined: July 2005
Offline
late to the party…

I think there a number of separate topics raised in this thread so I'll try to address each one individually.

Houdini is Bones based and not Joints, so importing fbx for example is a complete mess. Ex: Ue4 skeleton is supposed to have around 63 joints, however Houdini convert it to their paradigm of bones and ends up with 136 nodes for the skeleton.

Bone or Joint based make very little difference in rigging, however import/export using FBX is relying on FBX to ‘do the right thing’, we've found lots of little things that have made that process difficult and as Luiz has mentioned there are fixes coming - and I'm sure there will be more down the line. FBX, import/export of rigs is a very active area of development for us so any bugs, features/workflows you want should be sent to us, we really do want to hear from you.
https://www.sidefx.com/bugs/submit/ [sidefx.com]

Bones have a location and a length - so to get the tip you can use the length
there have been some users who have had an issue with snapping to bone (and nulls) and a workaround is to set an Environment Variable: HOUDINI_OGL_FAST_BONES = 0

I, and hopefully others, need to be able to import rigged characters and re-export them. There are services like Mixamo, or character software like Daz, MakeHuman, IClone with rigged characters. At times I need to fix, adjust, remodel, animate etc, these rigged characters.
There is no software that I know of that allows for the importing of a rig from another software. (if I'm wrong please let me know) - and here I'm defining ‘rig’ as a hierarchy+IK+constraints etc, not just a hierarchy of bones/joints.
what we do have are a few file formats that support the idea of bones/joints, hierarchies and animation.
FBX is the most common in games and alembic/FBX everywhere else.
To rig in Houdini and then export that rig (or rig + animation) to a game engine would require either using the hierarchy built in Houdini, or transferring that animation to a hierarchy that matches the UE4 default skeleton )or other). We currently don't have re-targeting tools like you would find in Motion Builder and the autorigs do not produce a hierarchy that matches the UE4 skeleton but we do have plans to make exporting to game engines much easier so that users can do just as you've indicated - rig, animate, adjust, fix etc going in and out of Houdini and other apps.

As for the upcoming MasterClass - it will be focused on the Autorigs, but we'll be following that with what I'm sure will be a much longer series ( ) on rigging in Houdini in a more general sense - bones, FK/IK, constraints, capture/deform, blendshapes etc.

I hope this addresses some of your questions/concerns. If you are currently trying to do this kind of work we'd love for you to stick with us and provide feedback on the tools and workflows.
thanks
Michael Goldfarb | www.odforce.net
Senior Technical Director
SideFX
www.sidefx.com
User Avatar
Member
72 posts
Joined: Feb. 2016
Offline
arctor
but we'll be following that with what I'm sure will be a much longer series ( ) on rigging in Houdini in a more general sense - bones, FK/IK, constraints, capture/deform, blendshapes etc.

Looking forward to them. Auto rigs are a great time saver but being able to create your own custom rigs would be a better investment.
User Avatar
Member
16 posts
Joined: Feb. 2017
Offline
An update

lkruel
I have managed to get the UE4 mannequin doing a round trip from the exporter Hero_TPP FBX back into Unreal with animation data.

I figured if Luiz can do, then I must have missed a step. After some time I managed to get the Hero character from UE4 into Houdini, and back to UE4.

It seems quite odd that it worked.

Normally, if I export a skeletal rig then nulls and bones export as expected, but there are unwanted _end_effector nodes created as well as world root node (depending on setup).

The imported ue4 fbx on the other hand fuses the imported nulls and bones at export time, as well as no _end_effectors.

How can I reproduce the same results?
User Avatar
Member
22 posts
Joined: Aug. 2013
Offline
Very excited about the rigging masterclass, when do you think that will be available?
  • Quick Links