aspose.info
FA

USD - فرمت توصیف صحنه جهانی

به‌روزرسانی

فایل USD چیست؟

یک فایل با پسوند .usd یک فرمت فایل توصیف صحنه جهانی است که داده ها را به منظور تبادل و افزایش داده ها بین برنامه های کاربردی ایجاد محتوای دیجیتال رمزگذاری می کند. USD که توسط Pixar توسعه داده شده است، توانایی مبادله دارایی های اصلی (مانند مدل ها) یا انیمیشن را فراهم می کند.

فرمت فایل USD

فایل‌های USD می‌توانند فرمت باینری (همچنین به عنوان فایل‌های Crate نیز شناخته می‌شوند) یا فایل‌هایی با پشتیبانی ASCII داشته باشند. هر دوی این فرمت‌های فایل قابل تعویض هستند، جایی که می‌توان مراجع را بدون تغییر منابع به دارایی‌های USD. پیوند داد. فرمت فایل USD شامل مجموعه ای از کتابخانه های C++ با اتصالات پایتون برای اسکریپت است. این امکان مونتاژ و سازماندهی هر تعداد از عناصر صحنه سه بعدی مانند مجموعه های مجازی، صحنه ها و عکس ها را فراهم می کند تا آنها را از برنامه ای به برنامه دیگر منتقل کند.

انواع داده USD

انواع داده های اساسی پشتیبانی شده توسط فرمت فایل USD در جدول زیر فهرست شده است.

توکن نوع مقدارنوع C++توضیحات
بولبول
ucharuint8_tعدد صحیح بدون علامت 8 بیتی
intint32_tعدد صحیح امضا شده 32 بیت
uintuint32_tعدد صحیح بدون علامت 32 بیتی
int64int64_tعدد صحیح امضا شده 64 بیت
uint64uint64_tعدد صحیح بدون علامت 64 بیتی
نیمGfHalf16 بیت ممیز شناور
شناورشناورمیز شناور 32 بیتی
دوبلدوبلمیز شناور 64 بیتی
timecodeSdfTimeCodeدوبار نشان دهنده زمان قابل حل
stringstd::stringstring stl
tokenTfTokenرشته داخلی با مقایسه سریع و هش
assetSdfAssetPathمسیری قابل حل به دارایی دیگر را نشان می دهد
matrix2dGfMatrix2dماتریس 2x2 دوتایی
matrix3dGfMatrix3dماتریس 3x3 دوتایی
matrix4dGfMatrix4d4x4 ماتریس دوتایی
quatdGfQuatdکواترنیون با دقت دوگانه
quatfGfQuatfکواترنیون تک دقیق
quathGfQuathکواترنیون نیمه دقیق
double2GfVec2dبردار 2 دوبل
float2GfVec2fبردار 2 شناور
half2GfVec2hبردار 2 نیمه
int2GfVec2iبردار 2 اینچی
double3GfVec3dبردار 3 دوبل
float3GfVec3fبردار 3 شناور
half3GfVec3hبردار 3 نیمه
int3GfVec3iبردار 3 اینتی
double4GfVec4dبردار 4 دوبل
float4GfVec4fبردار 4 شناور
half4GfVec4hبردار 4 نیمه
int4GfVec4iوکتور 4 اینتی

مثال USD

نمونه ای از یک فایل USD در قالب فایل ASCII ساده به شرح زیر است.

#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
    }
}

}

منابع

همچنین ببینید