Export abc geometries and related json dynamically

   649   0   1
User Avatar
Member
2 posts
Joined: 8月 2015
Offline
Hello, I'm trying to use TOP for the first time. I'm still missing several things, and it would be fantastic if you could help me understand if what I'm trying to do makes sense.

My idea was to create a structure that, given geometries as input (resulting from DOP) with a defined naming convention, dynamically manages exports so that operators can update it without getting their hands dirty with code but only managing nodes. The desired output is Alembic files of the geometries, filtered by the operator as needed, and a final JSON that only updates the data of the exported elements.

I set the storage of geometries as a Geometry Attribute, merged all inputs, generated all the necessary attributes with a Python script, and there's an optional filter. From this point, there are several things I can't set up as I would like. My idea was to use a partition so that outputs using common calculations are processed in the same batch, export the multiple outputs with an Alembic ROP, then expand the partition again to have one item per geometry with its attributes, and finally close the process with another Python script that manages the JSON.

The first problem I encounter is attribute management. I suppose I should keep them in an array so that they are available for an expand, is that correct? If I keep the attributes of the items that generate it in the partition, the node gives me the following warning: "Incompatible types 'Geometry' and 'Geometry' when merging attribute 'geometry'." It is not clear to me how I should handle the Geometry Attribute.

The second problem, when partitioning the items, the ROP seems to generate only the first output per item. I don't understand if I need to set the node differently or if it depends on how attributes are handled.

The third point concerns the expand node. If I apply the expansion to items in the upstream partition, if the parent node is work items instead of partitions with the rectangular icon, it seems not to work. Do I need a parallel branch? How could I filter just cooked Alembics?

At this point, I doubt if I am using partitions improperly. Could you tell me if I am setting the basic configuration incorrectly and, if so, how I could structure it?

Important note: I am using version 18.5.563 of Houdini.

I've attached an example file.

Attachments:
testing_export.hip (508.8 KB)

  • Quick Links