Achtung: Bei neueren Versionen kann so einiges anders sein.
Nachdem mich immer wieder jemand fragt, wie man mit 3D Studio texturiert, werde ich das hier mal erklären.
In mehreren Aspekten kann man das texturieren bereits im 3D Studio dem im Spacer vorziehen und zwar aus mehreren Gründen:
Sesaya: Das stimmt doch garnicht, wenn man im Spacer eine Mesh texturiert, sie in Max importiert, bearbeitet und wieder Exportiert bleiben die Texturen erhalten.
Man kann natürlich nicht mit dem Texturieren anfangen, wenn man das Material dazu nicht definiert hat. Jetzt muss man zuerst verstehen wie man da vorgeht.
Man definiert nicht einfach ein paar Materialien, sondern man fängt mit einem sogenannten „Multi/Sub-Object“ an. Das ist einfach ein Material, dass aus mehreren Materialien besteht.
Dazu öffnen wir zuerst den Materialeditor:
Hier sehen wir im Normalfall nur leere Slots mit „Standard“ Materialien.
Also wählen wir einfach den ersten leeren Slot aus und ändern den Typ des Materials indem wir einfach auf den Button für den Materialtyp klicken.
Jetzt öffnet sich ein Fenster, wo man den neuen Materialtyp auswählen kann.
Hier wählen wir „Multi/Sub-Object“ und klicken auf OK.
Daraufhin öffnet sich ein kleines Dialogfeld.
Da wir einen leeren Slot gewählt haben, bevor wir den Typ geändert haben macht das keinen Unterschied was wir wählen.
„Discard“ würde das Multi Material mit nur leeren Slots erstellen, während die andere Option das zuvor in dem Slot befindliche Material direkt in das Multimaterial an Position #1 übernehmen würde..
Kushel_Baer: Es empfiehlt sich jedoch immer Discard zu nehmen, ansonsten hat man wenn man nicht aufpasst n Multi/Sub-Objekt innerhalb eines Multi-Sub-Objektes was ziemlich verwirrend ist und zu Problemen führen kann
Jetzt sollten wir folgendes sehen:
An den Vorschaubildern hat sich nichts verändert, aber in dem Textfeld unten kann man jetzt eine Liste sehen.
Standardmäßig werden immer 10 Untermaterialien erstellt aber man kann jederzeit Bilder hinzufügen oder auch entfernen, indem man einfach die Schaltflächen „Add“, „Delete“ oder auch „Set Number“ verwendet.
Jetzt können wir anfangen, die ersten Untermaterialien definieren.
Hiezu klicken wir einfach auf die Schaltfläche mit dem Materialnamen in der Zeile mit dem Material #1
Jetzt werden viele sagen: „Jetzt sieht es ja wieder aus wie am Anfang!“, und das stimmt optisch auch beinahe. Das einzige, was jetzt anders aussieht ist ein kleines „(1)“ das man jetzt links unter der Symbolleiste steht. Das bedeutet, dass das gerade angezeigte Material den Index 1 besitzt.
Außerdem sind jetzt die drei Symbole, die ich im ersten Screenshot bezeichnet habe, nicht mehr abgedunkelt.
Mit „Show Map in Viewport“ kann man die Option einschalten, dass Texturen sofort in der Anzeige angezeigt werden. Man muss daher nicht ständig das Bild rendern, um das Ergebnis zu sehen. Deshalb kann man schneller durchgeführte Änderungen sehen, was einfach das Bearbeiten erleichtert.
Dann sind da noch die zwei Schaltflächen „Go to Parent“ und „Go Forward to Sibling“ .
Mit „Go to Parent“ kann man in der Hierarchie nach oben gehen, das bedeutet in dem Beispiel würden wir wieder zurück zum Multi-Material kommen.
Mit „Go Forward“ kann man in der Hierachie weiter gehen, in dem Beispiel würden wir zum Submaterial #2 gehen, da wir uns ja noch immer im Material #1 befinden.
Jetzt ist das alles ganz nett, aber das Material ist nach wie vor einfach nur grau, ohne irgendein Bild. Dem werden wir jetzt abhelfen.
Dazu öffnen wir den Rollout „Maps“ und klicken auf die Schaltfläche, auf der jetzt noch „None“ steht in der Zeile „Diffuse Color“ und wählen in dem neuen Fenster die oberste Option „Bitmap“. Jetzt wählen wir die Textur, die wir für unser Modell brauchen.
Ich empfehle dringend, nur Bilder zu verwenden, die sich schon im Unterverzeichnis „_/work/data/textures/“ von Gothic II befinden. Zum einen kann es dann nicht passieren, dass man Texturen verwendet, die dann später nicht angezeigt werden, weil das Spiel sie nicht finden kann und zum anderen kann man sicher gehen, dass man die selbe Textur im 3D Studio als auch im Spiel sieht. Während der Entwicklung kann es durchaus sein, dass man Texturen nachträglich ändert und dann könnte es da zu Unterschieden kommen.
Wenn man die Textur im Dateifenster auswählt empfehle ich den Dateinamen auch gleich mit Strg+C in die Zwischenablage zu kopieren, dazu aber später.
Nachdem wir die Textur gewählt haben klicken wir einmal den Button „Go To Parent“ wie vorher beschrieben, um wieder das Material zu sehen.
Als nächstes muss man dem Material einen Namen geben. Es ist mir nicht ganz klar, wofür man das machen muss, es steht aber fest, dass die Textur einfach im Spiel nicht dargestellt wird, wenn man es nicht tut.
Dafür klicken wir in das Pulldownmenü, indem jetzt noch soetwas wie z.B. „Material #15581“ steht und drücken einfach Strg+V um den Namen der Textur hier einzutragen. Man muss nur darauf achten, dass man gegebenenfalss das .tga am Ende entfernt. Auserdem hab ich es mir angewöhnt, den Namen nur in Grossbuchstaben zu schreiben, weil PB das auch immer getan hat.
Jetzt könnte man sich noch mit diversen Einstellungen beim Material spielen, aber ich sage gleich dass das sinnlos wäre, weil Gothic das sowieso nicht interpretieren kann. Man würde alle anderen Änderungen zwar in 3D Studio sehen, im Spacer wäre dann aber wieder alles wie davor.
Auf diese Weise können wir jetzt Materialien definieren, solange wir wollen und soviele wie wir benötigen.
Mir ist natürlich klar, dass das jetzt verdammt viel arbeit ist, deshalb gibt es da eine praktische Abkürzung.
Man kann einfach ein Mesh von PB öffnen und von diesem Mesh direkt das Material importieren.
Dazu wählt man einfach einen leeren Materialslot und klickt auf das Symbol „Pick Material from Object“
Danach wird der Mauszweiger zu einer Pipette und mit der klickt man einfach auf das importierte Mesh.
Dadurch wird automatisch ein Multi-Material mit allen Materialien des Objektes erstellt.
Alles was jetzt noch fehlt, ist das Multi-Material unserem Modell zuzuweisen. Achtung: Man muss auf dem obersten Level des Materials sein, d.h. Man muss in dem Textfeld im Materialeditor wieder die Liste mit den Submaterialien sehen können, sonst werden dem Objekt nur das aktuell gewählte Untermaterial zugewiesen!
Neuerdings kann man sich genau diese nervige Materialerstellung des vorherigen Punktes sparen, denn dafür wurde ein Tool programmiert, welches einem diese Arbeit abnimmt. Dennoch sollte man sich den vorhergehenden Punkt zumindest durchlesen, damit man weiss, was da vorgeht.
Der MaterialCreator schreibt eine XML-Datei aufgrund von Texturdateien, die dann in 3dsmax importiert werden kann.
(da sollte mal eine ausführlichere Beschreibung geschrieben werden, dafür fehlt mir jetzt aber die Zeit)
Zuerst müssen wir die Seiten auswählen, denen wir das Material zuweisen wollen.
Dazu wählen wir im Hauptmenü zuerst das Register Modify
Wenn man das getan hat und auch gleich das gewünschte Objekt ausgewählt hat, sollte das obere Ende des Hauptmenüs so aussehen:
Als nächstes wählen wir in dem Rollout „Selection“ den Sub-Level „Face“ , damit wir die einzelnen Seiten des Objektes auswählen können. Alternativ kann man auch einfach die Taste „3“ auf der Tastatur drücken.
Anschließend markieren wir alle Seiten, die wir jetzt bearbeiten wollen. Für den Anfang sollte man nur Seiten wählen, die am Ende das selbe Material haben und in etwa in einer Ebene liegen. Wenn man schon erfahrener darin ist, kann man durchaus mehr markieren, um die Arbeit zu beschleunigen.
Wenn die gewünschten Seiten jetzt markiert sind, scrollen wir im Hauptmenü ganz nach unten bis wir beim Rollout „Surface Properties“ angelangt ist.
Zum Texturieren ist nur der Kasten „Material“ interessant.
Jetzt müssen wir nur im Materialeditor nachsehen, welche Nummer unser gewünschtes Material hat und tragen diese im Feld ID ein.
Nun haben die ausgewählten Seiten genau diese Textur. Das kann man jetzt mit allen Seiten machen, aber ich möchte zuerst einen kleinen Zwischenschritt einfügen.
Wir können ja nach wie vor die Texturen am Modell nicht sehen und da wird das Bearbeiten unnötig kompliziert, deshalb werde ich zuerst einmal dem gesamten Modell nur einfache UVW-Koordinaten zuweisen, damit man einmal etwas sehen kann.
Jetzt haben wir das Material dem Objekt zugewiesen, aber nach wie vor kann man die Textur nicht darauf sehen.
Das liegt daran, dass 3D Studio nicht wissen kann, wie Texturen darauf aufgetragen werden sollen.
Genau dafür gibt es die UVW-Koordinaten. Anders als bei XYZ-Koordinaten, die die Position eines Punktes im Raum angeben, geben UVW-Koordinaten die Position eines Punktes auf der Textur an. Dabei entspricht U dem X, V dem Y und W dem Z.
Die Koordinaten reichen von 0 bis 1 und zum Beispiel würde ein U von 0 bedeuten das der Punkt an der linken Seite der Textur liegt usw.
Jetzt will man aber nicht natürlich für jeden Punkt so eine Koordinate eingeben, weil man da ja wirklich alt werden würde.
Ich werde hier meinen Turm, den ich für mein Projekt „Genesis“ umgebaut habe, verwenden.
Hier ein Bild im Endzustand:
Jetzt wählen wir aus der „Modifier List“, die sich am oberen Ende des Hauptmenüs befindet, den Modifikator „UVW-Map“. Dieser befindet sich am unteren Ende der Modifier-Liste.
Jetzt sollte das Hauptmenü in etwa so aussehen:
Ich habe hier bereits die Option „Box“ gewählt sowie für Länge, Breite und Höhe jeweils 500 eingetragen.
Das bedeutet, dass eine Ansicht der Textur die Abmessungen 500×500 Einheiten beträgt, was sich für Materialien wie zum Beispiel Gras als günstig erwiesen hat.
Außerdem sollte man das Objekt jetzt schon texturiert sehen können, auch wenn die Orientierung der Texturen teilweise noch keinen Sinn gibt. das liegt daran, dass wir ja für das gesamte Modell nur sehr einfache UVW-Koordinatent definiert haben. Bei allen speziellen Texturen, wie zum Beispiel Türen, Fenster, Balken, eben alle die nicht einfach aneinandergereiht werden sollen, müssen jetzt nachbearbeitet werden.
Dazu müssen wir zuerst einmal die Modifier-Liste „kollabieren“.
Dazu klicken wir einfach mit der rechten Maustaste in die Liste und wählen die Option „Collapse all“.
Jetzt werden alle Modifikatoren abgearbeitet und direkt in das Objekt integriert. Dass muss man auch immer machen, bevor man das Modell exportiert, damit der Spacer das verstehen kann.
Jetzt werde ich demonstrieren, wie man Seiten nachbearbeiten kann.
Ich werde dazu den Fuss meines Turmes nehmen. Dazu gehe ich wieder in den Sublevel „Face“ (Tastenkürzel „3“) und wähle die gewünschten Seiten aus.
Jetzt öffne ich wieder die Modifier List und wähle den Modifikator „Unwrap UVW“, welcher dann so aussieht:
Hier klicke ich auf den Button „Edit“, worauf sich ein neues Fenster öffnet, dass je nach Einstellungen anders aussehen kann.
Ich empfehle zuerst eine Zeit damit zu experimentieren und dann ein paar Standardeinstellungen zu wählen.
Ich verwende immer einen Raster von 0.25 einer Fangstärke von 0.5 und außerdem deaktiviere ich die Anzeige von Texturen mit dem Button . Dadurch kann man noch gut die Rasterung erkennen. Man kann das alles im Optionsmenü einstellen und wenn man etwas gefunden hat, das einem gefällt, kann man die aktuellen Einstellungen als Standard abspeichern.
Dadurch sieht das Fenster dann so aus:
Jetzt muss man erst einmal wegzoomen und die Seiten finden, die man dem Modifikator zugewiesen hat und sie einfach mal in den Ursprung verschieben.
Man sieht, dass die Rasterung nichts mit dem 3-Dimensionalen Raum zu tun hat, sondern einfach aneinaderreihungen der Texturen darstellt.
Wenn man die einzelnen Knoten jetzt verschiebt, kann man dadurch das gewünschte Ergebnis erzielen.
Um meinen Turmfuss zu texturieren, schiebe ich einfach die Knoten an folgende Punkte und sehe dadurch bereits die richtig ausgerichtete Textur auf dem Turm:
Wenn das jetzt funktioniert, kann man das „Edit UVWs“-Fenster schließen und wieder die Modifier-Liste kollabieren (Rechtsklick und Collapse All wählen), um die UVW-Koordinaten wieder in das Modell zu integrieren.
Auf diese Weise kann man das gesamte Modell texturieren.
Dabei muss man nur darauf achten, dass man immer nur „ähnliche Seiten“ bearbeitet. Wenn man Seiten nimmt, die eine zu unterschiedliche Neigung haben, kommen dabei sehr unschöne Verzerrungen heraus. In meinem Beispiel könnte man beispielsweise nicht nur den Fuss wählen, sondern die Gesamte Seite des Turmes von Unten, bis zum Ausguck, aber nicht nur dass, mann kann auch alle vier Seiten des Turmes auswählen, da wir ja auf jeder Seite die selbe Ausrichtung benötigen. Das die Seiten im 3D-Raum normal aufeinander stehen ist völlig egal.
Man kann in meinem Beispiel mit einem einzigen Schritt etwa 90% des Turmes texturieren! Experimentiert einfach damit. Wenn man etwas vermurkst, einfach im Hauptmenü auf „Reset UVWs“ klicken um das wieder rückgängig zu machen. Man kann also wirklich nichts falsch machen.
Es schadet auch wirklich nicht, wenn man mehrere verschiedene Texturen ausrichtet. Die Texturnummer wird nicht verändert und so kann man Texturen gleich ausrichten, die eigentlich unterschiedlich aussehen. An meinem Turm zum Beispiel Seiten die am oberen Ende ein Gesimse haben und welche die keines haben!
Ich habe es mir angewöhnt zuerst für ein paar angewählte Seiten den Modifier „UVW Map“ mit der Option „Planar“ zu verwenden und den sogenannten „Gizmo“ (Das ist das, was nach anwenden des Modifiers in Orange angezeigt wird und stellt die Projektionsrichtung der Textur dar) zu manipulieren. Wenn man in den Sublevel des Modifiers geht kann man nämlich sämtliche Transformationen mit dem Gizmo machen, wobei Rotation wahrscheinlich der Wichtigste ist. Wenn man den Gizmo nämlich rotiert, wird natürlich die Projektionsrichtung der Textur verändert und man sieht auf dem Modell auch sofort das Ergebnis.
Das ist beispielsweise bei einer Felswand sehr nützlich, die sehr uneben ist. Man gleicht das Planar einfach ungefähr dem Objekt an und bekommt eine realistische und unverzerrte Oberfläche.
Aber das sind eher schon die fortgeschrittenen Möglichkeiten, deshalb will ich gar nicht genauer darauf eingehen (Vielleicht in einem nachfolgendem Tutorial). Für den Standard-Anwender reicht die Kombination aus „UVW Map“ und „Unwrap UVW“ völlig aus.