Schwingende Lampe mit dynamischem Licht

Gleich vorneweg: Diese Konstruktion funktioniert ausschliesslich bei Half-Life², bei CS:Source wird diese Lampe nicht funktionieren. Es scheint in CS:Source auch keine Möglichkeit zu geben, Kabel mit beweglichen Objekten zu verbinden. Wenn jemand doch eine Lösung weiß, soll er sie gleich hier eintragen oder im Forum posten!.

Einen Trick, um diese Problem (Bug) bei CS:Source zu umgehen, sieht man bei Prodigy: Dort wird ein Lampenmodel mit bereits integriert Kabel verwendet und mithilfe eines phys_ballsocket aufgehängt.



Ihr kennt mit Sicherheit die Industrielampen in Half-life², die sich bei Beschuss so schön hin und herbewegen. In diesem Tutorial werden wir eine bauen.

Übersicht

lampe.jpg Aufbau der Lampenkonstruktion

1. Kabel für die Lampe

Zunächst brauchen wir ein Kabel für die Lampe, damit das ganze auch realistisch aussieht: move_rope

  • Name - rope1a
  • Next Keyframe - rope1b
  • Slack - 50 (Der Slack-Wert gibt an, wie stark das Seil durchhängt)

Den Rest könnt bzw müsst ihr erstmal so lassen.

Dann bauen wir ein keyframe_rope:

  • Name - rope1b
  • Slack- 50

Wenn ihr alles richtig gemacht habt, seht ihr jetzt eine grüne Linie, die in rot übergeht. Somit haben wir das Kabel erstmal fertig. Damit sich das Kabel mit der Lampe mitbewegt geben wir gleich beim Parent-Wert lamp01 an.

2. Lampe

Setzt ein prop_physics_override:

  • Name - lamp01
  • World Model - models/props_c17/light_industrialbell01_on.mdl
  • Mass Scale - höher 5 (damit sich bei Beschuss die Lampe nicht gleich mehrfach überschlägt). Wert 8 brachte mir bisher das beste Ergebnis.

Ansonsten alles so lassen.

3. phys_pulleyconstraint

Damit das alles auch physikalisch funktioniert, brauchen wir dann noch ein phys_pulleyconstraint:

  • Entity1: rope1a
  • Entity2: lamp01

Dann hängt die Lampe nach dem Compile schonmal und lässt sich auch abschiessen.

4. light_dynamic

Um dem ganzen noch ein wenig Eleganz einzuhauchen, setzen wir noch ein light_dynamic:

  • Parent - lamp01

Somit bewegt sich das Licht mit der Lampe mit. Damit das ganze auch gut aussieht, müssen wir bei Angle noch down einstellen. Ich habe jetzt bei Light brightness den Wert 2 und bei inner Angle: 40 / outer angle: 55 - Aber das könnt ihr natürlich selbst mal ausprobieren.

Fullbrightfehler

Es kommt oft vor, daß die Map fullbright gestartet wird, also die Map wie bei einem Leak vollkommen ausgeleuchtet wird. Das passiert meistens immer dann, wenn außer einem light_dynamic Entity keine andere Lichtquelle in der Map vorhanden ist. Hier gibt es zwei Lösungen:

  1. Man wechselt nach dem Mapstart in die Konsole und tippt mat_fullbright 0 ein (ist aber nicht so der Brüller).
  2. Man platziert irgendwo ein normales light Entity.
Die Verwendung aller Dokumente einschließlich der Abbildungen ausschließlich zu nichtkommerziellen Zwecken. Verbreitung des Dokuments auf Speichermedien, (insbesondere auf CD-ROMs als Beilage zu Zeitschriften und Magazinen oder sog. "Mission-Packs" etc.) ist untersagt.
 
half-life_2/tutorials/schwingende_lampe_mit_dynamischem_licht.txt · Zuletzt geändert: 2010/06/16 23:06 von Adrian_Broher