A rig and texture have a mutual dependency of a particular version of a model.
Say we have these two versions of the same asset:
- version A of the rig uses version X of the model
- version B of the rig uses version Y of the model
There is a matching texture asset:
- version P of the texture uses version X of the model
- version Q of the texture uses version Y of the model
Now, when the shot hits lighting, we want to attach the animation geocache (which is model-dependent) to the texture (which is also model-dependent). If the animation was built with version A rig, we want to use version P texture in lighting, and the same for B and Q. This happens a lot on mature productions where assets have gone though many iterations.
Shotgun doesn't really have any concept of Shot/Task/Version to Asset/Task/Version dependencies, and Asset/Task/Version to Asset/Task/Version. I can't think of any clean way to do this without many-to-many connections.
Has any other studio come up with a nice way of modeling this?