How to set an Edit Target to a referenced layer. #3191
Replies: 3 comments 6 replies
-
This is great stuff @jcoelho88 thanks for sharing! |
Beta Was this translation helpful? Give feedback.
-
Is there a plan to add the functionality to set the edit target across reference arcs in the USD Layer Editor or another bit of UI? @seando-adsk |
Beta Was this translation helpful? Give feedback.
-
We currently do not have plans to support this, but your discussion has brought it up for discussion on the team. Do you have thoughts on the UX for this workflow? With the current layer editor, the UX is manageable with a top-level layering. I can imagine that very complex scenes with large numbers of references might be challenging to accommodate in the layer editor. Do you have some proposed workflow designs? |
Beta Was this translation helpful? Give feedback.
-
How does one set an edit target to a reference from a prim?
For the longest time I though you could only set an edit target to a layer that's part of the stages local layer stack, meaning something that might look like this:
In this image I can use the layer editor to pick any of the sublayers that compose the stage to have my edits target.
This is all fine and makes sense but what if your stage was composed using references?
If I structure an asset using references that defines things like the materials and their bindings separate from the mesh and UV's for example then wouldn't it be nice to target those layers to work on specific workflows.
I've only recently learned that this was possible via a thread on the usd-interest group.
You can view the thread here, assuming you have joined the group: https://groups.google.com/g/usd-interest/c/dE-sGU6c8qU/m/9GnqRdoHAAAJ
This next bit is what pointed me to the answer for allowing of edit targeting references.
"The slick "working in context" feature that USD provides, which also takes care of time-remapping concerns when you are trying to edit animation, is to set up a UsdEditTarget in your Level stage that targets DiningSet.usd through the reference (or whatever arcs bring it in). Using an EditTarget is very transparent and effortless, and will give you exactly the workflow it sounds like you're looking for. The problem with EditTargets is that support for setting them up intuitively is lacking in most DCC's, and those that do limit the range of targets to root-layer subLayers (I think). We developed UsdPrimCompositionQuery to make it easier to "find" the right "target node" and layer with which to configure a UsdEditTarget: the UsdPrimCompositionArc structures that a Query produces give you just what you need, but it takes some learning and either good GUI or knowledge of your asset structure to use it effectively. You can have a look at the unit test for some pointers, hopefully. "
So for anyone looking for an example on how this might work here is something I've tested.
When you open the Layer editor after setting the edit target to the refenced layer you will notice that there is no displayed layer that is selected. This is because the Layer Editor can't display things that are references.
Any changes you make now should be targeting what you set as the edit target. To confirm this, write out the layer to the script editor, then make a change and write it out again, you should see your new opinions the second time around.
Here is how to write the layer to the script editor and a few other things to test.
This may not be something everyone will take advantage of but I hope it can maybe unlock some workflows that may have not been considered.
Cheers,
Jason Coelho
Beta Was this translation helpful? Give feedback.
All reactions