Ein Feuerwerk in Unity erstellen

in #games5 years ago


Mit dem Visual Effect Graph lässt sich in Unity sehr gut ein Feuerwerk erstellen. In diesem Artikel zeige ich dir, wie das funktioniert.


Feuerwerk mit dem Visual Effect Graph

Um in Unity ein Feuerwerk zu erstellen, suche unter den Package Manager Visual Effect Graph und installiere diesen.

Visual Effect Graph

Gehe jetzt in dein Projekt und erstelle im Projektfenster über Create-->Visual Effects--> Visual Effect Graph.

Visual Effect Graph erstellen0

Benenne die Datei als Fireworks oder Feuerwerk.

Feuerwerk

Ziehe die Datei in die Szene:

Effekt in der Szene

Sollte nur die Lampe zu sehen sein, gehe mit einem Doppelklick auf die erstellte Datei und klicke in dem Menü oben rechts auf "Show in Project". Dann wird der Partikeleffekt angezeigt.

Feuerwerk Bearbeitungsmenü

Gehe jetzt in der Menüleiste zu Edit-->Preferences

Visual Effects in Preferences

Wir benötigen Experimental Operators/Blocks:

Optionen Visual Effects

Doppelklicke im Projektfenster auf Fireworks und es öffnet sich ein weiteres Fenster:

Doppelklick auf Fireworks

Die Einstellungen im Menü:

Menü für Effekt

Constant Spawn Rate: Effekte, die pro Minute erscheinen. Setze diese auf 1.

Velocity steht für die Geschwindigkeit, die ein Partikel benötigt, um von Punkt A zu Punkt B zu kommen. Setze die X-Werte auf 11 und 14.

Set Lifetime Random: Gibt die Lebenszeit eines Partikels an, wenn er in den Himmel fliegt. Setze diese auf 1.2

Update Particle: Optionen können hinzugefügt werden. Für das Feuerwerk ist beispielsweise Gravitation notwendig. Füge mit diesem Fenster die Gravitation hinzu. Dann fallen die Partikel hinunter, nachdem sie abgeschossen wurden.

Position (Line): Steht für die Stellen, von denen die Partikel aus abgeschossen werden. Füge dieses Update hinzu und gebe als x-Wert 7 ein. Dann erscheinen alle Partikel entlang dieses Wertes auf der x-Achse.

Update Particle Line und Position

Gibst du andere Werte bei Start und Ende ein, starten die Partikel zum Beispiel in einer Linie.

Output Particle Quad

Achte darauf, dass die x-Achse auf der linken Seite in Unity positioniert ist, damit du deinen Effekt aus der richtigen Perspektive siehst.

Der Blend Mode wird von Alpha auf Additive gestellt.

Als nächstes wird der Bereich Main Texture bzw. die Textur geändert. Suche dafür die Default Particles heraus.

Mit Entf. nimmst du "Seit Size over Life" weg, da die Partikel während ihrer Lebenszeit nicht vergrößern sollen.

Wähle dafür Set Size aus und stelle diese auf 0.05 um.

Output Particle Quad0

Nimm Set Color over Life ebenfalls mit Entfernen weg.

Wähle Set Color aus. Wähle eine Farbe aus und steigere die Intensität mit dem Schieberegler. Setze sie beispielsweise auf 7. Dies sorgt dafür, dass die Partikel leuchten.

Farbeinstellungen

Wenn die Partikel nicht leuchten, benötigst du zusätzlich den Post Process Volume Effekt. Diesen setzt du im Inspektorfenster auf Bloom.

Bloom Effect

Das Hinzufügen der Raketen

Benenne mit der oben mit der rechten Maustaste im Feuerwerksfenster dein System in z. B. Rockets.

Umbenanntes System

Als nächstes werden die Explosionen erstellt:

Betätige die Leertaste im Update Part und such nach dem Trigger Event. Wähle Trigger Event On Die. Du wählst in diesem Fall die Partikel aus, die in der Explosion erscheinen. Stelle 80 ein.

Trigger Event on Die

Klicke auf den Kreis rechts und erstellte ein GPU Event. Du erstellst ein weiteres Partikelsystem. Suche Initialize Particle. Gehe von dort, indem du auf Particle klickst, in den Update-Bereich. Kopiere das Output Particle Quad mit Strg+C und Strg+V und ziehe es zu den Update Particles. Damit erschaffst du ein weiteres Partikelsystem.

Zweites Partikelsystem

Suche Im Bereich von Initialize Particle nach "Set Lifetime" und stelle die gewünschten Werte ein, wie z. B. 1.5 und 7. Denn erscheinen unten rechts in der Ecke Partikel. Es fehlen die Feineinstellungen für diese Partikel. Die Partikel sollen an der Position der alten Partikel erscheinen. Deswegen müssen die Positionen festgelegt werden, an denen sie entstehen. Suche nach Inherte Source Position (Set). Dann erscheinen die Partikel anstelle der alten Partikel.

Inherit Source Position

Das Initialize Particle System benötigt einen höheren Wert, da nicht genügen Partikel erscheinen. Setze den Wert auf 1000. Deswegen wird der Velocity-Wert gesteigert. Füge Velocity in Random Direction hinzu. Setze es auf Random. Stelle Beispiel weise 5 und 6 sein. Jetzt hast du Explosionen. Die Geschwindigkeit ist etwas zu schnell. Füge Linear Drag hinzu, da die Partikel in der realen Welt nach der Explosion langsamer werden. Setze den Drag Coefficient auf 3. Jetzt benötigen wir Gravitation, damit die Partikel langsam nach unten fallen. Setze den y-Wert auf -1.

Partikel für Feuerwerk

Jetzt soll die Größe der Partikel geändert werden. Wir entfernen die Punkt Set Size und suchen stattdessen Set Size Random. Stelle beispielsweise 0.33 bis 0.37 ein. Sie sollen andere Farben haben. Jetzt entferne Set Color und wähle Set Color over life. Hier stellst du den HDR Gradient Editor ein. Der obere Teil zeigt die Transparenz und der untere Teil die Farben.

Gradient Editor

Am Anfang sollen die Farben 100% undurchsichtig sein, weshalb du die erste Transparenzeinstellung ganz nach vorne versetzt. Der erste schwarze Punkt wird dafür gelöscht und der Zweite nach vorne versetzt. Der Alphawert steht auf 255. Für den unteren Teil wähle die Farbe blau. Damit es leuchtet füge bei der Intensität 5.2 hinzu. Wähle die untere hintere Farbe aus, z. B. ein helles lila. Erhöhe die Intentsität z. B. auf 5.5

Den oberen hinteren (weißen Wert) setze witer nach vorne. Setze es Beispielsweise auf 63%. Senke die Intensität auf 5. Ziehe im HDR Gradient Editor den unteren Wert etwas nach rechts und klicke, um einen weiteren Punkt zu erstellen. Setze die Intensität des Wertes auf 7.5

Ziehe den zweiten unteren Wert näher oder weiter weg. Dadurch beeinflusst du die Dauer des Blitzes, der bei der Explosion erscheint. Ziehst du den Wert weiter nach vorne, entsteht eine kurze, schnelle Explosion.

Benenne das System als Explosion.

Explosion

Füge im ersten Bereich für Raketen im Updatebereich Trigger Event Always hinzu. Setze die Anzahl auf 2. Dadurch werden immer 2 Raketen nach oben geschossen. Wähle das GPU Event. Füge Initialize Particle hinzu. Füge Update Particle hinzu. Kopiere den Output-Part vom ersten System.

Im Initialize Particle-Part steigere die Kapazität auf 1000. Füge Set Lifetime hinzu. Stelle 0.3 ein.

Füge die Inherit Source Position hinzu. Füge jetzt Velocity (Random Direction) hinzu. Setze die Geschwindigkeit auf 0.2

Füge Set Scale im Output-Bereich hinzu. Stelle y auf 3. Dies zieht die Partikel beim Hochziehen lang. Entferne Set Color und füge Color over Life hinzu. Entferne den mittleren im Gradiant Menü oberen Punkt. Setze den Wert von 255 auf 0. Wähle als Farbe ein schönes Orange. Stelle die Intensität auf 3.5. Den hinteren unteren Punkt setze auf ein etwas Orange, dass nicht so stark leuchtet. Benenne das System als Rocket Trail.

Rocket Trail

Gehe zuletzt in den Explosionsbereich. Suche nach Trigger Event Rate im Update Part. Setze dies auf beispielsweise 40 Partikel in der Sekunde. Erstelle ein Event mit dem grünen Kreis. Kopiere für das GPU Event das Rakenteystem (ab Initialize Part). Bewege es hinüber und verbinde es. Entferne "Set Scale". Steigere die Kapazität auf 10.000. Steigere die Lebenszeit auf 0.5

Ändere die Farbe etwas mehr ins Rötliche.

Du kannst den Spawnbereich beispielsweise steigern (auf 100 Raketen pro Sekunde).

Zweites Trigger Event

 

 



Posted from my blog with SteemPress : https://games-und-lyrik.de/ein-feuerwerk-in-unity-erstellen/
Sort:  

do you have any works in Google Play?
Or mayby you have Github?

Coin Marketplace

STEEM 0.18
TRX 0.15
JST 0.029
BTC 62639.70
ETH 2439.41
USDT 1.00
SBD 2.64