syoyo / tinyusdz

Tiny, dependency-free USDZ/USDA/USDC library written in C++14

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Note] UsdPreviewSurface specification

syoyo opened this issue · comments

https://graphics.pixar.com/usd/release/spec_usdpreviewsurface.html

Latest version

2.5

UDIM

UsdPreviewSurface

Blender

UsdUVTexture

  • black border color: Not sure what actual black color should be. Possible value is transparent black (0, 0, 0, 0) or opaque black (0, 0, 0, 1)
    • Currently TinyUSDZ Tydra uses transparent black.

UDIM

Tangents, binormals

The spec says

    #
    # Parameters only useful for tangent space normal mapping
    # Note : Currently, we only support one tangent frame
    #
    # Details : Name of the primvar in your geom to use for the tangents.
    # Default : "tangents"
    string inputs:frame:tangentsPrimvarName = "tangents"

    # Details : Name of the primvar in your geom to use for the binormals
    # Default : "binormals"
    string inputs:frame:binormalsPrimvarName = "binormals"

    # Details : Name of the texture coordinate to be use to calculate
    #            the tangent frame. Mikktspace or similar is recommended for
    #            consistency
    # Default : "st"
    string inputs:frame:stPrimvarName = "st"

Although there is no actual example usage of inputs:frame:* in pxrUSD git repo(and some USDZ files), we are better to consider supporting it for better normal mapping(supply user-defined per-vertex tangents/binormals)