WORK · hero_char_rig.mbPUBLISH · hero_char_rig_v034.mbSTATUS · pending review
Rozdział 7 / Dane i wersje

Publish: praca robocza kontra wersja zatwierdzona

Najważniejsze pojęcie w tej książce — granica między plikiem, w którym pracujesz, a wersją, którą zobaczy następny dział.

TL;DR

Wracamy teraz do granicy, którą Rozdział 4 zarysował fizycznie jako dwa foldery, work/ i publish/. Ten rozdział wyjaśnia, co dokładnie tę granicę przekracza i dlaczego — bo publish to prawdopodobnie najważniejsze pojedyncze pojęcie w całym pipeline. Jeśli zrozumiesz tylko jeden mechanizm z tej książki, niech to będzie ten.

Etap: Pod maską przycisku Publish

To nie jest „Zapisz jako"

Intuicyjnie „opublikować" brzmi jak „zapisać w innym miejscu". W praktyce publish to zwykle znacznie więcej niż kopiowanie pliku — to konkretna sekwencja kroków, wykonywana przez narzędzie pipeline'u, nie ręcznie przez artystę:

Dopiero wszystkie te kroki razem — nie sam zapis pliku — nazywają się publikacją.

Etap: Publikacja to nie zatwierdzenie

Dwa osobne progi, nie jeden

Łatwo założyć, że skoro coś zostało opublikowane, jest automatycznie gotowe do użycia. W wielu pipeline'ach to prawda dla wczesnych etapów produkcji — szybkość iteracji jest ważniejsza niż formalna kontrola. Ale przy elementach o dużym wpływie na resztę produkcji (hero asset, którego dotyczy setki shotów) dochodzi zwykle drugi próg: zatwierdzenie (approval) przez supervisora, osobne od samego publikowania. Artysta może publikować wersje robocze do przeglądu tyle razy, ile potrzebuje; dopiero jedna z nich, oznaczona jako zatwierdzona, staje się tą, którą inne działy pobierają domyślnie. Do tego mechanizmu — kto może zatwierdzać i jak wygląda taka bramka — wrócimy głębiej w Dodatku H.

Etap: Strona odbiorcy

Nikt nie przegląda cudzych folderów

Druga połowa tego mechanizmu dotyczy tego, jak opublikowana wersja trafia do kogoś innego. Artysta w dziale animacji, który chce wczytać rig postaci, nigdy nie otwiera ręcznie ścieżki na dysku i nie szuka najnowszego pliku po dacie modyfikacji. Używa narzędzia — loadera albo referencera — które zna konwencję z Rozdziału 4, odpytuje system śledzenia z Rozdziału 8 i automatycznie proponuje najnowszą zatwierdzoną wersję. To domyka pętlę z Rozdziału 3: shot referuje asset przez tę samą, przewidywalną ścieżkę, nigdy przez ręczne kopiowanie pliku ani zgadywanie, który plik jest aktualny.

Publish.flowOd pliku roboczego do innego działu
Plik roboczy work/, wolna forma Publish eksport + wersja hero_char_rig_v034 publish/, sztywna nazwa Zarejestrowane w systemie śledzenia ↓ loader innego działu widzi tylko to
Etap: Dlaczego to działa

Wracamy do chaosu z Rozdziału 1

Warto na chwilę wrócić do sceny z pierwszego rozdziału i przepuścić ją przez ten mechanizm. Riger, zamiast szukać pliku z „FINAL" w nazwie na dysku sieciowym, otwiera loader, który pokazuje mu jedną, jednoznaczną, najnowszą zatwierdzoną wersję modelu — nie cztery kandydatki do zgadywania. Artysta teksturujący nie podmienia pliku pod tą samą nazwą — publikuje nową wersję, która dostaje własny numer i nie nadpisuje niczego, z czego ktoś już korzysta. Lighting artysta, który następnego dnia odpala ten sam render, wciąż widzi dokładnie tę wersję tekstury, którą zaakceptował dzień wcześniej — dopóki sam świadomie nie zaktualizuje swojej referencji do nowszej. Cały chaos z Rozdziału 1 rozbijał się o brak dokładnie tego mechanizmu.

Słowniczek
Publish (publikacja)
Formalny krok eksportu, wersjonowania i rejestracji wyniku pracy jako dostępnego dla innych.
Approval (zatwierdzenie)
Osobny od publikacji krok, w którym supervisor oznacza konkretną wersję jako gotową do użycia downstream.
Loader / referencer
Narzędzie, przez które inne działy wczytują opublikowane wersje — nigdy przez ręczne przeglądanie dysku.
Latest approved version
Najnowsza wersja oznaczona jako zatwierdzona; domyślny wynik zapytania loadera, jeśli approval jest w użyciu.