5/18/2009

Perlin Noise Planetarium

Ein kleines Experiment mit Papervision und Perlin Noise.
Um eine kleine Dateigröße zu erzielen kam mir die Idee die Texturen von Planeten in einem fiktiven Sonnensystem mit Actionscript zu erzeugen.
Und was könnte sich dazu besser eignen als Perlin Noise. Das Planetensystem war dann schnell und komfortabel mit Papervision erstellt.
Mit ordentlichen Texturen, also importierten Bildern wär die Datei in etwa 2MB groß geworden! So erzeugt eigentlich nur das Hintergrundbild ein paar KB (ca. 100KB Dateigröße).
Mit der PerlinNoise Methode, einem BlurFilter und einem ColorTransform Filter erzeuge ich 1024 * 512 Pixel große Textur BitmapData’s. Diese benutze ich dann einfach um ein in Papervision übliches BitmapMaterial zu erzeugen, welches dann auf die Sphere, also den Planeten angewendet wird.
Abhängig von der Y-Achse der Mausposition kann man den Winkel der Aufsicht auf das Planetarium bestimmen. Klickt man einen der Planeten an so gibt’s eine Kamerafahrt zu diesem. Wenn man während die Kamerafahrt noch läuft einen anderen Planeten anklickt wird der Kurs entsprechend verändert. Ist die Kamerafahrt beendet und man klickt erneut auf den Planeten, oder daneben zoomt das Planetarium wieder zurück zur Ausgangsposition. Mit dem Mousewheel kann die Zoomstufe frei eingestellt werden wenn kein Planet im Fokus ist.

Achtung. Nachdem die Anwendung gestartet worden ist kann es ein paar Sekunden dauern bis die Texturen erzeugt sind und die Planeten sichtbar werden.
Flash Player 9 oder neuer vorausgesetzt.

Keine Kommentare: