Programowanie gier komputerowych Tomasz Martyn Wykład 2. Cykl produkcyjny wytwarzania gry (1) Prototypowanie geometrii levela na przykładzie UDK
Cykl produkcyjny wytwarzania gry Na początku było Słowo a dokładniej Game proposal document zawierający m.in.: ogólny opis koncepcji gry, w szczególności odwołujący się do gatunków i/lub gier istniejących; scenariusz, często w formie storyboard a; wstępne szkice świata gry i postaci; informacje o zamierzonym, docelowym kręgu odbiorców gry; informacje o platformach docelowych; oszacowanie liczby osobogodzin potrzebnych na wykonanie gry w odniesieniu do poszczególnych grup specjalistów (grafik, level designer, programista, itp.); oszacowanie budżetu.
Jeśli projekt zostanie zaakceptowany, wówczas powoływani są: Lead designer główny mózg tworzenia gry, człowiek świetnie znający się na gamedevie od strony technicznej i jednocześnie o dużej wrażliwości artystycznej; odpowiada za wszystkie aspekty określające gameplay; kieruje zespołem designerów (level designers, gameplay designers, ) i programistów; sporządza dokumentację; reprezentuje swój zespół na zewnątrz. Art director Cykl produkcyjny wytwarzania gry Zstąpienie Demiurgów artysta posiadający dużą wiedzę techniczną na temat wykorzystania software u do modelowania 2D i 3D dla potrzeb gamedevu; nadzoruje zespół zajmujący się artystycznymi (wizualnymi) aspektami wytwarzanej gry (concept arts postaci i świata, tekstury, modele 3D, animacje postaci, HUD, cinematics, cut-scenki, ); sprawuje kontrolę nad tym, aby produkty działalności zespołu współgrały z wizją gry oraz nadawały się do użycia pod względem technicznym; reprezentuje swój zespół na zewnątrz.
Cykl produkcyjny wytwarzania gry Sztuka konceptu Na podstawie szkiców wstępnych i storyboard a, przez artystów tworzone są szczegółowe projekty graficzne (concept arts) strony wizualnej gry, w pierwszej kolejności obiektów 2D i 3D występujących w samej grze, które są istotne z punktu widzenia gameplaya: przede wszystkim świata gry, w szczególności poszczególnych leveli, potem postaci, pojazdów, ekwipunku
Cykl produkcyjny wytwarzania gry a Słowo (zgrubnym) ciałem się stało Po akceptacji concept artów leveli przez Art directora i, następnie, przez Lead designera, przekazywane są one Level designerom. Na ich podstawie Level designerzy: wyznaczają odpowiednio duże struktury geometryczne istotne z punktu widzenia gameplaya (budynki, systemy pomieszczeń); konstruują, zwykle przy wykorzystaniu odpowiedniego edytora 3D, prostą i łatwo modyfikowalną geometrię (placeholders) przybliżającą w sposób zgrubny te struktury; przy użyciu tej geometrii budują prototyp geometrii levela, na ogół bez przykładania większej wagi do materiałów i oświetlenia.
Cykl produkcyjny wytwarzania gry Prototyp geometrii levela Prototyp geometrii levela służy do: a) testowania i modyfikowania wstępnego projektu levela pod względem jego układu, rozmiarów poszczególnych bloków geometrii, jej kształtu, itp., b) prototypowania gameplaya.
Cykl produkcyjny wytwarzania gry Identyfikacja geometrii modularnej Ponadto Level designerzy identyfikują w concept artach leveli małe kawałki podobnej do siebie geometrii, która w finalnie będzie reprezentowana wieloma instancjami tego samego mesha (np. kawałki rur, drzwi, okna, kolumny, ). Meshe te zostaną wymodelowane są przez artystów i następnie wykorzystane przez Level designerów jako assety geometryczne w późniejszej fazie tworzenia levela (na etapie tzw. meshowania levela).
Edytor leveli
Builder Brush i BSP Brush Builder Brush służy do tworzenia BSP Brush'y o kształcie określonym Builder Brushem. Jest jeden Builder Brush i (zwykle) wiele BSP Brushy. Każdy z BSP Brushy reprezentuje sobą jedną z dwóch operacji CSG (Constructive Solid Geometry), której zakres działania wyznacza geometria BSP Brusha. Są to operacje Add i Substract.
CSG: Add i Substract W przypadku operacji Add, BSP Brush generuje geometrię BSP o kształcie określonym tym Brushem. Operacja Substract usuwa geometrię istniejącą w objętości wyznaczonej zakresem Brusha substraktywnego.
CSG: Kolejność operacji Na wynikową geometrię BSP ma wpływ kolejność wykonywanych operacji CSG. W UDK pożądaną kolejność działania poszczególnych BSP Brushy można określić przy użyciu opcji Order I To First i Order I To Last.
CSG: Intersect i Deintersect Do dyspozycji są jeszcze operacje Intersect i Deintersect. W odróżnieniu od operacji Add i Substract, służą one do modyfikowania geometrii Builder Brusha na podstawie geometrii BSP generowanej przez BSP Brushe. Intersect usuwa z Builder Brusha część nie należącą do przecięcia z geometrą CSG. Deintersect usuwa z Builder Brusha część należącą do przecięcia z geometrą CSG. Uwaga: Działanie tych operatorów bywa nieokreślone dla geometrii BSP nie zawierającej geometrii addytywnej i ich użycie w takim przypadku może powodować niestabilne funkcjonowanie edytora. Problem taki może również wystąpić w przypadku przypisania tych operacji BSP Brush om.
Transformacje Poszczególne Brushe można poddawać standardowym transformacjom przestrzennym przy użyciu odpowiednich widgetów transformacji: translacji, obrotów, skalowania jednorodnego, skalowanie niejednorodnego.
Edytowanie geometrii Brusha Edytowanie geometrii Brusha odbywa się w trybie Geometry Mode. Tryb ten oferuje różne narzędzia edytowania. Edycji może podlega zarówno Builder Brush jak i BSP Brush. W zależności używanego narzędzia, edycja może odbywać się na poziomie wierzchołków, krawędzi lub ścian.
Geometry Tools - Edit Translacja wierzchołka Split Weld Narzędzie Edit umożliwia m.in. : dokonywanie transformacji wybranych wierzchołków, krawędzi lub ścian, usuwanie wybranych wierzchołków, krawędzi lub ścian (Delete), dodanie zamkniętego cyklu nowych wierzchołków począwszy od wybranej krawędzi (Split); scalanie wybranych wierzchołków w jeden (Weld), dokonanie triangulacji Brusha lub jego wybranej części (Triangulate), dokonanie optymalizacji geometrii (Optimize), zmianę zwrotu normalnej ściany (Flip). Narzędzie może być zastosowane zarówno do Builder Brusha i BSP Brusha.
Geometry Tools - Extrude Narzędzie Extrude umożliwia tworzenie nowych modułów geometrycznych w Brushu poprzez wybranie jednej ze ścian i następnie jej translację. Narzędzie może być zastosowane zarówno do Builder Brusha i BSP Brusha.
Geometry Tools - Pen Narzędzie Pen służy do tworzenia Builder Brusha na podstawie wielokąta 2D narysowanego w jednym z widoków ortogonalnych. Wielokąt może być wklęsły lub można wymusić aby był wypukły (Create Convex Polygons). Tworzenie Builder Brusha na podstawie wielokąta może nastąpić w jednym z dwóch trybów: 1. Auto Extrude Builder Brusha tworzony jest poprzez przesunięcie wielokąta w osi prostopadłej do wielokąta o liczbę jednostek Extrude Depth; 2. Create Brush Shape wielokąt posłuży do utworzenia Builder Brusha przy wykorzystaniu narzędzia Lathe.
Geometry Tools - Lathe Narzędzie Lathe służy do utworzenia Builder Brusha poprzez obrót wielokąta (nazywanego w tym kontekście: Brush Shape) utworzonego przy wykorzystaniu narzędzia Pen. Obrót dokonywany jest w lokalnym układzie współrzędnych Brush Shape a, wokół środka tego układu (Pivot) i wybranej osi. Położenie lokalnego układu współrzędnych można dowolnie ustalać. Wynikowy Builder Brush składa się z segmentów, których liczbę określa parametr Segments. Dla zadanej liczby Segments, wykonywany kąt obrotu wynika z ustawienia parametru Total Segments, który określa liczbę segmentów przypadającą na 360 stopni.
Geometry Tools Brush Clip Narzędzie Brush Clip służy do dokonania przecięcia Builder Brusha lub BSP Brusha przy użyciu płaszczyzny narysowanej w jednym z widoków ortogonalnych. W zależności od statusu opcji Split, narzędzie działa w jednym z dwóch trybów: 1. (nieaktywna) Jedna z dwóch części Brusha jest usuwana - która z części pozostaje zależy od zwrotu normalnej płaszczyzny (zwrot można zmieniać przy użyciu opcji Flip Normal); 2. (aktywna) BSP Brush rozdzielany jest na dwa BSP Brushe. (W przypadku Builder Brusha działa tak samo jak Split nieaktywny).
Następny wykład: Cykl produkcyjny wytwarzania gry (2) Assety i Content Browser