Einfacher Einstieg | Retro-Artikel

Rückblick: In der DP 07 : 2013 schauten wir uns die Cryengine SDK an, staunten darüber, was die Modder-Community drumherum leistet. Ein Artikel für Cryengine-Neulinge, der wertvolle Tipps & Tricks versammelt.

Der Artikel von Rainer Duda erschien ursprünglich in der DP 07 : 2013.

Das aktuelle Cryengine SDK bietet der Modder-Community eine Reihe an spannenden Features, mit denen man relativ zügig und ohne großen Aufwand den realistischen Eindruck steigern kann. Damit der Einstieg für Neuankömmlinge bei der Cryengine nicht zu einem Suchmarathon ausartet, hier einige Tipps & Tricks und interessante Funktionen in Kürze.

Neues Level

Nach dem Start des Editors – bei Windows 8 geht derzeit nur die 32-Bit-Version –, benötigt das SDK Informationen wie den Namen und die Auflösung der Heightmap sowie die Information, wie viele Meter pro Unit gelten sollen. In Detail heißt das: Wenn die Heightmap des Terrains eine Auflösung von 2.048 x 2.048 Pixel besitzt und jeder Pixel 2 Meter Länge besitzt, dann erhält man ein Terrain mit 4.096 x 4.096 Metern. Ist eine geringe Größe für die Heightmap gewählt und eine höhere Zahl an Metern, erhält man ein grob aufgelöstes Terrain. Wie man letztendlich die Parameter einstellt, bleibt einem selbst überlassen und ist zum Teil auch vom eingesetzten PC abhängig. Feineres Terrain benötigt in jedem Fall mehr Ressourcen.

An die Arbeit!

Es gibt verschiedene Wege, ein Terrain im Cryengine SDK zu erstellen. Zunächst öffnet man den Terrain Editor. Dieser ist zu finden im Menüpunkt „Terrain“ und dort unter „Edit Terrain“. Der wohl einfachste Weg, ein Terrain zu generieren, ist die automatische Funktion „Generate Terrain“ im Menü „Tools“. Nutzt man diese Funktion, so wird prozedural ein Terrain erzeugt, basierend auf den Einstellungen, die man vorgenommen hat. Der zweite Weg ist ein eher manuelles Erstellen von Details über einen Brush. Rechts im EditorFenster kann man die Pinselfunktion nach Belieben einstellen und dann entweder auf der Heightmap selbst Hand anlegen oder aber in der perspektivischen Ansicht zeichnen. Der wohl eleganteste und am häufigsten genutzte Weg ist das Einladen einer Heightmap, die zum Beispiel in Photoshop erstellt wurde. So kann man in Ruhe Details zeichnen und per Klick auf „File“ und „Import Heightmap“ die eigene Datei laden, um das Terrain zu erzeugen. Egal welchen Weg man gewählt hat, modifizieren lassen sich die Terraineigenschaften im Nachhinein über den Terrain Editor.

Oberflächendetails

Da die Insel bis jetzt mit einem – nicht gerade ansehnlichen – Standardmaterial versehen ist, ist als Nächstes ein Satz an Texturen für die Oberfläche nötig. Die notwendigen Einstellungen lassen sich im Editor für Terrain Texture Layers vornehmen. Dorthin gelangt man über einen Klick auf das Terrain-Menü und eine Aktivierung von Terrain Texture Layers. Das System, das sich einem nun bietet, kennen viele sicherlich von Zeichenprogrammen wie Photoshop, Painter oder Gimp: Es lassen sich spezielle Ebenen anlegen für verschiedenste Oberflächen, die gezeichnet werden wollen.

Als Basis kann man zum Beispiel Gras nehmen, darüber vielleicht eine Ebene für Steine und Ebenen für andere Details. Bevor es an das Zeichnen an sich geht, sollte man das Prinzip hinter diesen Terrain Texture Layern verstehen. Grundsätzlich setzt sich so ein Layer aus zwei Komponenten zusammen: einer sogenannten Layer-Textur, bestehend aus reinen Farbinformationen, und einem Material. Das Material sorgt für die hochaufgelösten Details. Im Grunde ist es eine Art Fallback-System. Ist man sehr weit vom Terrain entfernt, wird nicht das hochaufgelöste Material geladen, sondern nur die Farbinformationen der Layer-Textur angezeigt. Kommt man dem Terrain näher, so wird direkt wieder zum Material umgeschaltet. Selbstverständlich lässt sich die Distanz für das Umschalten separat einstellen, mit einem Klick auf das Terrain-Feld in der Rollup Bar und dem Öffnen des Environment Tabs. Unter dem Punkt „Terrain“ lässt sich die DetailLayersViewDistRatio abändern.

Malgrund

Als Layer-Textur kann man die bereits vorhandene grey.dds-Datei eingefügt lassen. Sollte diese nicht vorhanden sein, einfach über „Change Layer Texture“ die grey.dds-Datei im Textures-Ordner suchen und auswählen. Daraufhin muss noch ein anderes Material bereitgestellt werden. Klickt man auf das Material, so öffnet sich ein neues Fenster, in dem man aus bereits vorhandenen Materialien wählen kann. Unter „Materials“ findet sich das aufklappbare Feld „Terrain“. Hier sollte auch grass_1 sichtbar sein, das auch gewählt wird. Über „Assign Material“ im Editor für die Terrain Texture Layers kann man im Feld „Layer Tasks“ nun dieses Material dem ausgewählten Layer zuweisen. Bevor jedoch Änderungen sichtbar werden, muss noch die Funktion namens „Generate Surface Texture“ ausgeführt werden. Diese findet man in der Hauptmenüzeile unter „File“. Testet man das eigene Level, so kann man die Einstellungen belassen, wie sie sind. Ist das Level final, setzt man einen Haken bei „High Quality“.

Damit nun gezeichnet werden kann, muss man wieder zurück zur Rollup Bar gehen und dort unter dem Feld „Terrain“ das LayerPainter-Feld öffnen. In den Layer-PainterEigenschaften lassen sich nun die erstellten Ebenen auswählen, welche Farbe man auf die ausgewählte Ebene zeichnen möchte und selbstverständlich wie die Pinseleigenschaften sein sollen. So kann man der Reihe nach seine eigenen Layer farblich anpassen. Wichtig ist nur, dass man nach der Farbwahl noch den Button „Save Layer“ betätigt.

Vegetation auf die Schnelle

Nachdem nun eine grobe Insel vorhanden ist, kann in der Rollup Bar das zweite Feld namens „Terrain“ geöffnet werden. Dort lässt sich über einen Klick auf „Vegetation“ einstellen, welches Objekt man für die Vegetation benutzten möchte, also zum Zeichnen und vor allem, wie die Eigenschaften des Objekts aussehen sollen. Über einen Klick auf „Add Vegetation Object“ gelangt man in ein Explorer-Fenster. Dort kann man sich im Ordner GameSDK/objects/natural/ground/ forestgrass umsehen und zum Beispiel das forestgrass_long.a.cgf wählen. Nach der Auswahl des Objekts erhält man eine Reihe an Parametern direkt unterhalb des ObjektFelds. Nun lassen sich nach Belieben Parameter verändern. Wichtig ist AlignToTerrain – damit nicht alles gleich aussieht, lässt sich eine RandomRotation aktivieren –, und AutoMerged sollte aktiviert sein. Hat man die passenden Einstellungen gefunden, kann der Pinselmodus aktiviert werden, indem man über dem Objekt-Feld auf „Paint Objects“ klickt. Nun ist man in der Lage, in der perspektivischen Ansicht Gras zu zeichnen. Über den Brush-Radius lässt sich die Größe des Pinsels verändern. Gleichermaßen verhält es sich auch beim Zeichnen von Bäumen und anderen Objekttypen.

Lens Flare

Hat man nun ein neues Level erstellt, dann kann man im Handumdrehen sogenannte Lens Flares – Lichtlinsenreflexionen –, wie man sie aus der Realität kennt, einfügen und so das visuelle Erlebnis aufpeppen. Als Erstes sollte man die Position der Sonne anpassen. Dies geschieht über das Lighting Tool, zu dem man über einen Klick auf „Terrain“ in der Menüleiste und „Lighting“ gelangt. In diesem Tool kann nun über die Parameter im Bereich „Sun Settings“ die Position der Sonne so angepasst werden, dass sie vor einem sichtbar ist. Als Nächstes muss man ein Licht erzeugen.

Lichter findet man in der Rollup Bar rechts am Bildschirmrand unter den Entity. Hier genügt es, ein herkömmliches Licht (Light) im Level zu platzieren. Dieses Licht muss nun der Sonne sozusagen angeheftet werden. In den Entity Properties findet man ziemlich weit unten im aufklappbaren Feld „Style“ die Checkbox mit der Funktion AttachToSun. Im Lens Flare Editor finden sich Einstellungen zur gewünschte Lichtlinsenreflexion. Zu finden ist der Lens Flare Editor unter „View“ und dann „Open View Pane“.

Zunächst erscheint hier ein leer wirkendes Fenster. Über das Einladen einer Library, also einer bereits bestehenden Sammlung von Lichtlinsenreflexionen, lässt sich dann im Menü „Generic“ der generic-sun-flare öffnen. Per Klick auf den Button „Assign item to selected object“ wird der generic-light-flare auf das Licht angewendet. Nun kann man das Editor-Fenster schließen und die Lichtlinsenreflexion testen. Wer nun einen Sprung ins Spiel wagen möchte: Über die Tastenkombination STRG + G geht’s direkt los!

Waldspaziergang

Wer sich erst einmal umsehen möchte, ohne Hand anzulegen, kann auch direkt das ForestLevel von Crytek öffnen und sich die volle Pracht der Effekte anschauen. Das hilft einem auch weiter, wenn man bestimmte Objekte im Einsatz sehen möchte, um das grundlegende Prinzip zu verstehen. Denn nicht immer ist die Online-Dokumentation die erste Wahl, wenn es um das Verständnis vom Zusammenspiel bestimmter Komponenten geht.

Kommentar schreiben

Please enter your comment!
Please enter your name here

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.