Q3Map2 - Lightmapped Models und andere Modelformate einfügen
Ein großer Nachteil des Q3-Engines war bisher immer die Möglichkeit das man bloß das .md3 Format einfügen konnte
und diese auch nur mit dem doch recht groben Vertex-Licht schattiert wurde. Auch war man bei Mapobjekten auf
1000 Polygone beschränkt, was z.b. das bauen von kompletten Leveln als 3D-Objekte gänzlich auschloß.
Das hat nun ein Ende. Mit der Q3map2 und einigen kleinen Modifikationen kann man jetzt auch high-poly Models
verbauen und noch diverse Formate benutzen.
Wie das ganze Funktioniert werde ich im folgenden erklären. Als kleine Vorrausetzung solltet ihr wissen, wie man
Modelle erstellt und exportieren kann. In meinem Tutorial benutzte ich Max4.2 zum exportieren in das .ASE Format.
ASE ist ein einfaches ASCII Format und kann mit jedem Handelsüblichen Texteditor geöffnet werden.
Das bringt den Vorteil das man in der .ASE Datei selber Pfade zu den Texturen ändern kann, wie man möchte.
Ich benutze darum gerne das .ASE Format für meine Mapobjekte seit es mit der Q3map2 möglich ist. Spiele wie UT2003
benutzen das gleiche. Aber nicht klauen. *g*
Fangen wir mit den wichtigsten Merkmalen für das exportieren an. Bevor ihr exportiert solltet ihr folgenden Punkt
schonmal in eurem 3D-Programm beachten. Nämlich das euer Materialname den gleichen Pfad hat, der auch später zu eurer Textur
führt. Ausgegangen wird wieder von eurem Baseordner (Q3=Base, RtcW= main). Der Shot sollte das ganze verdeutlichen:
In meinem Beispiel habe ich nur eine Textur aufgelegt. Solltet ihr mehrere Materialen verwenden, dann müsst ihr bei
jedem so verfahren. Nun könnt ihr exportieren.
Exportiert folgende Parameter die in dem Kästchen einen Haken haben:
So könt ihr dann nichts mehr falsch machen. Nachdem ihr das habt ist euer Model schon fast fertig. Das einzige Problem ist nur noch das
ändern eine Pfadangabe. Da euer Materiallink momentan noch von "C:" ausgeht und nicht von eurem Basis Ordener eures Spiels,
müsst ihr die neu erstellte .ASE Datei einmal mit einem Texteditor öffnen und folgenden Pfad bearbeiten, wie auf den beiden nächsten Shots abgebildet:
Aus diesem Pfad zu eurem Material,
wird dann dieser Pafad, der von eurem Basis-Ordner abgeht
Damit ist euer .ASE Model fertig für den Q3-Engine unter der Q3Map2. Da wir aber wie bei so vielen Dingen noch einen Shader brauchen,
damit auch unser Model Lightmapped ist, müsst ihr noch folgenden Shader einbauen, den ihr wieder aus dem Kasten per Copy-Paste einfügen könnt.
Wie man neue Shader in die Shaderlist.txt einträgt habe ich ja schon in vielen Tutorials vorher beschrieben und werde darauf diesmal verzichten. ;)
Dieser Shader wird auch benötigt wenn ihr ein einfaches .md3 Model lightmappen möchtet. Ihr könnt dann einfch die Texturpfade ändern zu den jeweiligen Skins.
models/mapobjects/fies_models/wall //Pfad zu eurem .ASE Model
{
q3map_forcemeta //Das Model wird dem -meta Paramter unterzogen
q3map_splotchfix
q3map_nonplanar
q3map_shadeangle 45
q3map_lightmapsamplesize 8 //Größe der Lightmap //Lightmap-Stage {
map $lightmap
tcGen lightmap
rgbGen identity
}
// Der normale Texturstage zu eurer Textur {
map textures/fiesling/concrete_fertig.tga
blendFunc GL_DST_COLOR GL_ZERO
rgbGen identity
}
} |
Der Nachteil der momentanen GTK-Version 1.2.10 ist das man die .ASE Modelle noch nicht im Radianten sehen kann. Das wird in der nächsten Version
geändert sein, aber bis dahin müsst ihr euch noch damit behelfen das ihr euer Model auch als .md3 exportiert und in die Map einfügt.
Es wird dann zwar ohne Texturen sein, aber kann auch mehr als 1000 Polygone haben. Nur würde es im Spiel nicht angezeigt werden, wegen der zu hohen Polyzahl.
Fügt also euer .md3 "Dummy-Model" in eure Map ein und benutzt die normalen Entity-Keys um es nach euren Wünschen auszurichten oder zu skalieren.
Wenn ihr eure Map fertig gebaut habt, und das Model geclipped wurde, dann ändert einfach die Endung .md3 in .ase um. Euer Model wird jetzt zwar im
Radianten verschwinden, aber dann im Spiel in voller Pracht erscheinen. :D
Nun könnt ihr beruhigt kompilieren und werdet dann in etwa so ein Ergebnis sehen. Der oberste Screenshot ist ein Bild des .ASE Models mit der Textur
und der untere der die Lightmaps anzeigt (r_lightmap 1):
Ihr könnt an Polygonen mehr als 32.000 benutzen, wenn ihr wollt. Ich habe hier nur ein kleines "2min.-Model" gebaut, um mal den Vorgang zu demonstrieren.
<< zurück/back >>
|
|