GELÄNDETEXTUR - COLORMAP

Moderatoren: _509_, Mindwar, Philli

Benutzeravatar
_509_
Site Admin
Beiträge: 720
Registriert: Donnerstag 25. März 2004, 09:50

GELÄNDETEXTUR - COLORMAP

Beitragvon _509_ » Freitag 11. Januar 2008, 14:24

COLORMAP

ColorMap: Damit wurde von den Programmierern von CB eine Textur bezeichnet welche zur Texturierung des Geländes dient. Diese Textur wird senkrecht zur Grundebene auf das Gelände projeziert.
Damit CB eine ColorMap als solche erkennt, muss dem Namen des JPGs "2." (z.B. 2.HS_colormap.jpg) vorangestellt werden. Der Name selbst beinhaltet zumeist "colormap", ist aber ansich völlig beliebig.

Der Begriff wurde beim CB-Modden übernommen.
Tatsächlich bedeutet "colormap" (engl.) auf deutsch "Farbtabelle".
Bei der ColorMap handelt es sich um ein Rasterbild im JPG-Format
in zwei möglichen Grössen:

1.) 1024x1024 Pixel - genutzt: 1009x1009 - im Spiel nicht sichtbarer Rand: "rechts" und "unten"

2.) 2048x2048 Pixel - genutzt: 2035x2033 - (s. Easter) ; /
- (Die Colormap lässt sich aber nur quadratisch berechnen. Also 2035x2035 px, weil sonst am "rechten" Rand 2 Pixel fehlen, die 2 Pixel Überstand in der Höhe ausserhalb des verwendeten Bereiches hingegen, sind im Spiel nicht zu sehen, also egal ; ) )

Bild
Selbst nachprüfen, ob nicht sogar das 2035x2035er TG-Bild eigentlich auf 2035x2033er Grösse gebracht werden müsste (Könnte beim Anschluss an die Infinitymap eine Rolle spielen)

In den meisten der alten Venues wurden Texturen mit der geringeren Auflösung verwendet.
In den Goldpack-Venues nur Texturen mit der 2048er Auflösung.

Jedes Bild auf die entsprechenden Abmessung gebracht kann als ColorMap verwendet werden.
Soll jedoch eine halbwegs realistische Landschaft entstehen, verwendet man am besten
ein Programm zur Landschaftsgenerierung in Verbindung mit der HeightMap eines Venues.
Für die alten Venues wurde Maya verwendet. Viele der 3D-Standardprogramme erledigen diese Aufgabe aber nicht sonderlich ansprechend.
Ein wesentlich besseres Resultat kann z.B. mit dem "Gratisprogramm" "Terragen" erzielt werden.



Terragen

Terragen dient dem Erstellen von Bildern und dem Generieren von 3D-Landschaftsformen mit vielfältigen Möglichkeiten zur Texturierung der zugehörigen Gelände- und Wasserflächen.
Die mit Terragen erzeugten Polygonnetze und Bilder eines Geländes können in anderen 3D-Programmen und Spielen weiterverwendet werden. Himmelstexturen können ebenfalls als Bilder exportiert werden (sogar für Skyboxes).
Mitunter bietet dieses Programm die Möglichkeit, eine bestimmte Art von Heightmap zu verwenden.
Dabei handelt es sich um sogenannte DEM-Dateien. Das sind aus Satelitenbildern gewonnene 3D-Geländekarten, welche in Form von Heightmaps abgespeichert wurden.
Diese Heightmaps geben reale Gelände wieder. In manchen Fällen existieren dazu die passenden Texturen (ebenfalls Satelitenaufnahmen oder Kartographien). Realer geht's nur im Holodeck ;)

Das einfach zu bedienende Programm selbst soll hier nicht beschrieben werden. Es gibt im Internet genügend gutes Material dazu!
Eine gute Anlaufstelle unter vielen ist http://www.terradreams.de/

Hier wird der Weg erläutert, wie mit Hilfe der HeightMap aus CB in Terragen eine ColorMap erstellt werden kann, und die notwendigen Einstellungen dazu.

1.) HeightMap in Terragen einlesen
Terragen starten
In der Toolbar den Knopf "Landscape" drücken

Bild

Anschliessend öffnet sich das "Landscape" Dialogfenster:

Bild

in diesem muss zunächst der Knopf "Size" gedrückt werden.

Bild

Die Einstellungen wie im Screenshot übernehmen (zuerst "129" anklicken).
Mit diesen Einstellungen entsprechen damit die Grössenverhältnisse im TG denen aus CB,
aber die Höhen stimmen (noch) nicht.
Die Einstellung dazu wird anschliessend erläutert.

Zunächst muss die HeightMap eingelesen werden.
Terragen (ohne PlugIns) verlangt als Bildformat RAW.
Die vorgegebenen Bildgrössen (129x129 ... 4097x4097) sind oben zu sehen.

Bild
Für Terragen muss die CB-Heightmap (mit ihren 128x128px) am rechten und oberen Rand um je ein Pixel erweitert werden!
Der ergänzte Rand (im Bild hellblau gekennzeichnet) muss vollständig schwarz sein!

Bild
Die Einstellungen des Screenshots übernehmen.

Erst wenn in "Terrain Modification" die Höhe richtig eingetragen wurde, erscheint die Vorschau der Heightmap wieder in gewohnter (rechter) Darstellung.

Bild

Knopf "Modify" drücken im Fenster "Landscape"

Bild

In dem Screenshot ist die höchste in CB mögliche in Meter umgerechnete Geländeerhebung angegeben.
Und so erfährt man nebenbei die (sub-)maximalen Geländeabmessungen eines CB-Venues:
Grundfläche: 4096x4096 Meter
Höhe: 510 Meter

Berechnung der Geländehöhe: Höhemax = Grauwertmax x 2 Meter
(Grauwert x 128 x 1,5)/96
1 Meter = 64 CB-Einheiten


Um realistische Geländetexturen rendern zu lassen, sollte die Differenz
zwischen "Set hightrange" "from" (Untergrenze) und "to" (Obergrenze) im CB maximal 510 betragen!
(Beispiel: 10 m bis 520 m, 500 m bis 1010 m)
Z.B. das Matterhorn lässt sich nicht realistisch nachbauen, da der Höhenunterschied vom Tal zur Bergspitze ca. 2870 m beträgt.
Anm.: Für neuere Spiele und 3D-Programme sind weit grössere und höhere Geländeabmessungen zulässig. Auch die Auflösung der Heightmaps reicht oftmals bis 1024x1024 px
Eine 1024er Heightmap z.B. ermöglicht ein 8x detaillierteres Gelände als im CB möglich.
Oftmals werden die Gelände in aktuellen Spielen noch durch (Gelände-)Objekte ergänzt
und für die Nahansicht mit zusätzlichen Texturen (Bumpmaps) versehen.
In CB kann durch die Darstellungsfehleranfälligkeit der Engine noch nicht einmal die 128er Heightmap voll ausgereizt werden.


Im CB liegt die Untergrenze bei dem Wert "0" (Höhe der Infinitymap (Endlosgelände)).
Es ist hilfreich auch in TG die Geländeuntergrenze auf "0" zu setzen,
um von dort aus, höhenabhängige Geländetexturen (Surfaces) aufzubauen (z.B. Strand, Wiese, Fels, Schnee, etc.).

TIP: Wer sich in Bildbearbeitung nicht gut auskennt, kann mit einem superpraktischen leicht zu (de-)installierenden kleinen Tool pkColorPicker herausfinden, welcher der hellste in der Heightmap vorhandene Wert ist.

Anm.: Farbwähler "pkColorPicker" ist ebenfalls zur Umrechnung von RGB in VRML-Farbwerte empfehlenswert


Sonnenstand

Bild

Bild

Diese Einstellungen entsprechen der in CB vorhandenen, unveränderbaren Lichtrichtung.
Der Winkel für "Sun heading" muss nicht genau so eingestellt sein, sollte aber zwischen -30 bis -70 liegen.
Auch der Winkel zum Gelände "Sun Altitude" kann variiert werden.

TIP: Gibt man die Lichtrichtung entsprechend der Lichtquelle in CB vor, entstehen langweilige Schatten (durch den 45° Winkel). Deswegen sollte der Sonnenstand sogar von den im Dialog angeführten Winkeln abweichen.
Sollen zusätzlich Schatten von Gebäuden/Objekten in die Geländetextur eingerechnet werden, so geschiet dies in einem anderen 3D-Programm, weil Terragen ausschliesslich Gelände generieren kann, aber weder Pflanzen noch andere Objekte. Damit die Winkel der Lichtquelle auch in anderen Programmen leichter einstellbar sind, Winkel auf ganzzahlige Werte runden.


Licht und Schatten

Schatten
Der Schatten auf den sonnenabgewandten Flächen des Geländes wird korrekt dargestellt.
Wenn durch die HightMap scharfe Kanten entstehen:
Nur bei den Schatten entstehen Zacken, welche Geländeerhebungen auf "dahinterliegendes" Gelände werfen.

Bild
Falsch berechneter Schatten (wahrscheinlich aufgrund der wenigen Felder der Heightmap).

Bild
Bild nach der Überarbeitung in einem Bildbearbeitungsprogramm.

ZACKEN - vermeiden
Die Zacken in den Geländeschatten können durch ein grösseres "Image Size" nicht vermieden werden !
Auch ein "glattes" Gelände (Bumpiness = 0) ändert nichts an der Zackenbildung !
Backface-face Culling (-> Render Settings... -> Options) zu deaktivieren und/oder AntiAliasing zu aktivieren ändert ebenfalls nichts !

Was bleibt? Die Geländetextur in mehreren Schritten zu erstellen ;\

LÖSUNG:
1. Berechnung mit eingeschaltetem Geländeschatten mit Surface Map (-> Lightning Conditions -> Terrain Casts Shadows )
2. Berechnung mit ausgeschaltetem Geländeschatten mit Surface Map
3. Überlagern von 1. u. 2. -> Retusche im Photoshop (mit Hilfe von Masken)


Kamera Einstellungen

Da die Geländetextur senkrecht zur Grundfläche eines Geländes projeziert wird, muss diese Textur auch aus entsprechender Perspektive gerendert werden.
Auf die Einstellung auf parallele Projektion kommt es an! (Häckchen bei "Orthographic" setzen!)
"Autosetup" bewirkt, dass die Kamera mittig über dem Gelände platziert wird, was in diesem Fall auch sein soll.

Bild

Die dazu nötigen Einstellungen:
Das Format des gerenderten Bildes sollte in jedem Fall quadratisch sein.
Für CB: 1009x1009 oder (besser) 2035x2035 Pixel

TIP: Die Qualität der Geländetextur lässt sich verbessern, indem sie zunächst mit der doppelten Grösse (4070x4070) gerendert wird und anschliessend im Bildbearbeitungsprogramm (bikubisch) auf die Hälfte verkleinert wird.
TG rechnet bei der höheren Auflösung mehr Details mit ein. Sie wirkt dadurch nicht mehr so verpixelt.



Restliche Einstellungen zum Rendern

Bild

Genau die in diesem Screenshot dargestellten Werte und Stellungen der Regler müssen übereinstimmen, damit in der richtigen Perspektive mit bestmöglichster Qualität die Colormap gerendert werden kann.

Es gilt, noch etwas zu beachten: Die Atmosphäre (Nebel, Dunst) und die Wolken.
Selbstverständlich kann man herumexperimentieren, welche Effekte mit Wolkenschatten erzielt werden können, aber zumindest die Einflüsse von Dunst und Nebel sollten vollständig ausgeschaltet werden, da diese bereits im Spiel von der Game Engine simuliert werden.

Der Schatten kann dazu genutzt werden, Eigenheiten, Formen eines Geländes zu betonen
und im Zusammenspiel mit Licht den Eindruck von Raumtiefe zu verstärken.

Bild

TIP: Um ohne von der Farbgebung abgelenkt die (Aus-)Wirkung des Geländeschattens besser einschätzen zu können, ist es hilfreich, eine weisse glatte Oberfläche(nstruktur) zu verwenden:

Bild

Die mit dieser Surface erhaltene Colormap sollte im Spiel oder in einem 3D-Programm auf das Gelände angewendet, eine bestmögliche Einschätzung liefern.
Aber auch Bilder mit perspektivischer Kamera im Terragen.


Bild
Die Schattenfarbe (Shadow Colour) sollte auf ein neutrales Grau eingestellt werden.
Ansonsten werden sämtliche Farben im Schattenbreich mehr oder auf erhelltem Gelände weniger mit der Schattenfarbe eingefärbt.


TIP: Zur Bearbeitung der ColorMap empfiehlt es sich, sowohl für die Korrektur der Schatten, als auch um das Gelände abwechslungsreicher, interessanter gestalten zu können, mit der gleichen Kameraeinstellung mehrere Bilder mit unterschiedlichen Surfaces zu erstellen.

Beispiel:
1.Gelände mit und ohne Geländeschatten
1. Mit und ohne Gras oder felsig, versandet etc.
2. Mit und ohne Wasser, oder Wasser für 2 unterschiedliche Höhen


Die Anpassung der "Infiniti Map" ist ein Kapitel für sich.

Anm.: Im CB gibt es keine Schatten!
Der Eindruck, das Gelände würde Schatten werfen, entsteht ausschliesslich durch die ColorMap (ein Pixelbild mit 1024x1024 oder 2048x2048 Pixel), welches auf das Gelände projeziert wird. Das gleiche gilt für Objekte (z.B. Gebäude) in den Venues.
Im Unterschied zu dem Gelände können Objekte in Abhängigkeit von ihrer Ausrichtung zu einer Lichtquelle aufgehellt bzw. abgedunkelt dargestellt werden.
Es gibt nur eine einzige Lichtquelle in CB, deren Parameter in der Clusterball.exe fest eingebunden sind. Heisst: Sie können nicht verändert werden.
In der Draufsicht bezogen auf die vorangehende Abbildung, zeigt die Lichtquelle von der linken oberen zur rechten unteren Ecke.


Anm.:Einbinden von Texturen in die mrg
Die mrg wächst um die kBs der Texturen an - egal ob BMP oder JPG
Wenn JPGs aus BMPs erstellt werden, BMPs mit 24 Bit Farbtiefe verwenden.
Bei Verwendung von BMPs mit 16 Bit werden die JPGs grösser!!!



LINKS

http://www.terradreams.de/ - Empfehlenswert, eine sehr gute Anlaufstelle
pkColorPicker - Superpraktisches leicht zu (de-)installierendes kleines Graphik Tool. Kann Helligkeitswerte aus Heightmaps auslesen, Farben übernehmen aus allem, was am Bildschirm zu sehen ist, kann Farbwerte konvertieren helfen (rgb, cmyk, dezimal, hexadezimal, vrml, etc.)

Elver
Beiträge: 113
Registriert: Donnerstag 25. März 2004, 14:24

Re: GELÄNDETEXTUR - COLORMAP

Beitragvon Elver » Samstag 26. April 2008, 12:22

topp!!! xdgn)

Benutzeravatar
Wambo
Beiträge: 199
Registriert: Dienstag 8. August 2006, 13:05
Wohnort: 51°40'11.36"N 9°22'16.40"E <--- Das is ne Stadt
Kontaktdaten:

Re: GELÄNDETEXTUR - COLORMAP

Beitragvon Wambo » Samstag 26. April 2008, 18:12

lol ich dachte die themen wärn geschlossen :D

daumen hoch
Bild
Wissen ist MACHT, aber nichts wissen MACHT auch nichts!
Knut ist gut!


Zurück zu „Modding INFOs“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste