Nicht eingeloggt
Registrieren

Warpzones

Erstellen eines Zentrifugalrundgangs mit WarpZonen


Dieses Tutorial ist für Anfänger und Fortgeschrittene geschrieben. Fortgeschrittene brauchen nur die Stichpunkte in den einzelnen Schritten zu lesen, Anfänger noch die erklärenden Texte die mit dem Balken eingerückt sind. Ich möchte aber zuerst einmal erklären was eine WarpZone ist. Eine WarpZone ist eine Art Teleporter, mit dem unterschied das man das Teleporterziel in dem Portal des Teleportereingangs schon sehen kann. Da der Übergang vom Eingang zum Ziel fließend ist, sind sehr interessante Einsatzmöglichkeiten denkbar, z.B. ein Zentrifugalrundgang (HamsterWheel) wie in 2001, ein begehbarer Kleinplanet, ein Raum in dem man an Decken und/oder Wänden laufen kann, ein Loch im Boden was an der Decke endet,u.s.w. Es folgt noch ein Link zur Beispiel-Map, und zu anderen WarpZone-Tutorials aber dann kann es schon losgehen.

 



1.Einen Raum erstellen.

Erstelle einen Raum mit den Maßen 256x1024x256, und setze ein Licht in die Mitte.

So wird's gemacht:
Klicke mit der RechtenMaustaste auf den "CubeBuilder-Button". In dem "CubeBuilder-Fenster" gibst du das selbe ein wie im Bild unten.Danach drücke "Build" um die Einstellungen an den CubeBuilderBrush (rotgestrichelter Brush) zu übergeben.



Drücke den "Subtract-Button" um die Form in den Level einzubauen. Jetzt baue noch ein Licht mit ein, dazu wechsle in die "Top-Ansicht" Klicke mit der RechtenMaustaste in die Mitte deines Raumes und wähle "Add Light here" aus.


Wechsle wieder zurück in die "Side-Ansicht" . "Build All" und Abspeichern nicht vergessen und der Raum ist fertig.


2. Sheet's einbauen.

Den SheetBuilderBrush auf 256x256,Axis=AX_YAxis einstellen, und mit VertexEditing ausrichten. Anschließend als SpecialBrush/ZonePortal adden. Das ganze wiederholen, für den zweiten Sheet.

Tip!
Damit es später keine Probleme mit dem Botpahting gibt, muß der WarpZone-Raum eine tiefe von mindestens 70WE besitzen.


Merke:
Die beiden Sheet's für die Portale müssen exakt die selben Abmessungen haben und dürfen nicht gedreht* werden, sonst kommt es zum "Hall of Mirror-Effekt". Für den Fall das so etwas bei dir auftritt, die Sheet's löschen und neubauen.


*Nur über die eine Achse, wie es im Bild zusehen ist!


Tip!
Um eventuell später auftretende Fehler (BSP-Holes) im Level zu vermeiden, sollte der BuildBrush (das ist der rotgestrichelte) nach dem verändern mit Scaling oder VertexEditing wieder in seine Grundeinstellung zurück gebracht werden. Dazu klicke mit der LinkenMaustaste auf irgendeinen "BuilderBrush-Button" (am besten Cube ) jetzt klicke mit der RechtenMaustaste auf seine rotgestricheltelinie und wähle dort "Reset/Reset All" aus.


So wird's gemacht:
Öffne das "SheetBuilder-Fenster", indem du mit der RechtenMaustaste auf den "SheetBuilder-Button" klickst. Hier stellst du die Größe und Richtung ein (in unserem Fall: 256x256, Axis=AX_YAxis).


"Build" drücken und der Sheet steht senkrecht im Raum. Dann bewege den Sheet mit der Maus und gedrückter Strg-Taste an seinen Platz.


"VertexEditing-Button" drücken. Um den SheetBuilderBrush mit VertexEditing zu verändern muß er angewählt sein, wenn nicht, draufklicken das er hellrot wird. Mit gedrückter Strg+Alt+LinkerMaustaste ein rotes Auswahlfeld um die beiden oberen Punkte (nur einer ist sichtbar, der andere steht dahinter) des Sheet's ziehen.


Mit gedrückter Strg+LinkerMaustaste, lassen sich die Punkte mit der Maus verschieben.


Das selbe mit den beiden unteren Punkten machen.


Die Sheetform in den Level einfügen, dazu drücke mit der LinkenMaustaste auf den "Add Special Brush-Button" und das AddSpecial-Fenster öffnet sich.


Unter "Prefabs :" wähle "Zone Portal" aus, und drücke dann auf "OK". Baue den Sheet für die andere Seite, klicke dazu mit der LinkenMaustaste auf den "SheetBuilder-Button" , und wiederhole das ganze. Das VertexEditing ist beendet, kehre in den "Camera Movement-Modus" zurück indem du den "Camera Movement-Button" drückst. "Build All" und Abspeichern nicht vergessen.


3. WarpZoneInfo's einfügen.

Setze zwei WarpZoneInfo's die du im Actor Class Browser unter Actor/Info/ZoneInfo/WarpZoneInfo findest, in die durch Sheet's abgegrenzten Bereiche.

So wird's gemacht:
Öffne das "Actor Class Browser-Fenster" mit einem Klick der LinkenMaustaste auf den "Actor Class Browser-Button" . Arbeite dich runter bis zur WarpZoneInfo ( Actor/Info/ZoneInfo/WarpZoneInfo), die du einmal mit der LinkenMaustaste anklickst.


Mit einem Klick der RechtenMaustaste auf die spätere Position und "Add WarpZoneInfo here" aus dem Mausmenü, setzt du die WarpZoneInfo's wie es im Bild unten zusehen ist. "Build All" und Abspeichern nicht vergessen.


4. Den Raum vervielfältigen.

Den Raum, Licht, Sheet's und die WarpZoneInfo's selektieren, und sooft kopieren bis insgesamt 6 Räume entstanden sind.


Tip!
Mit gedrückter Strg-Taste und LinkerMaustaste kannst du einzelne Teile selektieren und deselektieren. Mit gedrückter Strg+Alt und LinkerMaustaste kannst du einen Rahmen aufziehen um mehrere Teile auszuwählen. Möchtest du diesen Rahmen benutzen wenn du schon Teile ausgewählt hast, drücke zusätzlich noch Shift. Mit dem "Invert Selection-Button" kehrst du die Auswahl um.

So wird's gemacht:
Mit gedrückter Strg-Taste und LinkerMaustaste den Raum, WarpZoneInfo's, Sheet's und das Licht selektieren. Mit der RechtenMaustaste auf ein ausgewähltes Teil klicken. Das Mausmenü öffnet sich, wähle "Duplicate" aus.


Der Raum wurde kopiert. Verschiebe ihn mit Shift+LinkerMaustaste an eine freie Stelle. Den soeben kopierten und noch selektierten Raum wiederum kopieren, solange bis du insgesamt 6 Räume erhältst.


5. WarpZoneInfo einstellen.

Schreibe die Einstellungen aus der Tabelle in die beiden Schlüssel "WarpZoneInfo/OtherSideURL" und "WarpZoneInfo/ThisTag" der WarpZoneInfo's.

Merke:
Um zwei WarpZoneInfo's erfolgreich miteinander zu verbinden mußt du nur in die erste WarpZoneInfo bei "OtherSideURL" den "ThisTag" der zweiten WarpZoneInfo hineinschreiben, und in die zweite WarpZoneInfo bei "OtherSideURL" den "ThisTag" der ersten WarpZoneInfo.

So wird's gemacht:
Ein Doppelklick mit der LinkenMaustaste auf ein WarpZoneInfo-Icon öffnet sein "WarpZoneInfo Properties-Fenster".


Dort findest du unter "WarpZoneInfo" die beiden Schlüssel die von Bedeutung sind: "OtherSideURL" und "ThisTag". Ich gehe davon aus das die LinkeWarpZoneInfo eines Raumes der Eingang, und die rechte der Ausgang ist. Zur besseren Übersicht habe ich die Eingaben (z.B. Raum1Eingang) ausgeschrieben, ihr könnt sie auch abkürzen (z.B. r1e) oder durch Zahlen ersetzen. Tragt jetzt die Einstellungen aus der Tabelle in deine WarpZoneInfo's ein.


Die Einstellungen für alle Warpzonen

  ThisTag  OtherSideURL 
Raum1 LinkeWZ Raum1Eingang Raum6Ausgang
Raum1 RechteWZ Raum1Ausgang Raum2Eingang
Raum2 LinkeWZ Raum2Eingang Raum1Ausgang
Raum2 RechteWZ Raum2Ausgang Raum3Eingang
Raum3 LinkeWZ Raum3Eingang Raum2Ausgang
Raum3 RechteWZ Raum3Ausgang Raum4Eingang
Raum4 LinkeWZ Raum4Eingang Raum3Ausgang
Raum4 RechteWZ Raum4Ausgang Raum5Eingang
Raum5 LinkeWZ Raum5Eingang Raum4Ausgang
Raum5 RechteWZ Raum5Ausgang Raum6Eingang
Raum6 LinkeWZ Raum6Eingang Raum5Ausgang
 Raum6 RechteWZ Raum6Ausgang Raum1Eingang

 



6. PlayerStart einbauen.

Jetzt noch ein PlayerStart setzen und der Level ist fertig zum Testen.

So wird´s gemacht:
Öffne den "Actor Class Browser" mit einem Klick auf den "Actor Class Browser-Button" . Suche (unter Actor/NavigationPoint) den PlayerStart den du einmal mit der LinkenMaustaste anklickst. Klicke mit der RechtenMaustaste auf die Position welche der PlayerStart später einnehmen soll, das Mausmenü öffnet sich.


Mit "Add PlayerStart here" läßt sich der PlayerStart setzen, (in der Höhe ca.48WE vom Fußboden entfernt) wie es im Bild zusehen ist.


"Build All" und Abspeichern nicht vergessen. Wenn jeder Schritt des Tutorials ausgeführt wurde, müßte der Level funktionieren. Für den Fall, das dein Player beim eintritt in den Level stirbt, solltest du die Bot's auf 0 stellen. Jetzt kommt der große Augenblick, klicke auf den "Play Map!-Button" .