Object merge recursive object path pattern

   3395   2   0
User Avatar
Member
72 posts
Joined: Sept. 2012
Offline
Hiya!

Is there way to define a wildcard pattern which merges objects recursively from all “depths” in a subnet hierarchy?

for example something that would pick up all “OUT_RENDER” nodes from all of the following paths:
/obj/subnet1/geo/OUT_RENDER
/obj/subnet1/subnet2/geo/OUT_RENDER
/obj/subnet1/subnet2/geo2/OUT_RENDER
/obj/subnet1/subnet2/subnet3/geo/OUT_RENDER
/obj/subnet1/subnet2/subnet3/subnet4/geo/OUT_RENDER
…etc…

…so somethin like using the bash globstar syntax “/obj/**/OUT_RENDER” - is this possible somehow?
User Avatar
Member
8554 posts
Joined: July 2007
Offline
AFAIK you can do it by specifying finite number of levels, each level separated by whitespace like this


/obj/subnet1/*/OUT_RENDER /obj/subnet1/*/*/OUT_RENDER /obj/subnet1/*/*/*/OUT_RENDER /obj/subnet1/*/*/*/*/OUT_RENDER etc

or maybe doing python Node.glob() to get all nodes you are interested in and output the list of them

(is there any reason for having so many nested Object Level subnets? as they are not necessary for parenting I can imagine that they were created by importing FBX or Alembic at default settings, which I find very unintuitive, but note that you can just uncheck Import Null Nodes as Subnets to get clean hierarchy
similarly for Alembic uncheck Build Hierarchy Using Subnetworks)
Tomas Slancik
FX Supervisor
Method Studios, NY
User Avatar
Member
72 posts
Joined: Sept. 2012
Offline
Actually I'm not the biggest fan of deep subnet hierarchies either

This “subnetted hierarchy” would be actually coming from reading in a custom “location set” file which brings in a hierarchy of pontentially hundreds to thousands of element assets. Somehow managing this many objects in a flat hierarchy using parenting feels a bit messy compared to subnetted hierarchy.

I'm looking for sort of a best of both worlds solution where I could on the interactive object side keep everything in a neat hierarchy but on the render side merge all the alembic prims into single geometry and use the path attribute for allkinds of handy procedural access to the geometry.
  • Quick Links