Und erneut willkommen zu einem weiteren und spannenden Portal 2 Tutorial aus dem Hause Raistlin.
Dieses Tutorial ist auch auf Portal 1 übertragbar da dort genau so verfahren wird, höchstens die Texturpfade und Namen werden vermutlich anders sein.
Ich setze in diesem Tutorial die Standart-Kenntnisse von den Hammer-Funktionen und dem Input/Output-System vorraus.
In diesem Tutorial widmen wir uns der nervernzereissenden Jagd, wie ihr wie ihr diese lustigen nennen wir sie mal "Statuslinien" (oder einfach Indicator) wie in Portal 1 und 2 nachbauen könnt,
damit eure Testkammern einen optischen Kick verpasst und dem Spieler mitteilt wann er seine Aufgabe erfolgreich bewältigt hat.
Zu Anfang kommt die Frage auf "Was sind diese Indicator?".
Ganz einfach, das sind diese lustigen Linien welche euch in vielen der Testkammern anzeigen ob ihr eine Tür freigeschaltet habt, oder wie viele Teilrätsel noch fehlen damit die Tür aufgeht.
Fangen wir wieder ganz vorne an, ich setze auch hier wieder vorraus das ihr bereits über eine Testmap verfügt, wenn nicht solltet ihr euch eine bauen.
Zuerst erstellt ihr einen gewöhnlichen Brush, dieser hilft uns dabei die Maße der Overlays auf Optimalgröße zu bringen welche von den Indicator benutzt werden.
Der Brush sollte 151 Units lang und 16 Units hoch sein, die Dicke spielt keine Rolle da wir nur 2 Seiten und diese auch nur genau einmal gebrauchen werden.

Sobald ihr den Brush erstellt habt klickt ihr auf das Overlay-Tool und erstellt ein neues an der länglichen Seite des eben erstellten Brushes.
In der 3D-Ansicht könnt ihr nun anhand kleiner weißer Quadrate die Größe und Form des Overlays verändern, wir passen sie genau auf den Brush an.
Nun ändern wir das Material des Overlays in "signage/indicator_lights/indicator_lights_wall" und stellen danach bei "U End" den Wert 2.5 ein,
was soviel bedeutet wie das er das ausgewählte Material 3mal innerhalb des vorgegebenen Rahmens des Overlays darstellen, also wiederholt werden soll.
Anschliessend geben wir diesem Overlay noch einen Namen mit dem wir später per Input/Output-System die Textur wechseln können, zb. indicator_wall01
Wenn wir nun auf Apply klicken dürften wir viele, schöne Indicators haben was ungefähr so aussehen sollte.
Den Vorlage-Brush können wir nun auch schon wieder löschen und mit dem so eben erstellten Overlay basteln wir uns in einer kleinen Fummelsarbeit,
per Copy+Paste unsere Indicator-Linien zusammen dabei aber nicht vergessen die Namen und Brush Faces des Overlays neu zu vergeben.
Merke: Um mehrere seperate Brushfaces zu einem Overlay zuweisen zu können müsst ihr beim klicken STRG gedrückt halten.

Für die Eckpunkte erstellen wir erneut einen Vorlage-Brush mit den Maßen 16 Länge und 16 Höhe an denen wir erneut ein Overlay erstellen und es an die Maße vom Brush anpassen.
Diesem Overlay geben wir auch wieder einen Namen und die Textur "signage/indicator_lights/indicator_lights_corner_floor".

Als letztes kommen die Checkboxen die bei unerfüllten Rätseln ein großes, blau hinterlegtes X und bei bestandenen einen orange hinterlegten Haken anzeigen.
Dies ist ein func_brush mit am besten proportionalen Maßen, in meinem Beispiel ist er 54*54 Units groß.
Diesen belegen wir dann mit der Textur "signage/signage_doorstate" und bennen das Entitie ähnlich wie die Overlays damit wir ihn eindeutig zuordnen können.
Unsere "Checkbox" ist somit auch fertig.

Wenn ihr euch fragt wo den jetzt die orangen Indicators bleiben kann ich euch beruhigen, die kommen jetzt.
Wir erstellen nun für jeden Indicator (inklusive Eckpunkte und Checkboxen) ein Point-Entity vom Typus "env_texturetoggle",
bennenen jedes eindeutig (am besten mit texturetoggle_ als Präfix) und weisen in unter "Target Brush" das Entity zu, bei welchem die Textur verändert werden soll.
Wie das aussehen soll seht ihr am folgenden Bild.

Zu guter letzt fehlen uns nur noch Relays welche die ganzen Outputs beeinhalten, damit wir auch alles schön übersichtlich behalten.
Dazu erstellen wir 2 logic_relay, eins nennen wir zb. "log_relay_turnonindicator" und das andere "log_relay_turnoffindicator".
TurnOnIndicator besagt das die Indicator orange und TurnOffIndicator blau gefärbt werden.
Nun müssen wir für jeden Indicator einen Output in dem "log_relay_turnonindicator" erstellen der wiefolgt lautet:
OnTrigger | texturetoggle_indicator_wall01 | SetTexturIndex | 1 | 0.00
OnTrigger | texturetoggle_indicator_wall02 | SetTexturIndex | 1 | 0.00
OnTrigger | texturetoggle_indicator_wall03 | SetTexturIndex | 1 | 0.00
usw.
Unsere verwendeten Indicator-Texturen enthalten 2 Varianten, Blau und Orange.
SetTextureIndex 1 sagt in diesem Fall das auf die orange gewechselt wird.
Das gleiche machen wir bei "log_relay_turnoffindicator" nur setzen wir dort den TextureIndex auf 0 also wieder aufs blaue zurück.

Wenn ihr das geschafft habt müsst ihr nur noch die beiden logic_relay´s triggern wenn ihr die Indicatorfarbe wechseln wollt.
Und das war´s auch schon wieder.
Ich wünsche euch nun viel Spaß mit euren Testkammern und hoffe das euch das Tutorial gefallen hat, die nächsten folgen in kürze.
Fragen und Kritik ist gerne gesehen, generell ist Feedback jeglicher Art wie immer willkommen.
VMF und spielbare BSP sind im Anhang enthalten
Mfg
Raistlin
Dieses Tutorial und dessen Medien sind geistiges Eigentum von Rick Erbau und wurden für
mappingbase.de angefertigt.
Weiterverbreitung ohne audrückliche Einverständnis durch den Author oder den Administratoren von
mappingbase.de ist nicht gestattet.
Das speichern des Inhalts für persönlichen Gebrauch ist gestattet.
Rick Erbau, 2011
Lesezeichen