packed prims and complex data

   4161   7   1
User Avatar
Member
184 posts
Joined: Dec. 2008
Offline
hi,

i am very impressed by the speed and performance of packed prims and instancing.
some questions:
how we can handle the packing - instancing of more complex objects with multible materials assigned? the helpcard says no prim attributes but materialpaths as an exeption. if only one material per packedprim is possible, what woud be an ideal workflow for i.e. a charakter with 10 materials?

thank you

Lucas
User Avatar
Staff
2617 posts
Joined: July 2005
Offline
wildruf
hi,

i am very impressed by the speed and performance of packed prims and instancing.
some questions:
how we can handle the packing - instancing of more complex objects with multible materials assigned? the helpcard says no prim attributes but materialpaths as an exeption. if only one material per packedprim is possible, what woud be an ideal workflow for i.e. a charakter with 10 materials?

edit: maybe this makes more sense focusing on situations where meterial masks play a role.

thank you

Lucas

There are two parts to this. First is the assignment of the material. If each “part” inside a packed primitive has a shop_materialpath, it should be used when rendering.

However, when sending data to mantra, we currently don't inspect the contents of packed primitives to determine what SHOPs need to be sent down to the IFD.

It's possible to add the “Declare Materials” parameter to the output driver, which can force all SHOPs to be sent down to mantra. Or if you're technically savvy, it's possible to write an IFD render hook to ensure the right data is there.

But, right now, it's only possible to set the materials on the top level packed primitive in a reliable way.
User Avatar
Member
184 posts
Joined: Dec. 2008
Offline
thank you mark!

“But, right now, it's only possible to set the materials on the top level packed primitive in a reliable way.”

i m not exactly shure what you mean by that…. at the moment we can assign 1 material per packed prim?
i.e… when i load a bgeo sequ via file SOP as a packed delayed load there is currently no way to access groups ore any other information nessessary to apply different materials to different parts of my geometry without unpacking the data?

cheers

Lucas
User Avatar
Member
4271 posts
Joined: July 2005
Offline
wildruf
thank you mark!

“But, right now, it's only possible to set the materials on the top level packed primitive in a reliable way.”

i m not exactly shure what you mean by that…. at the moment we can assign 1 material per packed prim?

You can make nested packed prims. (Ie packing a bunch of packed prims into one prim.) Right now only those top level material assignments are supported, assignments to the inner nested prims wouldn't be.
if(coffees<2,round(float),float)
User Avatar
Member
184 posts
Joined: Dec. 2008
Offline
ok thank you !
User Avatar
Member
379 posts
Joined: Dec. 2006
Online
I am getting unpredictable results with packed primitives and materials assignment.

Is this one of correct procedures?
1. import object
2. assign material with materials sop (to various groups)
3. Add Pack sop
4. Add copy node and go crazy

Sometimes it render materials but in some cases it just discards them. I noticed that if I am overriding parameter in materials SOP it will discard it, but sometime even there are no overrides it will discard assigned materials.

Am I doing something wrong?
User Avatar
Member
184 posts
Joined: Dec. 2008
Offline
i'm shure we ll get some workflow advices for the packed stuff soon:!… for now i only use them without groups and split my assets into several seperated parts.

cheers

L
User Avatar
Staff
2617 posts
Joined: July 2005
Offline
SreckoM
I am getting unpredictable results with packed primitives and materials assignment.

Is this one of correct procedures?
1. import object
2. assign material with materials sop (to various groups)
3. Add Pack sop
4. Add copy node and go crazy

Sometimes it render materials but in some cases it just discards them. I noticed that if I am overriding parameter in materials SOP it will discard it, but sometime even there are no overrides it will discard assigned materials.

Am I doing something wrong?

The issue is that when we generate the data for mantra, we don't unpack the primitives in Houdini. So, we don't know what materials are needed in the scene. The second paragraph below is what might help you.
However, when sending data to mantra, we currently don't inspect the contents of packed primitives to determine what SHOPs need to be sent down to the IFD.

It's possible to add the “Declare Materials” parameter to the output driver, which can force all SHOPs to be sent down to mantra. Or if you're technically savvy, it's possible to write an IFD render hook to ensure the right data is there.
  • Quick Links