Kapitel 13 · Half-Life 2 & CS: Source

GLASSCHEIBEN

Autor: Fragpoint
Downloads: Beispielmap 11

Heute wollen wir uns mit zerstörbaren Glasscheiben beschäftigen. Beim Glas gilt das gleiche, wie beim Wasser: Es wird lediglich eine Seite mit einer Textur benötigt. Die anderen Seiten würden sonst zu optischen Fehlern bzw. unnötiger CPU-Belastung führen. Deshalb erstellen wir direkt in unserem Durchgang zum Versperren einen ganz normalen Brush und belegen diesen vollständig mit der "toolsnodraw"-Textur.

image106.jpg

Anschließend wird nur die Vorderseite des Brushes mit der Textur "glass/glasswindowbreak070a" tapeziert. Bei der von mir gewählten Grafik handelt es sich um eine leicht verschmutzt Glasscheibe.

image107.jpg

Sobald wir die Textur über "Apply" bestätigt haben, können wir im 3D-Fenster erkennen, dass diese nun transparent dargestellt wird.

image108.jpg

Leider kann man noch erkennen, an welcher Stelle das Programm die Textur aneinander kachelt. Um das zu vermeiden, müssen wir die Grafik gleichmäßig über die Oberfläche verteilen/strecken. Diesen Vorgang nennt man "fitten". Im Texturen-Tool gibt es hierfür einen extra Button, den wir noch anklicken müssen, während die Vorderseite mit der Glas-Textur markiert ist.

image109.jpg

Anschließend kann man bereits im 3D-Fenster erkennen, dass diese schön gleichmäßig über die ganze Fläche gestreckt wurde.

image110.jpg

Auch im Spiel kann man die verdreckte Scheibe schon bewundern. Durch Beschuss kann man sogar bereits Einschusslöcher im Glas herbeiführen. Achtet aber darauf, dass nicht jede Glas-Textur für den Spieler auf beiden Seiten sichtbar sind. Einige sind nur auf der belegten Seite zu sehen.

image111.jpg

Die Unzerstörbarkeit kann nützlich sein, wenn der Spieler durch dieses Fenster nicht in einen bestimmten anderen Bereich der Map gelangen soll. Dann ist die unzerstörbare Variante die bessere Wahl. Wir wollen allerdings unser Glas zum Zersplittern bringen, damit wir wieder in den 2. Raum kommen können. Da das Glas somit wieder eine Funktion (Zersplitterung) ausführen soll, müssen wir den Brush zu einem Entity machen. Markiert dazu den Brush, macht einen Rechtsklick mit der Maus und wählt den Punkt "Tie to Entity" aus. Im nachfolgend erscheinenden Fenster, wählen wir den Entity-Typ "func_breakable_surf" aus.

image112.jpg

Alternativ könnt Ihr auch ein "func_breakable" verwenden. Die beiden Entities unterscheiden sich nur darin, dass sie unterschiedlich "detailliert" zerbrechen. Das func_breakable zerbricht sofort beim ersten Beschuss in alle Bestandteile, wogegen das func_breakable_surf zunächst zahlreiche Sprünge/Risse bekommt und erst nach mehreren Treffern fast vollständig zersplittert.

image113.jpg

Selbstverständlich können noch weitere Einstellungen bei dem Entity vorgenommen werden. So könnt Ihr zum Beispiel bei "Prob Data" festlegen, um was für ein Material es sich handelt, wenn Ihr evtl. alternativ ein Holzbrett zerstören wollt. In unserem Fall sollten wir dort jedoch vorsichtshalber "Glass: Window" aktivieren.

An dieser Stelle vielen Dank an J69L für seine Mithilfe bei diesem Tutorial.