MiCaDo Projektbericht - artecLab - Universität Bremen
MiCaDo Projektbericht - artecLab - Universität Bremen
MiCaDo Projektbericht - artecLab - Universität Bremen
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
92<br />
plettes Level geformt werden. Wichtig ist immer, dass das Level nach außen hin abgeschlossen ist.<br />
Alle Hohlräume des Levels müssen geschlossen und miteinander verbunden sein. Auch ein Außenlevel<br />
unter freiem Himmel ist abgeschlossen. Die Texturen, die den Raum nach oben hin abschliessen,<br />
sind hier lediglich mit einem speziellen Shader versehen, der dem Betrachter ein Offensein grafisch<br />
vorspielt.<br />
In Ausnahmefällen können auch einzelne Flächen anstelle der Brushes verwendet werden. Diese<br />
Flächen nennt man Meshes. Sie dürfen nicht zur Abgrenzung des Levels verwendet werden und<br />
können also nur in durch Brushes abgegrenzten Hohlräumen eingesetzt werden. Diese Meshes können<br />
sinnvoll für Strukturen eingesetzt werden, die quasi keine Tiefe haben, wie z.B. Blätter, Stoffe, Glas,<br />
Spinnennetzte oder ähnliches.<br />
Alle Flächen der Brushes und Meshes können mit Texturen versehen werden. Es ist sinnvoll, Objekte<br />
kurz nach der Erstellung mit Texturen zu versehen. Es dient der Übersicht und es passiert seltener,<br />
dass man einzelne Polygone zu texturieren vergisst.<br />
Ist das Level soweit fertig modelliert und texturiert, können noch bestimmte Positionen innerhalb<br />
des Levels mit besonderen Eigenschaften versehen werden. Diese positionsbezogenen, besonderen<br />
Eigenschaften nennt man Entities. Entities umfassen Spieler-Startpositionen, Lichtquellen, Soundquellen<br />
und Items, wie z.B. Waffen und Munition. Da wir in unserer Anwendung weder Waffen noch<br />
Munition brauchen, werden diese Entities in unserer Anwendung leicht zweckentfremdet verwendet.<br />
Da das von uns implementierte Wegsuchesystem der Kreaturen auf Wegpunkten basiert, werden<br />
mit Hilfe der Waffen- und Munitions-Entities diese Wegpunkte im Level definiert. Sie werden nur<br />
zur Erstellung des Wegenetzes verwandt und nicht dargestellt.<br />
Kompilieren des Levels<br />
Ist das Level nun komplett fertiggestellt, muss es noch in das von Quake III bzw. der Madness Engine<br />
verwendete BSP-Format (siehe Abschnitt 3.1) umgewandelt werden. Hierzu muss es kompiliert werden.<br />
Der GTK-Radiant bietet zwar einen integrierten Compiler, dieser ist jedoch veraltet und bietet<br />
keine genügende Funktionalität und Geschwindigkeit. Wir verwendeten den Compiler q3map2 von<br />
Shaderlab. Da es sich um ein Komandozeilenprogramm handelt, ist es sinnvoll zusätzlich ein Tool<br />
zu verwenden, das eine GUI für diesen Compiler bereitstellt, um die Benutzung des Programms zu<br />
vereinfachen. Die Kompilierung besteht aus drei Schritten: Dem Erstellen des BSP-Baumes, der Datenstruktur<br />
in dem das 3D-Modell der Welt abgelegt wird, dem Sichtbarkeitstest, bei dem ermittelt<br />
wird welche Bereiche von welchem anderen Punkt im Level einsehbar sind und der Lichtberechnung.<br />
Die ersten beiden Teile lassen sich bis auf einige Optimierungs- und Debugoptionen nicht