PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 18 - Türen



Hashimo
20.06.2010, 20:55:27
Was wird in diesem Tutorial behandelt?
- Schiebetüren (ohne und mit Schalter)
- Rotierende Türen
- Plattformen
- Türen aus Models "prop_door_rotating" von User BlackLight

Allgemeines: Aktiviert im Hammer-Editor (VHE) unter "View" die Optionen "Show Helpers" und "Show Helpers in 2D"


Schiebetüren

Erstellt zunächst nebst Wand und einem Rahmen noch einen Brush für die eigentlich Tür und texturiert sie nach Belieben.
Das könnte zum Beispiel so aussehen:

http://download.gc-gaming.de/bashor/mappingbase/communitytuts/hashimo/doors/hs_door_tut_01ae2i.png


Nun markiert ihr die Tür durch einen Linksklick auf den Brush und klickt dann entweder im VHE in der rechten Leiste auf "Tie to entity" oder drückt einfach "STRG + T".

In dem Fenster, was jetzt erscheint, tippt ihr bei "func_detail" einfach "func_door" ein.
Hinweis: Nicht "func_door_rotating"! Das ist für Türen mit Angeln, dazu kommen wir weiter unten.

Klickt unten auf den "Apply"-Button!


http://download.gc-gaming.de/bashor/mappingbase/communitytuts/hashimo/doors/hs_door_tut_022ece.png

Als Nächtes bleiben wir im Reiter "Class Info" --> "Keyvalues" (im obigen Bild grün umrandet)

Für eine einfache Schiebetür interessieren uns erstmal die folgenden Einträge, welche ihr zum Testen einfach von mir abschreiben könnt.
Die anderen Einträge sind oftmals selbsterklärend, zumal dazu auch im "Help"-Feld eine Kurzbeschreibung gegeben wird.
Falls ihr aber etwas nicht versteht, dann fragt einfach hier im Thread nach.

Tragt also Folgendes ein:

Name: Testdoor1 //Name der Tür ; hierüber kann die Tür von anderen Entities angesprochen werden (z.B. Schaltern, siehe weiter unten)
Speed: 100 // Standardwert. Wenn sich die Tür langsamer oder schneller öffnen soll, probiert z.B. die Werte "50" bzw. "200"
Delay Before Reset (-1 stay): 4 // Zeit in Sekunden, bis sich die Tür wieder schließt ; "-1" = niemals (automatisch) schließen
Move Direction (Pitch Yaw Roll): Wählt erstmal hier http://download.gc-gaming.de/bashor/mappingbase/communitytuts/hashimo/doors/hs_door_tut_037esr.png einfach aus, ob sich die Tür nach oben/unten öffnen soll.

Kleine Exkursion:
Die Strecke, die eine Tür zurücklegt entspricht den Maßen der Tür auf den entsprechenden Achse. Klingt jetzt kompliziert, ist es aber nicht:
Wenn sich eine Tür von oben nach unten bewegt, ist die obere Kante der Tür nach dem Öffnen da, wo vorher die untere Kante der Tür war --> Die Tür ist also vollständig geöffnet! )
Wenn ihr möchtet, dass die Tür in eine andere Richtung geöffnet wird, müsst ihr den "Yaw"-Wert ändern. Gehen wir von der x/y 2D-Topansicht aus:
Yaw: 0 = nach rechts
Yaw: 90 = nach "oben" //Achtung: Nicht mit "UP" verwechseln ( =Pitch-Wert)
Yaw: 180 = nach "links"
Yaw: 270 = nach "unten" //Achtung: Nicht mit "DOWN" verwechseln ( =Pitch-Wert)
Lip: 4 //Wert in Units, die die Tür überstehen soll (also eine Verringerung der Strecke, die die Tür zurücklegt). Versucht den Unterschied zwischen "0" und "4".


Jetzt klicken wir auf den Reiter "Flags" (im zweiten Bild blau umrandet) und aktivieren:

[X] Use Opens //dadurch wird die Tür beim Drücken der Taste "E" geöffnet (bei Standardtastaturkonfiguration)
[X] Touch Opens //dadurch wird die Tür geöffnet, sobald ihr sie berührt (Lasst die Option weg, falls ihr das nicht wollt)


Eigentlich seid jetzt fertig. Wenn ihr nun kompiliert, sollte sich die Tür auf "E" öffnen und nach 4 Sekunden wieder schließen.
__________________________________________________ __________________


Wir kommen an dieser Stelle jetzt noch zum optionalen Schalter für diese Tür.
Wir werden es so machen, dass sich die Tür nur durch diesen Schalter öffnen lässt.

Geht daher zunächst wieder in die "Flags" der Tür und deaktiviert alle Optionen!

Erstellt dann einen Brush und macht ihn per "STRG + T" zu einem Entity ; wählt dieses Mal "func_button" aus --> Apply.

Geht dann direkt in die "Flags" des "func_button":
[X] Don't Move // Damit sich der Button-Brush selbst nicht bewegt
[X] Use Activates //Per Druck auf Taste "E" wird InGame der Button ausgelöst

Dann klickt ihr oben auf den Reiter "Outputs" und übernehmt die Einstellungen aus dem Bild:

http://download.gc-gaming.de/bashor/mappingbase/communitytuts/hashimo/doors/buttonwdux.png
(Zum vergrößern des Bildes: Rechtsklick -> "Grafik anzeigen" auswählen)

Der Wert "Toggle" bei "Via This Input" bewirkt, dass die angesprochene Tür geöffnet wird, wenn sie geschlossen ist und geschlossen wird, wenn sie geöffnet ist.
Wenn der Button nur eins von beidem machen soll, nehmt statt "Toggle" entweder "Open" oder "Close".

Fertig ist die Tür mit Schalter!
__________________________________________________ _______________


Rotierende Türen

Klingt komisch, sind aber eigentlich Türen, wie sie in jedem Haushalt zu finden sind (Türen mit Angeln).

Erstellt zunächt wieder eine Szene mit einer Tür:
- Falls ihr was Neues erstellt: Tür-Brush anklicken --> "STRG+E" drücken und "func_door_rotating" bei "Class" eintippen. --> Apply!
- Ansonsten die alte Tür doppelklicken und "func_door" in "func_door_rotating" ändern --> Apply!.

Wenn ihr die Tür markiert habt, seht ihr im 3D-Fenster einen kleinen blauen Ball..

http://download.gc-gaming.de/bashor/mappingbase/communitytuts/hashimo/doors/hs_door_tut_04hey1.png

Nicht? - Ihr solltet doch im Hammer-Menü unter "View" die "Helper"s aktivieren.. steht ganz am Anfang des Tutorials. ;)

Dieser Ball ist der sogenannte "Origin", quasi der Angelpunkt eurer Tür. An diesem Punkt ist die Tür fixiert, die andere Seite schert aus.
Diesen Origin könnt ihr auch in den 2D-Fenstern sehen, nur dass er hier einfach als kleiner weißer Kreis dargestellt ist (im Bild blau umrandet)

Schiebt jetzt den Origin einfach mit der Maus in der "x/y 2D-Topansicht" an die Seite, wo die Tür Angel sein soll:

http://download.gc-gaming.de/bashor/mappingbase/communitytuts/hashimo/doors/hs_door_tut_059fhx.png

Fertig ist die Tür!
__________________________________________________ _________________


Plattformen

Erstellt euch eine Szenze in der es quasi 2 Etagen gibt. Danach erstellt ihr einen Brush, welcher von der unteren in die obere Etage fahren soll.
Diesen Brush (also eure Plattform) macht ihr zu "func_door".

Guckt euch jetzt kurz das Bild an:
http://download.gc-gaming.de/bashor/mappingbase/communitytuts/hashimo/doors/hs_door_tut_06jh1e.png

Wie ihr seht, ist die Plattform nicht besonders dick (8 Units), weil man ja ohne einen Sprung da drauflaufen soll.
Würde man jetzt einfach die Tür nach oben fahren lassen, so würde die Tür nur 8 Units nach oben fahren, um vollständig geöffnet zu sein.

Natürlich soll sie aber in die obere Etage fahren!! Daher kommt jetzt ein Trick:

Stellt bei "Lip" einen negativen Wert ein! Damit öffnet sich die Tür weiter, als sie sich eigentlich öffnen würde.
In meinem Beispiel ist die Wand 128 Units hoch, die Platform ist 8 Units hoch. Wir stellen daher bei Lip "-120" ein! (Eventuell müsst ihr's bei euch einfach austesten.)

Also in den Eigenschaften des "func_door" (Platform):

"Class Info ; Keyvalues"
Lip: -120 // MINUS 120!!
Move Direction (Pitch Yaw Roll): "Up"

Fertig ist die Plattform!

Soooo, dar war's auch schon! Wenn ihr noch Fragen habt, postet sie einfach hier im Thread.
__________________________________________________ __________________________________________________ ___________________________

Ergänzung: Wer mal 'ne richtig coole Tür sehen will, schaut in dieses Tutorial (http://mappingbase.de/threads/65-Source-Iris-Door)!
Im Anhang (ganz unten) findet ihr noch meine Beispielmap
__________________________________________________ __________________________________________________ ___________________________




Der folgende Teil wurde von BlackLight (http://mappingbase.de/members/154) erstellt, vielen Dank dafür!


Dieses Tutorial habe ich erstellt, da dieser Abschnitt nicht in 18 - Türen (http://mappingbase.de/threads/106)(von Hashimo) enthalten ist.


Dieses Tutorial wurde für Anfänger geschrieben. Pros können die ersten Teile gekonnt überspringen.;)

http://download.gc-gaming.de/bashor/mappingbase/Basictuts/Source/18-doors/1.jpghttp://download.gc-gaming.de/bashor/mappingbase/Basictuts/Source/18-doors/2.jpg



prop_door_rotating (http://developer.valvesoftware.com/wiki/Prop_door_rotating) , ist ein Entity welches eine "perfekte" Tür erstellt.
An dieser Tür befindet sich sogar eine Klinke, die bei Benutzung nach unten
gedrückt wird.
Also ein sehr reales Ergebnis erzeugt.


Das gute daran ist, es geht schnell. Wenn man nun keine extravagante, sience-fiction Tür haben möchte, sollte man darauf zurück greifen. :P




Wie erstellt man solch eine Tür ?

Als erstes wählt man sich das Entity-Tool aus. Meist rechts am Rand des Editor-Fensters, gibt man nun das gewünschte Entity an.

In diesem Fall : prop_door_rotating

Dieses platziert man einfach dort in die Map, wo man sie haben möchte.

Öffnet man nun das Entity sollte dieses Fenster erscheinen.

http://download.gc-gaming.de/bashor/mappingbase/Basictuts/Source/18-doors/3.jpg

Gebt der Tür einen Namen.
Ich verwende meist solche, die mich später nicht verwirren.Sofern es mehrere werden sollten.
z.B. : door_entry

Als nächstes kümmern wir uns um das Model. Durch dieses wird das Entity erst zu einer "realistischen" Tür.

Dafür geht ihr in den Reiter : WorldModel

Hier sucht ihr das Modell "door01_left.mdl", welches ihr dann auch auswählt.

Der volle Pfad lautet : models/props_c17/door01_left.mdl
http://download.gc-gaming.de/bashor/mappingbase/Basictuts/Source/18-doors/4.jpg

Nun klickt unten rechts auf "Apply" und eure Tür sollte zu sehen sein.


Ingame ist sie nun voll funktionsfähig.





Kann die Tür auch anders aussehen ?

Natürlich!
Es wäre ja langweilig wenn alle Türen den selben Skin haben.
Um das zu ändern :

Öffnet das Entity Menü von eurer Tür.
Geht in den Reiter : Skin
http://download.gc-gaming.de/bashor/mappingbase/Basictuts/Source/18-doors/5.jpg

Rechts seht ihr nun eine Zeile mit einer Zahl.

Diese verändert ihr einfach im ganzzahligen Bereich.
0..1..2..3..4..5..6..7..8

Mit jeder Zahl wählt ihr einen anderen Skin für eure Tür aus.

Ganz einfach.