Sorry I've gone dark. We're really slammed prepping for GDC.
But to clarify, at this moment, there's no quick fix for this. You'll have to re-rig with a joint-based system (you might be able to use all your existing bones and controls).
For right now, (and I apologize for the horror of this workaround), I think you should build a joint-based rig that references your original rig and its animations. You can do this with CHOPs or reference copies of the animated nodes or channel expressions, or copying and pasting channels, plus all the capture weights on a copy of the skin. Put this in its own subnet and export the subnet to FBX.
Re: Blendshapes… I can export the Houdini rig to FBX for Maya and Maya picks it up just fine. If I export to FBX from Maya and read it into Unity I get nothing. But then again, I suck at Maya.
Found 42 posts.
Search results Show results as topic list.
Houdini Indie and Apprentice » Indie > Unity FBX Rig Import Issues
- stjohn
- 140 posts
- Offline
Houdini Indie and Apprentice » Indie > Unity FBX Rig Import Issues
- stjohn
- 140 posts
- Offline
Hi Rick,
Sorry, I've been out on holiday for a bit.
As far as I can tell, you will have to make your rig joint-based instead of bone-based, because FBX doesn't know what to make of Houdini's rigs. I'll pick this up again and see what I can come up with.
cheers,
-John
Sorry, I've been out on holiday for a bit.
As far as I can tell, you will have to make your rig joint-based instead of bone-based, because FBX doesn't know what to make of Houdini's rigs. I'll pick this up again and see what I can come up with.
cheers,
-John
Houdini Indie and Apprentice » Indie > Unity FBX Rig Import Issues
- stjohn
- 140 posts
- Offline
I've gotten this issue in front of Jeff Wagner, and he'll give you the details, but it appears that Unity (like MotionBuilder) uses a joint-based connection paradigm instead of a bone-based one. Houdini is more efficient in that it uses bones for both transforms and captures, but the fbx rig generated from that doesn't provide all the information that Unity needs.
So you will need to modify your rig considerably, and Jeff will explain exactly how, but this document explains what is probably the cause of your issue:
http://www.sidefx.com/docs/houdini13.0/character/bonesvsjoints [sidefx.com]
cheers,
-John
So you will need to modify your rig considerably, and Jeff will explain exactly how, but this document explains what is probably the cause of your issue:
http://www.sidefx.com/docs/houdini13.0/character/bonesvsjoints [sidefx.com]
cheers,
-John
Houdini Indie and Apprentice » Indie > Unity FBX Rig Import Issues
- stjohn
- 140 posts
- Offline
I'm going to kick this up to support.
What I can tell right now is that Houdini seems to be exporting the model and a cache file, which lets you play back your deformed mesh in Maya (just tried it, it works), but Unity can't make use of deforming geometry. This is why MegaFiers makes money.
It does seem to be exporting the rig, it's just not connecting it to the model, and none of the bones are visible in the character previewer.
I'll escalate this appropriately.
What I can tell right now is that Houdini seems to be exporting the model and a cache file, which lets you play back your deformed mesh in Maya (just tried it, it works), but Unity can't make use of deforming geometry. This is why MegaFiers makes money.
It does seem to be exporting the rig, it's just not connecting it to the model, and none of the bones are visible in the character previewer.
I'll escalate this appropriately.
Houdini Indie and Apprentice » Indie > Unity FBX Rig Import Issues
- stjohn
- 140 posts
- Offline
Thanks Rick, taking a look now.
And yes, that's exactly what I meant. In Houdini when you lock a node, it freezes the information contained within it. That means nothing above processes or gets passed through, and it sends downstream the data it contained when locked.
This is useful when you have a huge amount of processing upstream that you don't need to cook every time and the downstream data relies on the node you've locked.
In this case, I need the file SOP to send geometry downstream, and since I don't have your original .obj file to read, I need the file SOP to be locked with the file already read.
Also, if you go to the /out network of your Houdini UI, you can drop down a render node specifically for writing out FBX geometry, and you have all the same controls as the File->Export stuff. MOre, actually. And you can save different render nodes with different settings. /out (or any ROP net) is where we put node for writing just about everything to disk: Geometry, sim data, images from 3d renders, and images from compositing networks.
cheers!
And yes, that's exactly what I meant. In Houdini when you lock a node, it freezes the information contained within it. That means nothing above processes or gets passed through, and it sends downstream the data it contained when locked.
This is useful when you have a huge amount of processing upstream that you don't need to cook every time and the downstream data relies on the node you've locked.
In this case, I need the file SOP to send geometry downstream, and since I don't have your original .obj file to read, I need the file SOP to be locked with the file already read.
Also, if you go to the /out network of your Houdini UI, you can drop down a render node specifically for writing out FBX geometry, and you have all the same controls as the File->Export stuff. MOre, actually. And you can save different render nodes with different settings. /out (or any ROP net) is where we put node for writing just about everything to disk: Geometry, sim data, images from 3d renders, and images from compositing networks.
cheers!
Houdini Indie and Apprentice » Indie > Unity FBX Rig Import Issues
- stjohn
- 140 posts
- Offline
Hi Rick,
Do me a favor: re-upload your example file with /obj/officeDudeA/file3 locked with the geometry in it. I can't debug your setup with no model.
Also, how are you baking out the FBX? From a FBX ROP or from the File menu?
cheers,
-John
Do me a favor: re-upload your example file with /obj/officeDudeA/file3 locked with the geometry in it. I can't debug your setup with no model.
Also, how are you baking out the FBX? From a FBX ROP or from the File menu?
cheers,
-John
Houdini Indie and Apprentice » Indie > Unity FBX Rig Import Issues
- stjohn
- 140 posts
- Offline
Houdini Lounge » Carve SOP Power User?
- stjohn
- 140 posts
- Offline
The carve SOP doesn't respect local variables either, so have fun with the foreach SOP. oops
Houdini Lounge » Carve SOP Power User?
- stjohn
- 140 posts
- Offline
Houdini Engine API » Welcome to the Houdini Engine forum!
- stjohn
- 140 posts
- Offline
This is where we'll discuss issues regarding implementation, functionality, wish lists, and experiences with the Houdini Engine and its various plugins - Unity, Maya, and Unreal.
This is an exciting time, and we're glad to share it with you!
cheers,
-John
This is an exciting time, and we're glad to share it with you!
cheers,
-John
Houdini Lounge » bake colors to texture map
- stjohn
- 140 posts
- Offline
One thing to be aware of is that Mantra doesn't support raytraced modes when rendering to texture. There is an RFE in for this, but no idea if/when it will be addressed.
Houdini Lounge » Houdini 13 Wishlist.
- stjohn
- 140 posts
- Offline
SYmekstjohn
Am I understanding this correctly?
Someone is actually defending how hard Houdini is to learn and use?
And this refers to what?
I'm not going to dig through this whole thread (and others) for examples for you. Somebody suggested that Houdini's UI be improved to the point where new users can more easily work towards making the most of the power available. Somebody then said it's fine the way it is and somebody else said they should go away and learn more before posting what they'd like to see in the UI and workflow.
That's garbage, and it happens on this forum all the time.
For all you new users out there, don't give up. Don't let these guys tell you what you want is wrong. When it comes to subjective topics like user experience, your voice is just as important as theirs.
That said, with regard to technical advice, you should listen, and listen well, because they know what they're talking about. But one does not necessarily invalidate the other.
Houdini Lounge » Houdini 13 Wishlist.
- stjohn
- 140 posts
- Offline
Am I understanding this correctly?
Someone is actually defending how hard Houdini is to learn and use?
Usability vs power is a false choice. There are plenty of examples out there of software that's both useless and difficult. Conversely, there's powerful software that's extremely intuitive.
This is the thing that bugs me most about this forum and why I hardly ever post here. A lot of times, whenever someone brings up the uncomfortable yet elephantine fact that Houdini has a steep learning curve and a pisspoor 3d interaction/visualization model, at least one of the old school power users tells the noob “go away, and don't come back until your beard is as long and as white as mine.”
Don't do that. You're not helping.
Someone is actually defending how hard Houdini is to learn and use?
Usability vs power is a false choice. There are plenty of examples out there of software that's both useless and difficult. Conversely, there's powerful software that's extremely intuitive.
This is the thing that bugs me most about this forum and why I hardly ever post here. A lot of times, whenever someone brings up the uncomfortable yet elephantine fact that Houdini has a steep learning curve and a pisspoor 3d interaction/visualization model, at least one of the old school power users tells the noob “go away, and don't come back until your beard is as long and as white as mine.”
Don't do that. You're not helping.
Houdini Lounge » Epic’s Unreal Engine 4
- stjohn
- 140 posts
- Offline
Sure, as long as everything you need to do looks like Unreal 4 FX.
Viable for previs, I suppose, but you still have to create all those FX for the Unreal project asset library. I think the pain of realtime rendering would be offset by the lack of flexibility/controllability and the experience of using the Unreal editor.
Viable for previs, I suppose, but you still have to create all those FX for the Unreal project asset library. I think the pain of realtime rendering would be offset by the lack of flexibility/controllability and the experience of using the Unreal editor.
Houdini Indie and Apprentice » HD and Unity3d
- stjohn
- 140 posts
- Offline
I'm going to bump this, because in the immortal words of The Dude, new s*** has come to light.
Houdini/python has no native support for YAML, and Unity has no native support for JSON, which is how Houdini 12 saves geo and bgeo files, but both easily handle XML.
It's trivial to implement a Python (SOHO) ROP to output your scene hierarchy, and it's also trivial to make one for outputting geo data, assuming you know XML, the python XML library methods, and the HOM geometry methods.
It's also trivial to implement the same type of ROP to save your geometry to an XML file. Past a certain point, though, XML flattens out as a viable solution for moving large amounts of data.
On the Unity side, it's a little less trivial, but not much so, to implement a couple of Editor Script to parse your saved XML files and build objects and meshes in the hierarchy. This tends to slow down as your XML files get bigger and contain more things to parse, but I can give you this helpful tip
When creating objects, load all the unique meshes into the hierarchy from prefabs, then instantiate a bunch of copies from those (based on an instance attribute of course), because loading thousands of objects from disk is going to give you an involuntary coffee break, possibly an afternoon off.
Houdini/python has no native support for YAML, and Unity has no native support for JSON, which is how Houdini 12 saves geo and bgeo files, but both easily handle XML.
It's trivial to implement a Python (SOHO) ROP to output your scene hierarchy, and it's also trivial to make one for outputting geo data, assuming you know XML, the python XML library methods, and the HOM geometry methods.
It's also trivial to implement the same type of ROP to save your geometry to an XML file. Past a certain point, though, XML flattens out as a viable solution for moving large amounts of data.
On the Unity side, it's a little less trivial, but not much so, to implement a couple of Editor Script to parse your saved XML files and build objects and meshes in the hierarchy. This tends to slow down as your XML files get bigger and contain more things to parse, but I can give you this helpful tip
When creating objects, load all the unique meshes into the hierarchy from prefabs, then instantiate a bunch of copies from those (based on an instance attribute of course), because loading thousands of objects from disk is going to give you an involuntary coffee break, possibly an afternoon off.
Houdini Lounge » make a game in 48 hours
- stjohn
- 140 posts
- Offline
This is an excellent idea, and a great place to show off the sheer amount of material you can generate in a very short time using Houdini.
The difficulty currently is getting the content into the game engine if you're using HD or Apprentice. Unless you have FBX export support, or a houdini geo reader on the engine/editor side, you'll be limited by what you can shove into a .obj file.
If you're using Escape or Master, that's not a problem, and all you need to do is make sure you're using FBX export so you can do multiple UV sets.
The best way to do it would be to have a lot of game-ready tools set up as HDA's so that when it comes time to actually enter the competition, you can spend the 48 hours most efficiently.
The difficulty currently is getting the content into the game engine if you're using HD or Apprentice. Unless you have FBX export support, or a houdini geo reader on the engine/editor side, you'll be limited by what you can shove into a .obj file.
If you're using Escape or Master, that's not a problem, and all you need to do is make sure you're using FBX export so you can do multiple UV sets.
The best way to do it would be to have a lot of game-ready tools set up as HDA's so that when it comes time to actually enter the competition, you can spend the 48 hours most efficiently.
Houdini Lounge » Scene view tool state
- stjohn
- 140 posts
- Offline
Is there a hotkey or something that will bring the object scene view into the tool state of the display SOP of the selected object?
For instance, creating a curve object from the shelf tool, you're in curve-edit mode in the object view. When you stop building the curve and go do something else, you have to go into the SOP context to edit the curve again.
What I'd like to be able to do is select my curve object in the object view, then edit that curve SOP in the object view, same as if I'd used the shelf tool to construct a new one. If the curve SOP is the only SOP in the curve object, this should be easy, right?
cheers,
-JOhn
For instance, creating a curve object from the shelf tool, you're in curve-edit mode in the object view. When you stop building the curve and go do something else, you have to go into the SOP context to edit the curve again.
What I'd like to be able to do is select my curve object in the object view, then edit that curve SOP in the object view, same as if I'd used the shelf tool to construct a new one. If the curve SOP is the only SOP in the curve object, this should be easy, right?
cheers,
-JOhn
Houdini Indie and Apprentice » HD and Unity3d
- stjohn
- 140 posts
- Offline
If you can wait for Unity 3.5, you can use HOM scripting to write out ASCII scene, prefab, and project files.
Of course that puts you in YAML hell, but Houdini and python are very good at dealing with text-based formats.
Of course that puts you in YAML hell, but Houdini and python are very good at dealing with text-based formats.
Technical Discussion » Groups and dynamic fracturing.
- stjohn
- 140 posts
- Offline
Technical Discussion » Groups and dynamic fracturing.
- stjohn
- 140 posts
- Offline
johner,
What I wound up doing was making a copy of the Voronoi Fracture Configure Object asset and exposing the ‘group’ parameter of the asset's internal voronoi fracture configure DOP. This was the solution that presented the least complexity to the user, but yours is way better if that's not an option, and better than deleting data piecemeal.
Just to carry it through, I modified the makeBreakable shelf tool and the makeObjectBreakable function to accommodate this. The grouping is a little sloppy; right now, the groupstring is every rbdobject from the selection set, no matter where the fractureparms asset is wired in, but it works, in that it behaves like you'd expect this tool to behave pick some dopobjects to make breakable and it makes those objects breakable, rather than everything coming from the nodes that created them. Some refinements would include basic python parsing stuff like comparing the selection set against the set of objects created by a source node and setting the group parm to be only the objects in both, or setting group to * if the selection set includes all the rbd objects from a source node.
As soon as I can get to my other computer, I'll post the tool and asset.
What I wound up doing was making a copy of the Voronoi Fracture Configure Object asset and exposing the ‘group’ parameter of the asset's internal voronoi fracture configure DOP. This was the solution that presented the least complexity to the user, but yours is way better if that's not an option, and better than deleting data piecemeal.
Just to carry it through, I modified the makeBreakable shelf tool and the makeObjectBreakable function to accommodate this. The grouping is a little sloppy; right now, the groupstring is every rbdobject from the selection set, no matter where the fractureparms asset is wired in, but it works, in that it behaves like you'd expect this tool to behave pick some dopobjects to make breakable and it makes those objects breakable, rather than everything coming from the nodes that created them. Some refinements would include basic python parsing stuff like comparing the selection set against the set of objects created by a source node and setting the group parm to be only the objects in both, or setting group to * if the selection set includes all the rbd objects from a source node.
As soon as I can get to my other computer, I'll post the tool and asset.
-
- Quick Links