Community-Tutorials (Source)

info_particle_system

Willkommen zu meinen ersten Mapping-Tutorial.

Seit dem letzen großen Update des Software Developer Kits (SDK) sind neue Entities für die Source Engine hinzugekommen.

Eines der neuen Entities nennt sich info_particle_system, neben einen sehr lustigen Symbol,welches meiner Meinung nach aussieht wie ein Sattelit, bringt es aber auch sehr viele nützliche Funktionen mit sich.
Jeder von euch der Half-Life 2 Episode 2 gespielt hat, hat auch automatisch die tollen Partikel-Effekte kennengelernt, viele kann man mit dem Entity erstellen.

In meinem Tutorial stelle ich euch erstmals vor wie man eine Zitadellenschockwelle mit nur wenigen Klicks erstellt. Des Weiteren findet ihr den Regeneffekt in der Testmap mit einer noch akzeptablen Leistung von 30fps. Im übrigen kann man nicht einfach Einstellen welche Größe man haben will, das ist von Valve festgelegt, der Regen hat z.B. die Maße 1024x1024.
Aber nun ans Eingemachte.

Schritt 1: Brushwork
Als erstes braucht man erst einmal eine solide Map mit einen halbwegs brauchbarem Brushwork. Am besten ihr nehmt wie ich fürs Erste ausschließlich Developertexturen.

citi001.jpg

ps. Für den Boden habe ich die cobble-stone-Textur verwendet da diese auch in der Partikeldemo von Valve Verwendung fand und sehr gut zum Regen passt aufgrund ihrer integrierten Pfützen.

Schritt 2: Entities setzen
Neben den Standart-Entities (info_player_start,item_suit,env_tonemapcontroller,env_cubemap's,light_environment) müsst ihr natürlich das Entity "info_particle_system" mindestens einmal setzen. Der Regen z.B. ist nur ein Entity aber ein Portalsturm ist da schon etwas komplexer.

citi002.jpg

Um den Effekt einzustellen klickt ihr auf die Eigenschaften des Entitys und tragt bei "Particle System Name" den Namen der Partikelart ein die ihr haben wollt.
z.B. rain_01 für den Regen (1024,960(1024))
Die zweite Klammer beinhaltet den Effekt der Sprühregenwolke. 960 beträgt die Höhe in welcher die Pfützen exakt auf den Boden aufliegen.

citi003.jpg

Die nicht vollständige Liste an Partikeleffekten findet ihr hier:
http://developer.valvesoftware.com/wiki/Half-Life_2:_Episode_Two_Particle_Effect_List

Schritt 3: Scripten

Ihr könnt entscheiden ob der Effekt von Anfang an eure Map zieren soll oder erst nach einen bestimmten Ereignis eintreten soll, mit triggern kommt ihr da weiter. (In meiner map verwende ich ausschließlich einen trigger_once um alle Aktionen zu steuern)

citi004.jpg

Über das In- und Outputsystem könnt ihr eine ganze Menge regeln, u.a. auch die Größe (mit "set scale").

citi005.jpg

Ihr könnt auch über einen logic_auto im Output: "on map spawn" "particle_system-Name" "set scale xxx" setzen. Die Werte müssen die Mapkoordinaten beinhalten, am besten ihr zieht einen Brush für die Größe die der Particle-Effect haben soll und übernehmt dann die Koordinaten hinter set scale.

Ihr könnt auch recht simpel mit env_speakern und anderen Sound Entities den Partikeleffekt einen effektvollen Klang zuordnen.

Die Testmap könnt ihr gerne für eure eigenen Zwecke verwenden.

Für Fragen und Anmerkungen stehe ich gerne zur Verfügung.

citi006.jpg

Eine Beispielmap ist unten angehängt.

ps. Der Metrocop auf meinen Screenshot ist aus dem Facepunch-Forum wo es zum freien Download zur Verfügung stand.