ARTYKUŁ: brushe, patche czy modele?

Zaglądnij tutaj, jeśli masz pytania lub uwagi dotyczące różnorodnych aspektów tworzenia misji w edytorze Darkmod, jak też związanego z nimi oprogramowania i sprzętu.

Moderatorzy: peter_spy, timon

Awatar użytkownika
Juliusz
Złodziej
Posty: 2774
Rejestracja: 04 stycznia 2004, 11:28
Lokalizacja: Dublin
Kontakt:

ARTYKUŁ: brushe, patche czy modele?

Post autor: Juliusz »

Jak budować - czyli brushe, patche czy modele?

Artykuł ten będzie porównaniem różnych metod tworzenia architektury w Dark Modzie. Trzy metody, czyli: brushe - nazywane także bryłami, patche - czyli łaty oraz modele mają swoje odrębne cechy i do różnych celów nadają się lepiej lub gorzej. Ale zarazem niektóre rzeczy można uzyskać paroma metodami - wówczas dobrze jest znać wszelkie plusy i minusy każdej techniki, żeby podjać włąściwą decyzję.

Generalnie, architektura zbudowana którąkolwiek z wyżej wymienionych technik reaguje na światło identycznie, bowiem wszystko jest w procesie kompilacji przeliczane na face'y (trójkątne powierzchnie), a światło jest całkowicie dynamiczne. Dla przykładu - w dark enginie brushe były cieniowane shadow mapami, a obiekty za pomocą vertex shadera, co dawało w zestawieniu mniej lub bardziej zauważalne różnice w jasności i cieniowaniu. W doom enginie różnice tyczą się głównie wygładzania, teksturowania, ilości detalu oraz funkcji.

1. BRYŁY (BRUSH'E)
Jest to podstawowa metoda tworzenia geometrii w każdym silniku gier. Brushe w Dark Radiancie są prostymi bryłami, takimi jak prostopadłościan, stożek, cylinder itp. itd. Dark Radiant (DR) daje możliwości kształtowania brył, takie jak rozciąganie, zmniejszanie, cięcie czy wreszcie edycja wierzchołków. Trzeba sobie uświadomić, że bryły są tak naprawdę nie zbiorem punktów połączonych krawędziami (tak jak modele 3D) tylko zbiorem przecinających się płaszczyzn. Stąd pewne operacje na wierzchołkach oraz zmniejszanie bądź rozszerzanie brył nieregularnych ma pewne ograniczenia i może dawać czasem zaskakujące rezultaty.

Brushy używamy przede wszystkim do budowania ogólnej geometrii mapy. Jedynie brushami można ograniczać świat oraz dzielić go na obszary oddzielone od siebie visportalami. Jeśli zatem decydujemy się na budowanie architektury za pomocą łat lub modeli, zawsze musimy pod spodem/za nimi postawić brushe. Pokrywamy je wówczas specjalną teksturą - CAULK - która choć nierenderowana, zamyka szczelnie świat gry. Jak wiemy - przecieki do nicości są niedozwolone.

Brushami możemy także budować detale mapy, takie jak barierki, ubytki w murze, dziurawe dachy czy profilowane gzymsy. Jednak bryły mają jedno zdecydowane ograniczenie - krawędzie pomiędzy płaszczyznami nigdy nie są wygładzane - zawsze ostre.

Pewną niespodzianką jest to, iż za pomocą brył da się także modelować proste obiekty oraz modele kolizji (collision mesh) dla nich, dzięki czemu po konwersji mogą służyć jako obiekty ruchome - obdarzone fizyką. Aczkolwiek jest to metoda raczej rzadko wykorzystywana, czasem jako punkt wyjścia do dokładniejszego modelowania w programie 3D.

Tekstury nałożone na brushe możemy dowolnie skalować oraz przesuwać. Z łatwością możemy kopiować ustawienia tekstur z jednej bryły na inną.

2. ŁATY (PATCH'E)
Łaty są to cienkie (pozbawione grubości) powierzchnie składające się z połączonych krawędziami wierzchołków. Opierają się na krzywych Beziera, tzn. linie łączące wierzchołki są krzywiznami, których stopień można regulować. Pozwalają na modelowanie powierzchni zaokrąglonych (np. sklepienia i łuki) oraz organicznych (np. nierówny teren). W przeciwieństwie do brushy, patche dają zawsze wygładzone powierzchnie. Do tego łaty pozwalają na regulowanie złożoności siatki - określając ilość podziałów możemy wpływać na gładkość bądź kanciastość wymodelowanych powierzchni.

Łaty stanowią uzupełnienie techniki budowania brushami, pozwalając na uzyskanie gładkich, ograniczych kształtów. Nigdy natomiast nie zastąpią ich we funkcji zamykania świata. Jeśli łata graniczy z pustką, musimy za nim postwić brusha, żeby ową dziurę - jak na ironię - załatał.

Ponadto - patche nie są uwzględniane podczas obliczania ścieżek dla AI. Jeśli mamy teren zbudowany z patchy, musimy pod nim zbudować teren z brushy, z grubsza tylko podążający za terenem z łat. Ścieżki co prawda zostaną obliczone dla płaskich powierzchni brushy, ale w zupełności to wystarczy do nawigacji AI po nierównym terenie.

Teksturowanie łat jest nieco bardziej skomplikowane niż brushy. Teksturę można nakładać na kilka sposobów, skalować i przesuwać i czasem ciężko jest spasować teksturę patcha ze sąsiadującym brushem. Tymniemniej da się to pogodzić we większości przypadków, gdyż Dark Radiant został rozbudowany o narzędzia służące do teksturowania patchy.

Pewną wadą patchy jest to, iż nie można uzyskać za ich pomocą idealnie okrągłego kształtu. Najbliższy okręgowi kształt zawsze będzie wyglądał nieco jak kwadratowy okrąg. Wynika z uproszczonego podejścia do krzywych Beziera - w każdym programie 2D bądź 3D krzywe te są określane za pomocą dwóch niezależnych "ramion" - w Dark Radiancie za pomocą jednego punktu (ramion złączonych w jednym punkcie).

Często to nie przeszkadza, tymniemniej jeśli zależy nam na naprawdę okrągłym kształcie, musimy skorzystać z modeli.

3. MODELE
Modele, czyli obiekty stworzone w programach 3D, takich jak Lightwave, 3ds Max czy Blender mają zastosowanie bardzo szerokie i często mogą konkurować z bryłami albo łatami.
Jako że kolizje z modelami wykrywane są precyzyjnie, możemy je wykorzystywać do budowania dowolnej architektury, po której może poruszać się gracz, bądź AI. Żeby jednak AI mógł poruszać się po wymodelowanych płaszczyznach, musimy stworzyć niewidzialną konstrukcję z brushy oteksturowanych materiałem monster clip.

Teoretycznie da się wymodelować całą mapę w np. 3dsmaxie i zaimportować ją do Dooma 3. Po dodaniu wyżej wspomnianych monsterclipów, mapa będzie grywalna. Tymniemniej byłoby to rozwiązanie niewłaściwe ze względów wydajności. Modele, w przeciwieństwie do brył czy łat, są zawsze renderowane w całości, jeśli tylko ich fragment (a konkretnie - gabaryty) pojawią się w kadrze. Niezbędne byłoby zatem podzielenie takiej mapy na małe fragmenty oraz podzielenie jej brushami i visportalami.

Modele nie mają właściwie żadnych ograniczeń jeśli chodzi o kształt, wygładzanie krawędzi oraz stopień detalu - dają zatem rezultaty najefektowniejsze wizualnie i są jedynym wyjściem jeśli chodzi o organikę typu drzewa, posągi, itp. itd.
Tymniemniej mają kilka wad:
- trzeba je tworzyć w osobnych programach, których znajomość nie jest powszechna.
- wszelkie zmiany należy dokonywać również w owych programach - co komplikuje system pracy
- skalowanie ich jest problematyczne. Właściwie oficjalnie nie da się ich skalować. Istnieje jednak metoda obracania z minusowym współczynnikiem, daje ona jednak czasem nieprzewidywalne rezultaty. Jest jednak szansa, że po upublicznieniu silnika dooma da się obsługiwać skalowanie modeli statycznych.

Jednakże modele użyte jako elementy architektury, takie jak okna, framugi, zadaszenia, barierki, płotki, podesty, mosty, dachy domów, kominy itp. itd. znacząco ożywią mapę i nadadzą jej bardziej organiczny, średniowieczny charakter dzięki miękkiemu cieniowaniu, okrągłościom, nieregularnościom, drobnemu detalowi, ubytkom, zakrzywieniom itp. itd. Modelując powyższe tylko za pomocą brushy i patchy, ciężko wyjść poza sztuczny, sztywny, zgeometryzowany charakter świata, świetnie pasującego do oryginalnego Dooma 3, ale nie do średniowiecznego świata, w którym dzieje się akcja Dark Moda.
Awatar użytkownika
Bukary
Homo Rhetoricus
Posty: 5569
Rejestracja: 12 sierpnia 2002, 18:15
Lokalizacja: Gildia Topielników (przy tawernie Pod Rozszalałym Wichrem)

Re: ARTYKUŁ: brushe, patche czy modele?

Post autor: Bukary »

Juliuszu, jesteś wielki! Bardzo dobry tekst. Oby więcej takich!
Thief Antologia PL: od 20 X 2006 w sklepach!
Zagraj w FM Old Comrades, Old Debts i zobacz moje zrzuty.
Awatar użytkownika
Juliusz
Złodziej
Posty: 2774
Rejestracja: 04 stycznia 2004, 11:28
Lokalizacja: Dublin
Kontakt:

Re: ARTYKUŁ: brushe, patche czy modele?

Post autor: Juliusz »

:)

no, patrz - a ja myślałem, że konkretnych porad Tobie trzeba.... :)
Awatar użytkownika
Bukary
Homo Rhetoricus
Posty: 5569
Rejestracja: 12 sierpnia 2002, 18:15
Lokalizacja: Gildia Topielników (przy tawernie Pod Rozszalałym Wichrem)

Re: ARTYKUŁ: brushe, patche czy modele?

Post autor: Bukary »

Ano trzeba! Ale ten artykuł jest świetny na początek. Teraz napisz dlaszy ciąg z konkretami (obrazki!). :)
Thief Antologia PL: od 20 X 2006 w sklepach!
Zagraj w FM Old Comrades, Old Debts i zobacz moje zrzuty.
ODPOWIEDZ