Crytek-HQ.com

Voxel Tutorial (Fortgeschritten)

Voxel Objekte Tutorial
Original (english) von Crytek, übersetzt und überarbeitet von WarpSpeed.

 


 Übersicht

Dieses Tutorial beschreibt wie man ein überhängendes Cliff und eine Höhle mit Hilfe der Voxel Technologie erstellt.


 Was ist Voxel Technologie?

Die Voxel Technologie erlaubt dir komplexe 3 dimensionale, organische “Maschen” im Editor zu erstellen. Dies wird durch den Einsatz von “Voxel Objekten” oder kurz “VO” erreicht.

Jedes “Voxel Objekt” basiert im Prinzip auf einem 3D Gitter (überlicherweise 32x32x32 Einheiten). Jede Einhheit beinhaltet Informationen ob es voll oder leer ist, welche Öberflache es besitzt und was dessen Basisfarbe ist.

Jede Änderung wird dem “Designer” sofort angezeigt, da die Landschaft nach jeder Änderung des “Voxel Objekts” aktualisiert wird. “VO”s können sowohl für Aussenareale als auch für den Innenbereich eingesetzt werden.


 Beispiel 1: Cliff mit Überhang

VO”s können im Zusammenspiel mit der Höhenmap (Hightmap) das Terrain aufwerten. Es ist zwar möglich komplette Level als “VO”s darzustellen, allerdings sollte dies auf Grund der hohen Speicherauslastung und damit trägeren Rendergeschwindigkeit nicht gemacht werden. Es ist am Besten zuerst das Terrain via der Höhenmap (Hightmap) zu erstellen und erst dann mit Hilfe von “VO”s den Rest zu modelieren.

 


 Den Voxelbereich festlegen

So, nun werden wir ein Cliff wie oben dargestellt in ein Level einbauen. Gehen wir davon aus, dass wir einen Hügel, ähnlich dem unten dargestellten bereits haben.




Um einen nahtlosen Übergang zwischen dem “VO” und der Höhenmap (heightmap) zu erreichen müssen wir das “VO” (in dessen X und Y Achsen) dem Höhenmap-Gitter angleichen. Der einfachste Weg dies zu erreichen ist, vor dem platzieren des “VO” die Option [Snap to grid] zu aktivieren. Die Größe des Gitters sollte auf “64” gesetzt sein, dies entspricht der Größe eine “Terrain Sektors”. Eine Hilfe dabei ist die (optische) Anzeige der “Terrain Sektoren” zu aktivieren. Dies geschieht durch Eingabe von “e_terrain_bboxes 1” in der Konsole. Jetzt sieht man in der Perspektien-Ansicht blaue Boxen, die die “Terrain Sektoren” darstellen. Jetzt gehen wir in die [RollupBar], wählen dort unter [Misc] den Eintrag [VoxelObject] aus und setzen das “VO” in unser Level.




Anfangs ist unser “VO” leer und wir sehen nur dessen rote (leere) Hilfsboxen.

 


 Das Terrain verbinden

Jetzt müssen wir sicherstellen, dass der “VO” Renderer die Landschaft rendert und nicht der Höhenmap Renderer… wähle das “VO” aus und setze in diesen Eigenschaften einen Haken an die [LinkToTerrain] Option. Optische sollten keine Unterschiede an unserem “VO” zu erkennen sein.




Technische Information: Die [LinkToTerrain] Option kopiert nicht die Höhenmap-Daten in das “VO”, es ermöglicht lediglich den Einsatz der Höhenmap während der Erstellung eines “VO”s. Auf diesem Weg kannst du immer noch den Höhenmapeditor und [LayerPainter] im “Voxelbereich” nutzen. Das kopieren der Höhenmap-Daten in das “VO” ist auch möglich… aber das schauen wir uns im nächsten Beispiel an.


 Die “Voxels” anpassen

In der [RollupBar] im “Reiter” [Terrain] wähle [Voxel Painter] aus. In den Pinsel-Eigenschaften wähle aus [Type] den Eintrag [Create] aus. Nun werden wir anhand folgender Schritte eine überhängende “Geometrie” an der Oberkante der Cliffs erstellen: Die linke Maustaste erstellt eine neue “Geometrie”. Das verringern des [Radius] reduziert die Größe der “Geometrie” die erstellt wird. Die [Alight Plane] Funktion kann gut zur Anpassung der erstellten “Geometrie” genutzt werden. Als erstes klicke auf [Setup position], bewege und/oder rotiere das Gitter dorthin wo du sie haben willst… klicke dann auf [Align to plane]. Jetzt kannst du die “Voxel” auf das Gitter malen. Um die scharfen Kanten zu entfernen setze [BLUR] ein.

 


 Beispiel 2: Eine Höhle

Gehen wir mal davon aus, wir wollen eine Höhle in einem kleinen Berg erstellen.




Als erstes platzieren wir ein “VO” auf die selbe Art wie zuvor, an die gewünschte Stelle. Weil wir uns unterhalb der Terrain-Oberfläche begeben, müssen wir der Spiele-Engine mitteilen, dass hier ein Loch entstehen soll. Gehe in die [RollupBar], wähle dort innerhalb des [Terrain] “Reiters” die Option [Holes] aus und dort wiederrum [Make Hole]. Malt dann ein Loch an die Stelle wo sich der Eingang zur Höhle befinden soll. Beachte, dass dies nur eine Änderung an der Höhenmap ist und nicht am “VO” selbst.




Hier liegt auch der Unterschied zum vorherigen Beispiel. Die [LinkToTerrain] Option erlaubt nicht Löcher in das Terrain zu machen… es erlaubt lediglich Dinge “aufzutragen”. Anstelle von [LinkToTerrain] werden wir die [Copy heightmap data] Funktion einsetzen. Auf diesem Weg erhalten wir volle Kontrolle über den Bereich mit Hilfe des “Voxel Painter Tools”.



In den Eigenschaften des selektierten “VO”s klickt ihr nun auf den [Copy Terrain into Voxel] Button. Das eben erstellte Loch ist jetzt verschwunden… das “VO” deckt das Loch ab.




Jetzt machen wir uns an eigentliche Höhle. Gehe in die [RollupBar], wähle dort innerhalb des [Terrain] “Reiters” die Option [Voxel Painter] aus. In den [Brush Settings] wählt ihr nun noch bei [Type] den Eintrag [Subtract] aus.


Haltet nun die linke Maustaste gedrückt und klickt auf die Stelle wo das zuvor erstellte Loch sein sollte Auch hier kann die [Align to plane] Option hilfreich sein.

 


 Anpassen des “Voxel Objekt” Materials

In den [Brush Settings] wählt ihr bei [Type] den Eintrag [Material] aus. Nun könnt ihr aus der [Surface Types] Box ein 3D Material auswählen und dieses mit gedrückter linker Maustaste auf das “VO” auftragen.




So wie “Cliff Materialen” als typische Terrain-Texture genutzt werden, sollten Materialien die auf “VO”s gemalt werden ebenso 3 “Untermaterialien” haben (je eine für die xyz-Achsen).

Nun erstellen wir ein Material für unsere Höhle (Innenbereich):

Im [Hauptmenü] unter [Terrain] wählt ihr [Texture] aus. In dem neuem Fenster klickt ihr jetzt auf das [New] Icon direct Links neben dem rotem “X”. Gebt dem “Layer” einen Namen.




Klickt nun auf den [Edit Surface Type] Button.

Hinweis: Direkt nach dem erstellen eines Layers ist diese Option nicht anwählbar. Wähle erst einen anderen Layer an und anschliessend wieder den vorherigen… der [Edit Surface Type] ist jetzt anklickbar.




Klicke jetzt auf die [Add] Schaltfläche im [Surface Types] Fenster um einen neuen Typ zu erstellen und zu benennen (z.B. „new voxel“).




Öffnet den [Material Editor] und wählt die gewünschte Textur (siehe Bild) aus.






Nachdem wir das gewünschte Material durch selektieren ausgewählt haben, schliessen wir den [Material Editor], dass vorherige Fenster erscheint wieder.

Klicke jetzt [Pick selected] und dann auf [OK]. Solltest du nur bzw. direkt auf [OK] klicken, wird das ausgewählte Material nicht übernommen!



Nun kannst du den eben erstellten “Textur-Layer” in der [Surface Types] Liste des “Voxel Tools” benutzen.


 Ergebnis

Wie du sehen kannst, kann man mit “Voxeln” sehr gute Ergebnisse erzielen. Du kannst Höhlen, Krater, Löcher oder auch komplette, eigenständige “Voxel”-Level erstellen.


Dieses Tutorial ist die Deutsche Übersetzung des offiziellen SandBox2 Tutorials von Crytek (mit freundlicher Genehmigung). Dies ist keine offizielle Übersetzung von Crytek sondern von Crysis-HQ (WarpSpeed). Crytek übernimmt keine Haftung für diese Übersetzung.

Website Copyright © by 4thDimension Networking ®

Top Desktop version