STAGE · shot0100.usdWARSTW · 4KOPII DANYCH · 0
Rozdział 11 / Wymiana danych

USD: uniwersalny opis sceny

Jak złożyć środowisko z tysięcy assetów bez kopiowania ich do jednego pliku — problem, który Pixar rozwiązał dla siebie, a potem oddał całej branży.

TL;DR

Wyobraź sobie środowisko lasu z dziesięciu tysięcy drzew, każde nieco inne, plus postacie, pojazdy i rekwizyty porozrzucane po całej scenie. Tradycyjne podejście — zaimportuj wszystko do jednego pliku sceny — zawala się przy takiej skali: plik staje się gigantyczny, każda zmiana w jednym drzewie wymaga ręcznego zaktualizowania dziesięciu tysięcy kopii, a dwóch artystów pracujących nad tą samą sceną (layout i fx) nieustannie nadpisuje sobie nawzajem pracę. USD (Universal Scene Description) istnieje po to, żeby ten problem rozwiązać u źródła.

Etap: Kompozycja, nie kopiowanie

Scena składana w locie, nie scalana na stałe

Centralna idea USD nazywa się kompozycją. Zamiast trwale scalać dane wielu assetów w jeden plik, USD trzyma je osobno i składa gotowy widok — nazywany stage — dopiero w momencie otwarcia albo renderu, na podstawie zestawu reguł mówiących, co się z czego bierze. Każdy plik USD, który dokłada swoją część do tej układanki, nazywa się warstwą (layer). Nic nie jest kopiowane — stage to zawsze żywe złożenie warstw, nie ich trwały zapis.

Etap: Trzy podstawowe mechanizmy

Reference, warstwy, warianty

To celowo uproszczony opis — pełne, precyzyjne reguły pierwszeństwa między warstwami (tzw. composition arcs) mają swój dokładny porządek i wyjątki, które rozkładamy krok po kroku w Dodatku B.

Stage.composeCztery warstwy, jeden shot
layout.usd — pozycje assetów anim.usd — cache animacji fx.usd — symulacje lighting.usd — światła Stage shot0100.usd złożone w locie, bez kopiowania danych
Każdy dział edytuje własną warstwę osobno — stage to ich żywe, nietrwałe złożenie.
Etap: Skąd się to wzięło

Narzędzie wewnętrzne, które stało się standardem

USD nie powstał jako projekt akademicki ani inicjatywa konsorcjum — to narzędzie, które Pixar zbudował dla samego siebie, żeby udźwignąć rosnącą złożoność własnych produkcji, od Cars po Coco. W 2016 roku studio zdecydowało się oddać je światu jako otwarty standard. Dziś, dekadę później, USD jest fundamentem pipeline'u w studiach, które nigdy nie miały nic wspólnego z Pixarem — od Weta Digital po Animal Logic — a Alliance for OpenUSD (AOUSD), konsorcjum obejmujące m.in. Apple, Adobe, Nvidię i Autodesk, rozwija go dalej jako wspólną własność całej branży. Bliżej tej historii i decyzji, która za nią stała, przyjrzymy się w Dodatku P (Pixar) i Dodatku S (poza Pixarem).

Słowniczek
Stage
Gotowy, złożony widok sceny — wynik kompozycji wielu warstw USD w danym momencie.
Layer (warstwa)
Pojedynczy plik USD dokładający własną „opinię" o scenie, edytowany niezależnie od innych.
Reference (referencja)
Wskazanie na dane w innym pliku zamiast ich kopiowania — podstawa wielokrotnego użycia assetów.
Variant (wariant)
Jedna z kilku wymiennych opcji tego samego assetu, wybierana bez duplikowania danych.
Prim
Podstawowa jednostka sceny USD (obiekt w hierarchii) — odpowiednik węzła w outlinerze DCC.