We actually tried something similar to this in the years leading up to USD’s development in Presto’s scene description, which is very similar to USD’s. It was called “the unified build”, and the goal was to make it much easier to combine different asset feature-pipelines together in a single asset… like a furry blanket, or a rigged hat. And I think it accomplished those goals; but the cost was that it made every single asset uniformly more complicated and heavy… and the assets that benefitted from the ease-of-combination were typically 10-15% of total assets.
We wound up with something more complicated than what you are proposing, and one of our motivating examples for the new USD pipeline we built as we deployed USD was that the number of layers needed to define a single-Mesh spoon asset drop from around 12 to 3. Speaking for just myself and not Pixar, it seems like “full instantiated template” asset structure can be nice for asset authoring, but when trying to “read” an asset, i.e. use, understand, find out where problems might be, there’s alot to be gained from making every asset as simple as it can be.
So that’s why I asked if you have a (scriptable) publish step for your assets, where you could remove all the complexity that the asset-creator(s) have not at that point utilized. We’ve actually gone on a similar but “from the other direction” path, where every asset starts out uniformly simple*, but we’ve made it easy for artists to add layers to incorporate work from various other tools, and have several “build steps” that look for certain tags to add particular feature packages in.
That’s just one perspective, and your mileage may definitely vary!
- That’s not entirely true, since Presto-rigged assets follow a fairly significant fork in the asset pipeline, and we generally identify those assets up-front, I think.