# Schornstein: Rauch simulieren/animieren ?



## mynick (3. Okt 2005)

Hallo,

ich hab in meinem Spiel ein Schornstein ( *.gif ) eingebaut, der noch etwas langweilig aussieht und würde gerne Rauch simulieren, der aus dem Schornstein steigt, hat einer ne Idee wie man sowas machen kann, oder Code-Schnipsel wo ich sowas finde ?!

Danke im voraus....


----------



## m@nu (3. Okt 2005)

da fällt mir spontan "partikelsystem" 'zu ein... frag mich aber nicht wie man sowas am besten implementiert arrow: google)

ne andere variante wäre natürlich auch, di entsprechenden animationsphasen als frames zu erstellen und dann abzuspielen...


----------



## 0xdeadbeef (3. Okt 2005)

Würde auch ein Partikelsystem vorschlagen.

Eventuell reicht ein einziger halbtransparenter (Alpha 50% oder so) Rauch-"Blob" als Grafik pro Partikel. Unter Umständen sieht's aber besser aus, wenn man ein paar Grafiken hat, die man abwechselt.

Weil der Rauch aufsteigen soll, muß man eine Art negative Gravitation einbauen: also jeder Partikel bewegt sich pro Animationsschritt N um N*Konstante nach oben. Bei der Erzeugung der Partikel per Zufallszahlengenerator leicht abweichende Geschwindigkeitskomponenten (X/Y) bestimmen, wobei man beide Komponenten so beschränken sollte, daß die Partikel nach oben mit einem Öffnugswinkel von 60° oder so ausgestoßen werden.

Als letzter Schliff wäre eventuell noch eine leichte Windkomponente nett, die in horzizontaler Richtung wirkt.

Dann noch eine leicht unterschiedliche Lebensdauer für jeden Partikel (Zufallszahl) und das sollte alles in allem schon recht gut aussehen.


----------



## mynick (4. Okt 2005)

Danke erstmal für die Antworten, ich denke ich mache es so. Ich würde nur gerne wissen ob einer eine gute quelle kennt, wo erklärt wird, wie man sowas macht.


----------



## Guest (6. Okt 2005)

Das wurde doch gerade halbwegs erklärt.
Ich würde einfach ein PointArray nehmen mit den jeweiligen Coords der Partikel.
Die lässt du dann in ner Schleife durchlaufen und veränderst dann jeweils durch diverse Modifikatoren die Coordinaten,
oder löschst sie ganz aus dem Array.
Ein Vector wäre dafür eigentlich noch besser.


----------



## MPW (19. Nov 2005)

Ja, oder ein Klassensystem, das ist leichter zu handhaben.^^


----------



## Bleiglanz (20. Nov 2005)

http://www.gifanimations.com/ oder eine anderen tausend Seiten mit animierten gifs

wenn du ein ausreichend gutes Graphikprogramm hast, könntest du sowas wahrscheinlich auch schnell selber machen, glaube nicht dass du dich mit Partikelsystemen herumschlagen willst, nur weil du mit einer kleinen gif dein Programm aufpeppen willst


----------

