lighttransport/tinyusdz

[USDA] Print properties lexicographically?

Opened this issue · 0 comments

pxrUSD prints properties lexicographically always, but TinyUSDZ is not.

TinyUSDZ prints properties lexicographically for USDA input, or USDC without properties Prim metadata(exists only in USDC).
When properties metadata exists in USDC, TinyUSDZ prints properties based on it.

For example, attached USDC has the following properties metadata

 properties = ["myval", "aval"]

And tusdcat prints USD scene as

#usda 1.0

def "bora"
{
    def "a"
    {
        float myval = 1
        float aval = 2
    }

    def "b"
    {
    }

    def "aa"
    {
    }
}

but pxrUSD usdcat prints as

#usda 1.0

def "bora"
{
    def "a"
    {
        float aval = 2
        float myval = 1
    }

    def "b"
    {
    }

    def "aa"
    {
    }
}

NOTE: Prim is not always printed lexicographically.
prop-order-001.zip