You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have several meshes and several textures as parts of the same asset. I want to switch between them using two variantSets (mesh3 with tex1, mesh2 with tex4, etc.)
I payload this asset into prim, make it instanceable, duplicate many times... at this point they are considered as instances, the same data (based on unique triangles report in the log).
As soon as I start changing texture variants, they become duplicates. So, mesh1+tex1 and mesh1+tex2 are considered as two meshes and generate twice as many triangles and occupy twice as many RAM (many mesh1+tex1 still count as one, many mesh1+tex2 still count as one as well, so, everything is correct on that part).
(1) Is that a limitation of mayaUsd plugin and will be improved eventually? Or is that a general USD logic and will stay this way? Loading the same mesh into memory again and again just because I've changed a texture doesn't seem to be efficient.
(2) Will it be possible to assign materials over instances (to approach this issue from the other end)? Right now it throws an error "authoring to an instance proxy is not allowed", so, I should make it non-instanceable first and ruin the purpose. ALab scene throws a dozen of these errors on load, so, I assume that's a current limitation of mayaUsd plugin and should eventually be resolved, right?
variantSets are awesome, but work inefficiently on that matter compared to usual Maya instances workflow at the moment. Or am I doing something wrong?
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
(Maya 2024.2, mayaUsd 0.26.0, MtoA 5.3.5, Win10)
I have several meshes and several textures as parts of the same asset. I want to switch between them using two variantSets (mesh3 with tex1, mesh2 with tex4, etc.)
I payload this asset into prim, make it instanceable, duplicate many times... at this point they are considered as instances, the same data (based on unique triangles report in the log).
As soon as I start changing texture variants, they become duplicates. So, mesh1+tex1 and mesh1+tex2 are considered as two meshes and generate twice as many triangles and occupy twice as many RAM (many mesh1+tex1 still count as one, many mesh1+tex2 still count as one as well, so, everything is correct on that part).
(1) Is that a limitation of mayaUsd plugin and will be improved eventually? Or is that a general USD logic and will stay this way? Loading the same mesh into memory again and again just because I've changed a texture doesn't seem to be efficient.
(2) Will it be possible to assign materials over instances (to approach this issue from the other end)? Right now it throws an error "authoring to an instance proxy is not allowed", so, I should make it non-instanceable first and ruin the purpose. ALab scene throws a dozen of these errors on load, so, I assume that's a current limitation of mayaUsd plugin and should eventually be resolved, right?
variantSets are awesome, but work inefficiently on that matter compared to usual Maya instances workflow at the moment. Or am I doing something wrong?
Beta Was this translation helpful? Give feedback.
All reactions