Autor: Pirat
7.5. Przygotowanie do eksportu
Gdy cała siatka UV jest gotowa, możemy przystąpić do przesunięcia odbitych (mirror) elementów, o 1 ćwiartkę w prawo. Dzięki temu każdy, kto będzie miał do czynienia z modelem, od razu zorientuje się które fragmenty nie są unikatowe. Na wcześniejszych etapach, dobrze jest oznaczyć odbite (mirror) fragmenty np. poprzez material ID, później łatwiej będzie nam określić jakie wyspy (UV island) należy przesunąć.
7.4. Układ
Z technicznego punktu widzenia, nie ma znaczenia w jaki sposób rozmieścimy wyspy na UV. Mimo to, istnieje kilka wskazówek, w jaki sposób należy to robić. Priorytetem jest utworzenie takiej siatki, aby każdy mógł zauważyć, gdzie jaki element się znajduje. Sam sposób rozcinania ścianek, przesuwania ich obok siebie również ma znaczenie.
Poszczególne elementy powinny leżeć obok siebie poukładane w logiczny sposób (przykładowo: naboje koło magazynka, cyngiel koło prowadnicy, itp.) W znaczący sposób ułatwia to teksturowanie. Grafik nie musi poszukiwać elementów po całej siatce, tylko wie, że znajdują się obok.
Dzięki rozłożeniu siatki UV zgodnie z grawitacją, korzystanie z programów do generowania tekstur zaoszczędzi wielu problemów związanych z kątem padania zacieków / wzorów. Również ułatwi to umieszczanie typografii. Do podglądu stosowany jest gravity checker.
Jeszcze jednym ważnym parametrem rozkładania siatek, jest dystans pomiędzy wyspami. Należy przyjąć zasadę, że odstęp powinien wynieść minimalnie 4-6 px dla docelowego rozmiaru tekstury (w wypadku, gdy przepalamy model w wyższej rozdzielczość, odstępy powinno być powiększone o ten sam mnożnik).
Im większe przerwy, tym większe straty rozdzielczości tekstury jednak zachowanie odstępu jest konieczne ze względu na edge padding. Zagadnienie to zostało dokładnie opisane na polycount wiki.
Do liczenia odstępów stosowany jest noise pattern.
7.3. Mniejsze elementy
Drobną sztuczką, dzięki której większość graczy odczuje broń jako model z teksturą o wysokiej rozdzielczośći jest powiększenie wielkości UV małych detali, takich jak np. śrubki. Drobne detale, drażnią nas, przyciągają uwagę – szczególnie w sytuacji, gdy przełamują one monotonię jednolitej płaszczyzny. źródło
Właśnie na podstawie detali gracz określa jak „dobrą grafikę” ma dana broń, dlatego warto zainwestować w nie odrobinę więcej miejsca na UV.
Ten dodatkowy mnożnik (baza × hierarchia × dodatkowy mnożnik) nie powinien przekraczać ok. 1.15 i często jest podyktowany ilością wolnego miejsca na siatce UV.
2014. Preattentive Processing źródło: http://www.csc.ncsu.edu/faculty/healey/PP/index.html
7.2. Hierarchia ważności
Sugerując się hierarchią ważności, którą określiliśmy w modelu lowpoly, należy odpowiednio przeskalować UV island tak, aby odpowiadały „zapotrzebowaniu” na rozdzielczość. Im bliżej kamery, tym większa skala na UV.
Po rozcięciu i rozłożeniu wysp, tak aby aspect ratio UV było proporcjonalnie (takie samo dla całego modelu), przystępuje się do ich przeskalowania. Mnożniki skali zwykle wyglądają w następujący sposób:
- 1.2 – elementy znajdujące się bliżej gracza (celowniki, optyk, tył broni przy samej kamerze;
- 1.1 – pozostałe elementy znajdujące się blisko kamery;
- 1.0 – korpus broni, magazynki;
- 0.8 – lufa, przód broni.
- 0.6 – elementy poza kamerą
Metodą, pozwalającą upewnić się, że wszystkie fragment mają odpowiednią skalę, jest sprawdzanie skali szachownicy UV checker w kadrze. Jeśli elementy mają podobne zagęszczenie, zależne od perspektywy (im dalej, tym mniejsza skala UV island), to powinniśmy uzyskać dobry rezultat.
Dodatkowo można wspomóc się detail map. Dzięki niej „wyrównamy” rozdzielczość tekstury na całej broni. Jednak należy pamiętać, aby utworzyć dodatkowy UV set, na którym wszystkie UV island będą miały taki sam aspect ratio.
7.1. Mirror
Aby zaoszczędzić miejsce na UV, jak najwięcej powinno być odbite (mirror). Jednak należy unikać „motylków” na UV, szczególnie widocznych z rzutu FPP (dotyczy to głównie elementów takich jak celowniki, cyngle, góra broni)
Najlepiej, gdyby prawa strona, która jest niewidoczna w kamerze, została całkowicie odbita.
7.0. Tekstury – pipeline
Istnieje wiele podejść do kwestii teksturowania, w zależności od narzuconego procesu produkcji (pipeline). Można stosować:
- tekstury dedykowane,
- mieszanie materiałów wg maski lub vertex coloru (blending),
- globalne materiały (generic textures) ustawianie przez ID materiału,
- materiały bazowe i decals lub
- generowanie materiału-koloru (cartoon) jedynie w instancji
A także dziesiątki innych metod…
Przyjęta metoda teksturowania w dużej mierze determinuje sposób tworzenia siatki UV.
Rozkładanie siatki UV omówię na przykładzie tradycyjnego teksturowania, gdyż broń jest na tyle istotna, że często posiada dedykowane tekstury. Takie podejście jest również najbardziej rozbudowane, dlatego świetnie nadaje się do przedstawienia. Doświadczenie, zdobyte w ten sposób zaowocuje i ułatwi podejmowanie decyzji przy innych procesach produkcyjnych (zwykle mniej skomplikowanych).
Pracę rozpoczynamy od rozcięcia broni na wyspy o takim samym aspect ratio. Wszystkie wyspy powinny być tak rozcięte, aby szwy były niewidoczne w kadrze.
Siatka UV
6.3. Podgląd sylwetki
Poza oglądaniem siatki modelu w podglądzie (viewport), istnieje jeszcze jedna użyteczna metoda sprawdzania dystrybucji geometrii. Należy ustawić czarny materiał (bez cieniowania) i jasne tło. W ten sposób doskonale widać sylwetkę i wszelkie jej niedoskonałość (przesadną kanciastość).
6.2. Redukcja ilości trójkątów
W przypadku, gdy przekroczymy narzucony limit, a nie chcemy zrezygnować z uzyskanego poziomu zaokrąglenia, należy rozpatrzeć przemodelowanie niektórych częśći highpoly. Zmiany te powinny w rezultacie prowadzić do stworzenia mniej skomplikowanego modelu lowpoly. Jednym z najłatwiejszych sposobów, aby zaoszczędzić trójkąty jest dosunięcie elementów do siebie, a następnie usunięcie stycznych ścianek.
Po skończeniu modelu highpoly, grafik nie staje się jego niewolnikiem. Ciągle można wprowadzać pewne zmiany, poprawki, udoskonalenia. Gdy sytuacja tego wymaga i korzystniej dla całego modelu jest zmienić lub usunąć jakiś element, należy to zrobić.
Wszystkie ścianki znajdujące się wewnątrz modelu powinny zostać usunięte. Niepotrzebne, niewidoczne trójkąty to nie tylko strata na geometrii, ale również na siatce UV.