Hi, I'm looking for advices about using variant to manage asset versions.
Something like every version of mdl/mtl will be a variant (v001, v002...) so you can switch versions inside houdini without go through all the folders.
But, I'm a little bit worried about the performance. If I use this approach there will be a lot of variants.
So generally would variants impact performance a lot?
If I have a big scene with:
300 assets with instance,
each asset have 6 variant set,
each variant set have 10 variants
compare to:
300 assets with instance,
each asset have 2 variant set,
each variant set have 2 variants
Would you feel a big difference when you working in houdini?
Would the rendering time different?
I know it also depends on many other tings, but just a general idea.
Thanks!
Is using varant to manage version a bad idea?
1254 3 1- bbrcn
- Member
- 17 posts
- Joined: April 2012
- Offline
- flord
- Member
- 57 posts
- Joined: March 2014
- Offline
I asked that very question on the usd-interest mailing list and someone from Pixar told me that it should not be a big problem. Variants are switches so their composition cost is small. I would not go for tens of versions in a variantSet just by pure caution, but 5 or 6 versions sounds reasonable.
We never actually implemented it in production so I can't tell for sure.
F
We never actually implemented it in production so I can't tell for sure.
F
- antc
- Member
- 335 posts
- Joined: Nov. 2013
- Offline
With a moderate number of versions I wouldn’t expect any performance issues. As previously mentioned variants are like a switch and the inactive selections do not compose.
I just want to mention though that asset resolvers are designed with versioning in mind. The idea is you can keep versioning info out of your usd files, which depending on your workflow might be more convenient. If version info is present in the scene description the downside is you’ll need to update a bunch of files when a new version comes online or an existing version goes offline. If the versioning info is part of some kind of database an asset resolver can connect to the database and determine the version without changing any files. But if you don’t care about that so much, and you want multiple versions in play at the same time, variants might work better.
I just want to mention though that asset resolvers are designed with versioning in mind. The idea is you can keep versioning info out of your usd files, which depending on your workflow might be more convenient. If version info is present in the scene description the downside is you’ll need to update a bunch of files when a new version comes online or an existing version goes offline. If the versioning info is part of some kind of database an asset resolver can connect to the database and determine the version without changing any files. But if you don’t care about that so much, and you want multiple versions in play at the same time, variants might work better.
- bbrcn
- Member
- 17 posts
- Joined: April 2012
- Offline
-
- Quick Links