Pracując jako grafik 3D niejednokrotnie tworzy się rzeczy podobne do siebie. Dlaczego zatem nie stosować „prefabrykatów” i gotowych części, które skrócą czas potrzebny do wykonania projektu? Na ten pomysł wpadłem już dawno temu…
Wstęp
Zagadnienie prefabrykacji pewnych elementów modeli chodzi mi już od dłuższego czasu po głowie. A czym to tak w zasadzie jest…?
W mojej nomenklaturze jest to odpowiednie przygotowanie wstępnie wymodelowanych części, które można w pewny sposób dostosować do różnych zastosowań. Dobrym przykładem takiej części może być opona samochodowa – stosuję je w każdym modelu samochodu i po co każdorazowo robić je od nowa?
Jest to dość pracochłonny proces, ale są powody, dla których jest to dobre rozwiązanie:
– oszczędność czasu przy tworzeniu nowego modelu (opony, silnik, części zawieszenia wykonane z prefabrykatów);
– unifikacja – opony niezależnie od rozmiaru i modelu w którym są zastosowane posiadają te same UV mapy bieżnika – daje to też możliwość łatwiejszego tworzenia i zastosowania nowych wzorów bieżnika dla każdego rozmiaru opony.
Pierwsze próby
Pierwsze kroki w celu prefabrykacji nadwozi samochodowych postawiłem dawno temu, bo po stworzeniu modelu Shelby Mustanga GT500 „Eleanor”. Stosowałem wtedy metody modelowania (w oparciu o operacje Bool-owe) opisane w poprzednim poście. Sądziłem, że będę stosował ogólny kształt i zestaw operacji, modyfikując ich kształt. Mając jednak na uwadze to, że ta metoda modelowania jest bardzo praco~ i czasochłonna, bo wymaga mnóstwo dodatkowej pracy związanej z oczyszczaniem siatki, uznałem, że w sumie to jest żadna oszczędność i porzuciłem ten pomysł. Używałem czasami gotowych części z innych modeli, głównie wnętrza, w nowych projektach.
Opony - kwestia geometrii
W lipcu 2022 roku chciałem stworzyć uniwersalną oponę, którą wykorzystałbym w celu przyspieszenia i ujednolicenia tekstur w ramach moich przyszłych projektów związanych z modelowaniem samochodów.
Jak się do tego zabrać?
Trzeba na początku przygotować podstawową bryłę (base mesh). Jest rzeczą jasną, że opona jest generalnie walcem z wyciętymi otworami na felgę w powierzchniach bocznych.
Kiedyś tworzyłem cały bieżnik opony „geometrycznie” tworząc siatkę (Rys. 1 sytuacja u góry) – dawało to w rezultacie czasem 86960 wierzchołków bez żadnej możliwości oteksturowania tej opony ze względu na złożoną geometrię (napisy na ściance bocznej powstały przez zastosowane bump mapy w oparciu o projekcję UV).
Trzeba było jednak przyoszczędzić, ponieważ zestaw 4 opon nieraz miał więcej geometrii niż reszta auta.
Po tym jak nauczyłem się wypalać normal mapy przyszedł czas na zredukowanie geometrii. W efekcie końcowym otrzymałem 80-boczną oponę, która posiada zaledwie 1440 wierzchołków (Rys. 1 dół). Wiem, że nie jest to rozwiązanie idealne, ale jest wystarczające dla opon z płytkim bieżnikiem. Wiadomo, że w przypadku opon z głębokim bieżnikiem, tudzież terenowych z odstającymi karbami taki model nie wystarczy.
Dlaczego 80 boków?
Jest to pewnego rodzaju „kompromis” pomiędzy ilością i jakością. 80 jest podzielne przez m.in: 5, 16, 20, 40, co daje duże możliwości redukcji w ramach LoD (Level of Detail).
Po wybraniu bryły wypadało by ją oteksturować…
Istnieje wiele sposobów rozłożenia siatki UV. Ja zaprezentuję 2.
– „Klasyczny” (Rys. 2 i 3) – stosowany przeze mnie jeszcze do 2022. Robimy cięcia między ściankami bocznymi i bieżnikiem. Bieżnik dzielimy na pół cięciami na górze i dole. Jest to dość intuicyjne podejście do tematu. Nie jest też niepoprawne. Moim zdaniem jest to przede wszystkim marnotrawstwo przestrzeni tekstury. Puste „dziury” w oponach nie bardzo nadają się do wykorzystania, a najlepiej gdyby na tej samej teksturze znalazła się felga. Bezsprzeczną zaletą takiego rozłożenia jest możliwość łatwej edycji tekstury (nawet ręcznie). Problemy pojawiają się w chwili redukcji geometrii np. do poziomu 16 segmentów (Rys.3). Wiele rowków bieżnika ze ścianki bocznej zostaje skoszone i powstają tzw. „zęby” gdy geometria wykracza poza ramy objęte teksturą (nieraz jest to widoczne w środku koła).
– „Nowy” (Rys. 4 i 5) – stosowany przeze mnie od 2022. Polega na przecięciu opony tylko z góry i dołu, tworząc 2 pasma (nie zdradzam w jaki sposób sprowadzam je na prostokąty). Tego typu rozłożenie daje jeszcze sporo miejsca na elementy felgi. Przy redukcji nie występują problemy opisane w poprzednim, „klasycznym” rozłożeniu – opona jakby była wypalona na 16 segmentach i nic nie kosi. Jednak edycja tak rozłożonej tekstury nie jest rzeczą prostą.
Opony - Shape keys
Po stworzeniu modelu opony zrobiłem też arkusz kalkulacyjny, w którym uwzględniłem podstawowe parametry opon dostępnych na rynku. Uwzględniłem średnicę felgi, szerokość całkowitą oraz średnicę całkowitą. Analizując dane stworzyłem uniwersalny model opony (szerokość 245mm, średnica felgi 20 cali, średnica całkowita 0,7m). Teraz należy zastosować pewnego rodzaju parametryzację. Stwierdziłem, że tzw. „shape keys” stosowane w Benderze będą w porządku. Żeby opisać jak stworzyłem swój uniwersalny model opony posłużę się swoimi dawnymi zapiskami i obrazkami. Obecnie model opony, który stosuję do moich projektów samochodów został poprawiony i dodałem jeszcze szerokość felgi.
Na czym to polega?
Aby skorzystać z Shape keys tworzy się tzw. „Basis” czyli bazę, z której będą modyfikowane nowe kształty (Rys. 6). Następnie tworzy się odpowiednie warianty parametrów.
Szerokość (Width 135->355) – przesunąłem ścianki boczne do zewnątrz po 50mm – uzyskałem szerokość 345mm. Parametr jest dwustronny w zakresie od -1,1 do 1,1 (Rys. 7 i 8). Żeby zmienić szerokość o 10mm należy dodać/odjąć 0,1 z parametru.
Średnica felgi – przeskalowałem średnicę wewnętrzną o połowę. Parametr jest jednostronny – umożliwia zmniejszenie średnicy z 20 do 10 cali (Rys. 9, nie sądzę, żebym robił opony na felgach o średnicy większej niż 20 cali, ale w razie czego można powiększyć).
Średnica całkowita
Dia .7->.9 – przeskalowałem wszystko oprócz średnicy felgi z zablokowaniem osi globalnej x. Ten parametr umożliwia ustawienie średnicy całkowitej pomiędzy 0,7 a 0,9m (Rys. 10).
Dia .7->.5 – poprzesuwałem elementy opony żeby uzyskać oponę o średnicy 0,5m (Rys. 11, dla potrzeb rysunku zmniejszyłem średnicę do 13 cali).
W ten sposób można zrobić dowolną oponę. Należy jeszcze poprawić rozłożenie pierścieni na ściankach bocznych i dostosować środek do szerokości felgi, ale to już detal. Dla przykładu zrobiłem oponę 215/45R17 (Rys. 12).
Prefabrykacja części zawieszenia
Do poważnego zastanowienia się nad powyższym tematem skłoniło mnie niedawne zadanie testowe, które miałem wycenić. Nie dogadaliśmy się jeśli chodzi o zakres prac i zadania finalnie nie otrzymałem, ale czasami zadania testowe skłaniają mnie do przemyśleń, co mógłbym jeszcze usprawnić i przyspieszyć. W dokumencie otrzymanym wraz z zadaniem, w pewnym podpunkcie było robienie zawieszenia samochodu. Wiedząc ile jest z tym roboty, chcąc to zrobić ręcznie, trwałoby to znacznie za długo. Wtedy, wieczorem 7 grudnia 2024, przypomniałem sobie jak przy pomocy szkieletu ustawiałem wahacze i inne elementy zawieszenia przy pracy nad swoim pierwszym zadaniem testowym z 2019 roku (tym z zawieszeniem BMW E90, o którym pisałem w tym poście). Jakoś nie umiałem spać tej nocy i sprawdziłem teoretyczne założenia ustawiając wałki z krzyżakami przy pomocy szkieletu i modyfikatora Armature deform. Udało się. Następnego dnia, w niedzielę 8 grudnia 2024 wziąłem na warsztat zawieszenie Dodge Vipera GTS i zacząłem je parametryzować. Do tej pory zrobiłem prefabrykaty maglownicy, stabilizatora z łącznikami, hamulców, piast i zwrotnic oraz wału i półosi napędowych z tego auta. Pozostały wahacze i amortyzatory ze sprężynami. Do końca roku postaram się zrobić więcej części zawieszenia nadających się do zastosowania w przyszłych projektach.
Wyższy poziom
Oczywiście nie poprzestałem na tym, żeby tworzyć w uproszczony sposób tylko opony i części zawieszenia. Po tygodniu postanowiłem usprawnić swój proces tworzenia „prawideł” do modyfikatora Shrinkwrap. Ten etap modelowania zabiera mi dużo czasu, a można zrobić to szybciej. Zamiast każdorazowo strugać od początku kształt można posłużyć się prefabrykatem, który ma już wycięte nadkola, wyciągnięty dach, w miarę czystą topologię i przy pomocy kości nadać mu odpowiedni kształt. Poniżej zamieszczam taki prefabrykat prawidła (Rys. 13) i zgrubny kształt który można z niego otrzymać (Rys. 14). W celu sprawdzenia działania posłużyłem się planami Audi TT, które już zrobiłem, bo wiem, że nie mają jakichś poważnych błędów. Ustawienie nowego kształtu trwało może kilkanaście minut, a efekt jest zadowalający. Oczywiście jest to tylko zgrubny zarys i musi zostać później dopracowany i muszą zostać dodane szczegóły, ale jak na taki krótki czas nie jest źle…



