2010-06-22 9 views
5

Was ist das Prinzip hinter dem Erzeugen von Regeneffekt oder Wassertropfen, ungeachtet der Verwendung einer bestimmten Sprache? Ich habe ein paar beeindruckende Regen- und Wassereffekte in Flash gesehen, aber wie funktioniert es eigentlich?Algorithmus zur Erzeugung von Regeneffekt/Wassertropfen?

Rain Effect Example

Rain Drop Water Effect Example

+0

Sie sollten definieren, was ein eindrucksvoller Regen- und Wassereffekt für Sie ist (es können so viele verschiedene Dinge sein). Post Links zu Beispielen, wenn Sie sie haben. – Unreason

+0

@unreason: Überprüfen Sie die Links, die ich oben gepostet habe. –

+0

:) wie ich dachte - die beiden Beispiele haben sehr wenig gemeinsam ... nun, ich gebe eine Antwort – Unreason

Antwort

2

Sie eine Frage wie die Frage, ob die beiden Beispiele wurden verwendet, aber Sie haben tatsächlich

1) Tropfen regen simuliert und in der Luft (Drop-Trails, einfache, aber der Realismus hängt von Beleuchtung sehr viel) gesehen folgende Ereignisse

für das Sie zu simulieren:

for each time step: 
    create new drops 
    move existing drops vertically down 
    remove (or/and animate) the drops hitting the ground 

Wie in anderen Antworten gezeigt, können neue Tropfen (Größe und Position) mit verschiedenen Algorithmen erzeugt werden. Geschwindigkeit bewegen sie sich mit konstanter Geschwindigkeit. endlich Ihre Routen zeigen Ihnen auf einfache projections

2) simuliert Splash Wellen (Wassersimulation, und in dem Beispiel eine reflektierende Oberfläche gezeigt wird suchen müssen)

Dazu benötigen Sie nur dann, wenn die Tropfen wissen fallen und wie groß sie sind, der Rest ist Wellenausbreitung. Das ist jedoch nur dann wirklich sichtbar, wenn es eine Reflexion gibt und das kann ein bisschen knifflig sein.

NOTES: Es gibt viele Dinge, die den Realismus bestimmen, aber meistens läuft es auf Details hinaus. Zum Beispiel wird Regen normalerweise nur bei seltsamen Lichtverhältnissen deutlich wahrgenommen - in der Nähe von Lampen oder auf kontrastreichem Hintergrund. Sonst ist es ziemlich düster.

Auch die Details in Interaktion - Planschen auf Oberflächen, die es trifft, die Blasen hinterlassen können (wenn nahe genug, um zu bemerken), oder Wellen erzeugen.

Ein anderes Beispiel - wenn man sich dieses tutorial anschaut, das nicht wirklich realistisch ist, aber einen Punkt zeigt, sieht man, dass der Regen zwar mehr wie Schnee aussieht, aber die "Flachheit" des ersten Beispiels zeigt (Das hat absolut keine Tiefe).

Es geht also um Details.

Versuchen Sie zu modellieren, was Sie haben in Bezug auf Ereignisse, die Sie simulieren müssen und dann lösen Simulation einzeln - zum Beispiel mit Fraktalen für Seeding Regen könnte ein Overkill sein, aber wenn Sie Ihre Arbeit schön modellieren Sie beginnen mit Zufall Seeding und letzterer ersetzen mit genaueren/komplexeren Methoden.

1

Sie wahrscheinlich particle effects meist verwenden.

+1

ein Partikelsystem wäre in dieser Situation übertrieben, vor allem, wenn Sie ein großes sichtbares Feld von Regen wollte. es gibt viel einfachere Lösungen, wie unten vorgeschlagen. – tenpn

3

Hier ist ein paper von Mandelbrot und Lovejoy, die eine der am meisten zitierten Arbeiten zur Entwicklung von Fraktal-Modellen, um Regen darzustellen.

+0

Kann den Link nicht zur Arbeit bekommen :(Etwas über einen Session-Cookie sagen :) – cwap

+0

Sollte jetzt behoben werden. – Jory

+1

Seite nicht gefunden :( – Mark

1

Eine alte Schule, die spottbillig ist, ist Paletten Radfahren zu verwenden. Grundsätzlich richten Sie eine Farbrampe ein und verschieben in festen Intervallen eine Farbe in die nächste. Die bewegten Farben geben die Illusion von Bewegung. Ich habe an Spielen gearbeitet, bei denen Regen, Wind, Schnee, Wasserfälle, Feuer usw. mit Palettenradfahren animiert wurden. Es ist eine sterbende Kunst, aber es funktioniert immer noch. :)

1

Der zweite (Regen-Tropfen Wasser-Effekt Beispiel) wird wahrscheinlich mit einem wave equation Simulator getan

Verwandte Themen