Grouping objects issues

   4530   3   2
User Avatar
Member
581 posts
Joined: July 2005
Offline
Hi all, i'm making a set of scripts, in mel and hscript, to export the poly geometry and groups from maya to houdini.
The great problem is to respect the hierarchy of objects and groups existing in maya and export this hierarchy to houdini.
Maya works all in objects space, i've reproduce the groups using subnets. My problem is how i can parent one subnet to another subnet contained in it, if i transform a subnet these transformations affects to the objects contained in the subnet, but not to the subnets contained in it., so the transformations can't be propagated along the tree of subnets …
Now i can reproduce the group hierarchy from maya to houdini using subnets, i create subnets into other subnets instead of parenting them in one level, so i can't propagate the transformations, but get a nicely organization of all the objects into several levels, the houdini's tree view seems like the maya's outliner, but there isn't parenting
I think that another way to do that is creating the tree of subnets in one level, and parenting properly recreating the tree of maya objects, the problem to this approach is that all the objects are created in one level so the organization is poor.

Any advices, thanks …
Un saludo
Best Regards

Pablo Giménez
User Avatar
Member
321 posts
Joined: July 2005
Offline
lisux
The great problem is to respect the hierarchy of objects and groups existing in maya and export this hierarchy to houdini.
Maya works all in objects space,
From what I remember, Maya has transforms at many levels. The trickyness is that in Houdini, there's a *very* clear distinction between what's in object-space (your SOPs), and what's in world-space (your OBJects). This distinction is much blurrier in Maya, as a single cube, which has 6 faces, will have a parent container (part of which is a transform), and then 6 transforms, and then a single nurbs patch under each of those. So what's in world-space, and what's in object-space? Your call! Technically, though, only the leaf node geometries are (AFAIK) truly in object-space.

To bring something over to Houdini, you have to define for yourself where you make that break. On top of that, there's object-level parenting as well. So, it seems like the best replication is to have a bunch of parented OBJects, and have each of these OBJects contain a bunch of SOPs.

In the cube example above, I'd make cube OBJect, and inside it, have six nurbs patches, each followed by a transform SOP, finally followed by a merge SOP combining the six faces.

BTW, to replicate an OBJect hierarchy inside SOPs via transform SOPs, you have to reverse the order of the transforms.

– Antoine
Antoine Durr
Floq FX
antoine@floqfx.com
_________________
User Avatar
Member
7726 posts
Joined: July 2005
Online
Maya's object groups are more akin to object input/output hierarchy in Houdini. So your second idea is more correct. I think everything should be done via parenting (ie. input/outputs in objects) at the *same* level. Maya doesn't really have the same concept of subnets.

As for organization when they're all at the same level, a useful thing to do is to collapse parts of it that seem to go well together like entire rigs.
User Avatar
Member
581 posts
Joined: July 2005
Offline
Thanks for the answers.
First i made a mistake when i said that maya do all of their transformations in objects space, not, maya make the mayority of their transformations in world space, and parenting objects and groups in maya is like parenting objects in OBJ context.
The main problem is, as it said antoine, that maya don't separate the world and object context, it make a kind of mixture of both .
So my solution is to work in OBJ context, for every poly i found in maya i make a geo OBJ, for every group i make a subnet and wire a null object into the first input of the subnet, with this null object i can propagate the transformations, create all the objects in the maya group into the subnet and wire all with the first input, that is wired to the null object. So i have subnets thats works like the maya's groups.
The next is to create macros that can propagate actions along a subnets hierarchy, like applying shaders, a topic that is discused in another thread in this forum.
I think that another insteresting thing is that the display color can be chosed from the group list for a set ob objects, like the color layers in maya, and the posibility to select more than one object, using shift or ctrl keys, in the tree view like the maya's outliner.
Some things to improve
Un saludo
Best Regards

Pablo Giménez
  • Quick Links