Also mal grob zum Mitmeißeln.
Einiges geht hier krass durcheinander, so daß Anfänger keinen Durchblick kriegen. Daher mal vom Urschleim an.
1. Oblivion- Texturen bestehen zumeist aus 4 Einzelteilen, verpackt in 2 DDS- Dateien:
.dds und gleichnamige _n.dds.
Die _n.dds wird anhand des _n automatisch erkannt und der gleichnamigen .dds zugeordnet.
Also beispielsweise MeineTextur.dds, und dazu passend MeineTextur_n.dds.
Beide müssen im gleichen Unterordner von Data\Textures liegen, und der Pfad darf insgesamt keine weiteren Unterstriche enthalten.
2. .dds und _n.dds bestehen jeweils aus RGB und Alpha.
2.1. .dds:
- RGB kodiert das eigentliche Bild, also das, was auf dem 3D- Objekt zu sehen ist.
- Alpha kodiert die Transparenz und wird nur bei Verwendung von DXT3 oder 5 von der Spieleengine ausgewertet:
-- weißes Alpha: undurchsichtig
-- schwarzes Alpha: unsichtbar
-- Graustufen: verschiedne Grade von Durchscheinen
Statt durchgehend weißem Alpha bei DXT3 oder 5 kann man also auch in DXT1 speichern, der Effekt ist der gleiche: völlige Undurchsichtigkeit.
Bei Haut wird das immer so gemacht. Grund: DXT1- gespeicherte .dds- Dateien sind nur halb so groß wie als DXT3 oder 5 gespeicherte.
2.1. _n.dds:
- RGB ist die blaue Normalmap, die Erhöhungen und Vertiefungen vortäuscht, um Polygone im 3D- Modell zu sparen
- Alpha codiert die Reflexion, auch hier nur bei Verwendung von DXT3 oder 5
-- weiß: maximale Reflexion, z.B. für Glas oder Hochglanz- Metalle
-- Schwarz: keine Reflexion, z.B. bei Haut
Alternativ zu durchgehend schwarzem Alpha kann man auch in DXT1NoAlpha speichern (Haut). Grund: halbe Dateigröße.
3. Faktoren, die auf den Glanz wirken
Der im Spiel sichtbare Glanz wird aber nicht nur durch
3.1. das Alpha der _n.dds
beeinflußt, sondern auch durch
3.2. die Stärke der Normalmap
Kräftige Normalmaps mit starken Hoch- Tief- Kontrasten (starkes Scaling im nVidia- Normalmap- Filter) erzeugen von sich aus schon einen gewissen Glanz an den vorgetäuschten Kanten.
3.3. das verwendete Material
Beispiele sind Glas und Edelsteine, wo EnvMap2 als Material verwendet wird. Dies wirkt viel stärker reflektierend als z.B. Metal Rusty 01.
Hier orientiert man sich am besten an Originaldateien, da das Material auch den Trefferklang codiert.
3.4. APPLY- Modus
In NIFskope kann man durch Wechsel von APPLY_MODULATE zu APPLY_HILIGHT (Markieren der NiTexturingProperty, sichtbar im Fenster BLOCK DETAILS) einen extremen Hochglanz (Chromglanz) erzeugen, der durch das Material EnvMap2 und sehr helles Alpha in der _n.dds noch weiter maximiert wird.
Achtung: die Normalmap sollte dafür flach und rillenarm sein, sonst wird der Effekt verhunzt.
3.5. Glosiness
Die Glossiness, einstellbar nach Rechtsklick auf die NiMaterialProperty in NIFskope, ist umgekehrt proportional zum Glanz. Niedrige Glossiness > Hochglanz (laut Lazarus).
4. Wie erzeuge ich nun die einzelnen dieser 4 Texturen?
In GIMP dupliziert man im Ebenen- Fenster die Texturebene, die ja meist vorhanden ist (Hintergrund mit dem bunten Bild der eigentlichen Textur), 3x.
Die unterste Ebene ist die Textur der .dds, also RGB.
Die 2. Ebene von unten wird ALPHA genannt und mit Filtern, Kontrast usw. so bearbeitet, daß sie als Transparenz taugt, also schwarz- weiß oder graustufig.
Die 3. von unten nennt man NORMAL und bearbeitet sie mit dem nVidia- Normalmap- Filter.
Die oberste Ebene heißt NORMALALPHA und läßt sich sehr leicht und für die meisten Fälle ausreichend mit Filter > Farben > Abbilden > Einfärben in ein helleres oder dunkleres Graustufenbild umfärben, wenn man den Haken an "Erhalte ursprüngliche Intensität" rausmacht und an den Reglern spielt.
5. Wie erzeuge ich daraus die .dds- Dateien?
Nun öffnet man eine passende, vorhandne .dds mit DXTbmp und exportiert sowohl das große RGB- Bild als auch das kleine Alpha- Bild zum Editor, also Paint.
In GIMP macht man im Ebenen- Fenster alle außer der gewünschten Ebene durch Abhakeln des Auges unsichtbar, klickt auf Bearbeiten > Kopiere Sichtbares und fügt dieses Bild dann via CTRL+ V in das jeweilige Paint- Fenster ein.
Dieses Fenster dann SPEICHERN (nicht: Speichern unter!) und in DXTbmp IMAGE > RELOAD AFTER EDIT anklicken (für Alpha: ALPHA > REFRESH ALPHA).
Schon hat man seine Texturen in DXTbmp und kann als .dds abspeichern.
Für die _n.dds macht man das gleiche mit den Ebenen NORMAL und NORMALALPHA aus GIMP.
Auf diese Art lassen sich vor allem schnelle Änderungen durchführen, wenn man alle Fenster offenläßt und das Ergebnis ingame nicht überzeugt.
Änderung in GIMP durchführen > Kopiere Sichtbares nach Paint> in DXTbmp reloaden > .dds schrauben.
Das geht jedenfalls viel fixer, als jedesmal die GIMP- .xcf als .dds abzuspeichern (vor allem, wenn man vergißt, die .xcf zu sichern, und plötzlich nur noch mit einer .dds dasteht und von vorn anfangen kann, oder jedesmal die .xcf wieder öffnen muß).