Wie kann ich meinen Regeneffekt mehr wie Regen und weniger wie Schneefall aussehen lassen?

7

Ich mache ein Spiel in diesem Spiel, ich möchte einen Regeneffekt. Ich bin gerade ein bisschen weit davon entfernt. Ich erstelle den Regeneffekt wie folgt:

particleSystem.addParticleInitializer(new ColorInitializer(1, 1, 1));
particleSystem.addParticleInitializer(new AlphaInitializer(0));
particleSystem.setBlendFunction(GL10.GL_SRC_ALPHA, GL10.GL_ONE);
particleSystem.addParticleInitializer(new VelocityInitializer(2, 2, 20, 10));
particleSystem.addParticleInitializer(new RotationInitializer(0.0f, 30.0f));

particleSystem.addParticleModifier(new ScaleModifier(1.0f, 2.0f, 0, 150));
particleSystem.addParticleModifier(new ColorModifier(1, 1, 1, 1f, 1, 1, 1, 3));
particleSystem.addParticleModifier(new ColorModifier(1, 1, 1f, 1, 1, 1, 1, 6));
particleSystem.addParticleModifier(new AlphaModifier(0, 1, 0, 3));
particleSystem.addParticleModifier(new AlphaModifier(1, 0, 1, 125));
particleSystem.addParticleModifier(new ExpireModifier(50, 50));

scene.attachChild(particleSystem);

Aber es sieht aus wie Schneefall! Welche Änderungen kann ich vornehmen, damit es eher wie Regen aussieht?

BEARBEITEN Hier ist ein Screenshot:

Geben Sie hier die Bildbeschreibung ein

Nikhil Lamba
quelle
3
Leider kann ich diese Codezeilen nicht in ein Bild in meinem Kopf zerlegen;). Wenn Sie uns ein Bild oder Video zeigen können, können wir Ihnen sicher einige Tipps geben.
Roy T.
Es ist nur ein leerer Bildschirm und es zeigt Partikel wie Schnee. Ich möchte nur Partikel wie Regeneffekt @RoyT.
Nikhil Lamba
1
@NikhilLamba Lade es auf imgur hoch und verlinke es dann. Siehe dieInformationen zum Erstellen von Links finden Formatierungshilfe . Sie können Ihren Posts noch keine Bilder hinzufügen, da Sie dieses Privileg noch nicht freigeschaltet haben. Klicken Sie zunächst auf einen Link.
Doppelgreener
3
Sie sollten versuchen, die Regen-Sprites blauer und länger zu machen. Verwenden Sie dies ( Ridingwiththeriver.files.wordpress.com/2010/09/… ) als Referenzbild.
Roy T.
1
+1 Nikhil, eine schöne Verbesserung gegenüber deiner letzten Frage.
MichaelHouse

Antworten:

13

Grundsätzlich sieht es aus wie Schnee, weil die Partikel rund sind und in keiner Weise Bewegung vermitteln. Regentropfen werden typischerweise als längliche Tröpfchen angesehen, selbst bis zu dem Punkt, an dem sie eher Linien als Partikel sind. Stellen Sie sich eine Szene vor, in der Sie aus einem Fenster auf einen Regensturm schauen: Sie sehen keine einzelnen Tropfen in der Luft, sondern den Streifen des Weges, dem sie folgen.

Sie könnten versuchen, die Partikel entlang einer Achse auszudehnen, aber ich denke, Sie werden mit solchen Partikeln keinen regenähnlichen Effekt erzielen können.

MrCranky
quelle
Hier ist ein Beispiel für einen solchen Regeneffekt in einem 2D-Spiel: youtube.com/… Obwohl ich zugeben muss, dass es in meinem Gedächtnis besser aussah. :-)
Eric
1
Hier ist ein Beispiel für Regen: youtube.com/watch?v=e9GOB6DSMZs
Pubby
@ MrCranky: Vielen Dank für Ihre Antwort, wie Sie sagten "aber ich denke, Sie werden mit Partikeln wie diesen keinen regenähnlichen Effekt erzielen können", wie können wir dann tun?
Nikhil Lamba
@ Eric: Danke für youtube Link :)
Nikhil Lamba
@ Pubby: Danke für Link :)
Nikhil Lamba
4

Abgesehen von dem, was MrCranky gesagt hat, hat Regen nicht wirklich eine Farbe, sondern deformiert nur die Welt um ihn herum. Um genauen Regen zu erhalten, müssen Sie wirklich Shader verwenden. Das heißt, Sie können es mit langen Streifen (wie MrCranky) fälschen, die alle im Einklang miteinander stehen

CobaltHex
quelle
Vielen Dank für Ihre Antwort, aber wie Sie sagten "das sind alle im Einklang miteinander", wie ich ein Sprite als Regenpartilce benutze, wie kann ich Line Attach miteinander verwenden
Nikhil Lamba
Nun,
3

Schnee "Flattert wie eine Feder" und Regen "fällt mit einem Flop"

Eine einfache Lösung kann einfach darin bestehen, die Schwerkraft zu erhöhen, damit Regentropfen schneller fallen und weniger "schneeähnlich".

Die Herstellung von Schnee gegen Regen weist die folgenden Eigenschaften auf

  • Schnee ist im Grunde eine feste runde Sache, die sich nicht verformt
  • Schnee hat Luftwiderstand / Luftwiderstand, so dass er langsam und elegant mit einer relativ geringen Höchstgeschwindigkeit fällt
  • Schnee wird leicht durch Luftturbulenzen (z. B. einen Windfaktor) und Zick-Zack-Bewegungen beim Abstieg beeinflusst ... und das Ereignis steigt für das realistische Gefühl einer vorbeiziehenden Brise

Regen ist so ziemlich das Gegenteil des obigen Schnees

  • Regen verformt sich beim Fallen
    • Die einfachste visuelle Änderung besteht darin, das Regentropfen-Sprite basierend auf der Geschwindigkeit des Regentropfens zu dehnen
    • Dies vermittelt den Eindruck von Bewegung und Geschwindigkeit
  • Regen wird weniger durch Wind- oder Luftwiderstand beeinflusst
    • Ein starker Wind-Affektor kann den Abstiegspfad nur leicht anstoßen (und es lohnt sich wirklich nur, dies zu berücksichtigen, wenn mehr Realismus das Ziel ist).

Damit ...

  • Verwenden Sie, wie die anderen vorschlagen, ein Sprite-Blatt, um die fallenden Tropfen zu animieren
    • Sprite Sheet von Ereignis zwei Sub-Sprites ist nützlich ... Beispiel: "drop" und "splash"
  • Dehnen Sie die Textur, um Bewegung zu geben
    • relativ zu einem minimalen / maximalen Geschwindigkeitsbereich skaliert (z. B. 0..1 normalisieren und "Tropfen" entsprechend skalieren, wenn Sie die Textur malen)
  • stärkere Schwerkraft
    • möglicherweise "wesentlich" mehr als die normale Schwerkraft Ihrer Umgebung, damit Regen ein gutes "Look and Feel" hat.
DevByStarlight
quelle
1

Sie werden nur so weit kommen können, wenn Sie nur die Grafik ändern. Ich persönlich würde mit langen blauen Rechtecken beginnen und sie von dort aus stilisieren. Schau dir an, wie Minecraft Regentropfen macht.

Was sich wirklich wie Regen anfühlt, ist das Geräusch, das Sie verwenden. Finden Sie irgendwo im Internet eine kostenlose Regen-Umgebungsspur und schleifen Sie sie. Solange es genügend Partikel gibt und diese sich schnell genug nach unten bewegen, wird Ihr Geist die Verbindung zum Regen herstellen.

Robert Rouhani
quelle