Defining product variant ahead of time

How do people handle variants?

I would love to create in Ayon the variants beforehand instead of artist need to add the variant at the moment they are working on it, so artist knows how and what to work on and what type of variants they need to create.

I think it would be good that you can add variants to the tasks, so if we’ve a spaceship that needs to be damaged over a period of time we can add to the modeling task

texturing task

Or as another example is a Prop that we need to spawn in our scene.
In this case a trashCan, i would like to have multiple variants to that trashCan Instead of 5 different assets.
As they are really close related but some have a specific dent etc.
And i think to have those prepped on a task level is the best way.

Maybe something like this quick mockup

How do people handle variants?

On our variants are totally under artist control. They can publish any model variant, any pointcache variant, etc. and they are ‘hardly’ predefined other than that the Creator in the Publisher can define ‘defaults’ for variants the artist can pick from (which is the little button next to the variant field). But admittedly, we use that quite little.

We often also create multiple variants from a single workfile - so these are not ‘different tasks’ or anything like that.

A single task and workfile for us can often generate quite a few variants (and thus products)

But curious to hear as well how others approach it.

Hi Robert.

If you use the Tray Publisher, you can set its default variants here :

Web App–>Studio Settings–>Studio Settings–>TrayPublisher–>Simple Create Plugins–>Product type

As an example, the Product type “model” already have these default variants : Main, Proxy, Sculpt.
Maybe you would want to add these : FromClient, Purchased

Hi Yul.

yeah indeed.

But the thing is we want to plan ahead of what variants are needed and in the end track them trough ayon or SG/Ftrack

We do bigger and bigger shows where we need to prep and think of all assets beforehand, so we need a place to fill in what the type of variants we need from an artist
Especially if we’ve freelancers they exactly know how and what to create.
Off course the options should still be there that artist can create the variants.

Are you doing it from a single workfile per variant as well, or separate ones? if separate ones, then having a task per variant could make this work?

So having a modelMain task modelDamaged task, etc.
Another option could be setting up the Creators in such a way to read the “default variants” via some custom logic (would mean you’d need to fork the codebase and tweak creators just slightly) so that maybe it could list the variants based on a custom attributes field on a folder or task and go from there.

E.g. a model task having a variants attribute with variants: main and damaged. Then other logic could rely on those attributes?

Might bring it close to what you’re asking. Whether it’s “Good practice” I’ll leave open for discussion. If it works for you, then it works for you. :+1:

Having separate tasks is not the preferred option, as mostly those files are to closely related to each other and would add time to the asset creation.

In the end we could just opt for having a note on the task to say which variants we need.

But i do like the idea of having a separate entity/column where you can add the variants, which ayon reads out and automatically populate in the variants dropdown.
This way you can add them, manage them from a producers point of view (or sup) but still keep the flexibility.

When i’ve some time i can check what we can do wo create this

It’s an interesting problem - having laid out “what products” you anticipate from a task or folder from a producer’s perspective could be quite nice.

I wonder what @dee.ynput and @milan think about that from a design/workflow perspective.

1 Like

The problem is so interesting actually that i’ll take the liberty and split out the conversation to it’s own topic and add my 2 cents in there.

1 Like

Ignoring any consideration about whether it’s a good idea or not to do this. That is purely up to the studio to decide.

I think there would be a fairly straightforward way of doing this that might also be quite user friendly. Simply allowing to create empty products in the UI, would very quickly solve the problem number 1. How do we define it. Easy to understand for everyone and doesn’t need any new principles to be created.

Once you have empty products created, it would be about allowing (or forcing) artists to publish version into them. That is not hard on a technical level at all, but could be tricky from the artist UX perspective.

Provided I have modelMain and modelDamaged predefined by production:

  • Do we allow the artist to publish other variants?
  • If not, can they go and create a new product on the web, to then populate it?

Apart from those questions, I really like the idea actually and feel it might be possible to make something like that without breaking the open workflow that we have now and that is, frankly speaking, probably the most common way of working.


Sounds good.
I do like the idea that if an artist publishes a variant it will also populate the web production. Or at least our producers would be very happy.
And off course to take a look ahead into the future, how are we going to manage and track this?
I do think we need to be able to set a status on a variant?
Or if it’s such a big thing should it be a different task?

Also taken in mind how USD likes variants and is build up from the ground with this principle it would be good to have those aligned in ayon as in the end, we’ll all go that route.

1 Like

I agree with Robert
In production, when the number of shots is growing, tracking the proper use of variant by shot of model and ‘look’ can be painful for the coordinator/supervisor if this is fully put in the hand of the artist.
Very often there will be issues of continuity between shot.

A solution would be
-create in advance the asset and the variant needed
-extend the idea of casting and give the possibilty to assign in ftrack/shotgun the -proper model variant / shading variant to the shots
-export this information at the layout/ animation stage
-get it back in the lighting stage to correctly assign the right shading.

problem solve : )