OpenUSDPreview
Open in TheBrain

Material Variants

Material Variants:

Example:

    
     from pxr import Usd, UsdShade, Sdf
     stage = Usd.Stage.Open("path/to/your.usda")
     prim = stage.GetPrimAtPath("/path/to/prim")
     variantSet = prim.GetVariantSets().AddVariantSet("materialVariant")
     variantSet.AddVariant("option1")
     variantSet.AddVariant("option2")
     variantSet.SetVariantSelection("option1")
     with variantSet.GetVariantEditContext():
         material1 = UsdShade.Material.Define(stage, "/path/to/material1")
         UsdShade.MaterialBindingAPI(prim).Bind(material1)
     variantSet.SetVariantSelection("option2")
     with variantSet.GetVariantEditContext():
         material2 = UsdShade.Material.Define(stage, "/path/to/material2")
         UsdShade.MaterialBindingAPI(prim).Bind(material2)
     ```