all  /  full_assets  / OpenChessSet  / assets  / King  / King_look .usd

The Open Chess Set

The Open Chess Set, rendered in Arnold for Maya

A complete USD chess set, with materials encoded in the MaterialX standard. Autodesk’s Standard Surface is used throughout the project, covering shading scenarios including transmission and subsurface scattering.

Origin

The asset was authored by Moeen and Mujtaba Sayed for the Houdini Tutorial Karma | A Beautiful Game.

It was then contributed to the MaterialX project by SideFX, with a conversion to glTF being done by Chris Rydalch and Mark Elendt together with additional refinements by Jonathan Stone.

A compatibility-focused USD version was created by Pablo Delgado for the ASWF Open Source Days 2022 MaterialX & OSL panel (slides). This version was then reworked for use as an openly available USD reference asset.

The normal maps with baked displacement are courtesy of Ed Mackey, and have been proposed as part of a MaterialX glTF PBR version of the asset.

Known Problems

  • The MaterialX colorspace attribute is poorly supported in Hydra render delegates (10/2022). This may lead to incorrect brightening of the base color.
  • z-fighting can be observed in Pixar’s Storm Hydra render delegate (v22.08)

Future Improvements

  • Preview surfaces
  • Displacement maps
  • Low-res proxy geometry

License

This work is licensed under CC BY 4.0 by the Academy Software Foundation.


Edit this page

King_look.usd

#usda 1.0
(
    defaultPrim = "King"
    metersPerUnit = 1
    upAxis = "Y"
)

over "King" (
    variants = {
        string shadingVariant = "Black"
    }
    add variantSets = "shadingVariant"
)
{
    def Scope "Materials" (
        prepend references = @./King_mat.mtlx@</MaterialX/Materials>
    )
    {
    }
    variantSet "shadingVariant" = {
        "Black" {
            over "Geom"
            {
                over "Render" (
                    apiSchemas = ["MaterialBindingAPI"]
                )
                {
                    rel material:binding = </King/Materials/M_King_B>
                }
            }

        }
        "White" {
            over "Geom"
            {
                over "Render" (
                    apiSchemas = ["MaterialBindingAPI"]
                )
                {
                    rel material:binding = </King/Materials/M_King_W>
                }
            }

        }
    }
}