aspose.info
CS

USD - Univerzální formát popisu scény

Aktualizováno

Co je soubor USD?

Soubor s příponou .usd je formát souboru Universal Scene Description, který kóduje data za účelem výměny a rozšiřování dat mezi aplikacemi pro vytváření digitálního obsahu. USD, vyvinutý společností Pixar, poskytuje možnost vyměňovat si základní prvky (jako jsou modely) nebo animace.

Formát souboru USD

Soubory USD mohou mít binární formát (také známý jako soubory Crate) nebo soubory zálohované ASCII. Oba tyto formáty souborů jsou zaměnitelné, kde lze odkazy propojit s aktivy .usd bez změny zdrojů. Formát souboru USD se skládá ze sady knihoven C++ s vazbami Python pro skriptování. Umožňuje sestavení a organizaci libovolného počtu prvků 3D scény, jako jsou virtuální sady, scény a záběry, za účelem jejich přenosu z aplikace do aplikace.

Typy dat USD

Základní datové typy podporované formátem souboru USD jsou uvedeny v následující tabulce.

Token typu hodnotyTyp C++Popis
boolbool
ucharuint8_t8bitové celé číslo bez znaménka
intint32_t32bitové celé číslo se znaménkem
uintuint32_t32bitové celé číslo bez znaménka
int64int64_t64bitové celé číslo se znaménkem
uint64uint64_t64bitové celé číslo bez znaménka
polovinaGfHalf16 bitů s plovoucí desetinnou čárkou
floatfloat32bitová plovoucí desetinná čárka
doubledouble64 bit s plovoucí desetinnou čárkou
timecodeSdfTimeCodedvojitý představující rozlišitelný čas
stringstd::stringstl řetězec
tokenTfTokeninternovaný řetězec s rychlým porovnáním a hashováním
assetSdfAssetPathpředstavuje řešitelnou cestu k jinému aktivu
matrix2dGfMatrix2d2x2 matice dvojic
matrix3dGfMatrix3d3x3 matice dvojic
matice4dGfMatrix4dmatice 4x4 dvojic
quatdGfQuatdčtveřice s dvojitou přesností
quatfGfQuatfčtveřice s jednoduchou přesností
quathGfQuathčtveřice s poloviční přesností
double2GfVec2dvektor 2 dvojic
float2GfVec2fvektor 2 plováků
polovina2GfVec2hvektor 2 polovičních
int2GfVec2ivektor 2 ints
double3GfVec3dvektor 3 dvojic
float3GfVec3fvektor 3 plováků
polovina3GfVec3hvektor 3 polovičních
int3GfVec3ivektor 3 ints
double4GfVec4dvektor 4 dvojic
float4GfVec4fvektor 4 plováků
polovina4GfVec4hvektor 4 polovičních
int4GfVec4ivektor 4 ints

Příklad USD

Příklad souboru USD v prostém formátu souboru ASCII je následující.

#usda 1.0

class "_class_Planet"
{
    bool has_life = False
}

def Xform "SolarSystem"
{
    def "Earth" (
        references = @./planet.usda@</Planet>
    )
    {
        bool has_life = True
        string color = "blue"
}

    def "Mars" (
        references = @./planet.usda@</Planet>
    )
    {
        string color = "red"
}

    def "Saturn" (
        references = @./planet.usda@</Planet>
        variants = {
            string rings = "with_rings"
    }
    )
    {
        string color = "beige"
}
}
#usda 1.0

class "_class_Planet"
{
}

def Sphere "Planet" (
    inherits = </_class_Planet>
    kind = "model"
    variantSets = "rings"
    variants = {
        string rings = "none"
}
)
{
    variantSet "rings" = {
        "none" {
            bool has_rings = False
    }
        "with_rings" {
            bool has_rings = True
    }
}

}

Reference

Viz také