GMU:Immersive Strategien/Inhalte/Bälle

From Medien Wiki

Bälle

Dieses Programm ist in Processing entstanden. Die Farbe, Position, Richtung und Geschwindigkeit der Bälle ist zufällig.

Entwicklung

Ich habe ein Objekt Ball erstellt, in dem eine kreisförmige Ellipse mit zufälliger Farbe gezeichnet wird (zusätzlich könnte noch ein Glanzpunkt und eine Art Schatten kommen). Mit diesem Objekt habe ich dann 15 Bälle in einem Array erstellt.

Im Programm selbst werden dann die Werte von den einzelnen Objekten mit der Random-Funktion in 3 For-Schleifen gesetzt, entsprechend der 3 Teilbereiche (also 5 Bälle auf jeder Ebene).

Die Bälle werden im draw gezeichnet und entsprechend ihrer Position wieder in 3 For-Schleifen geteilt, die dann abfragen, wann der Ball an den Rand stößt, dann wird bei oben und unten die Richtung gewechselt und bei links und rechts die neue Position auf der jeweils anderen Seite gesetzt.

Es fehlt noch, dass die Bälle sich gegenseitig abstoßen. Das wird ganz schön viel Schreibarbeit, wenn ich keine einfache Lösung finde...

Code

Weiterentwicklung

Bälle Bälle schweben

Jetzt sehen die Bälle schon etwas besser aus (sind etwas kleiner geworden), doch in der Bewegung scheinen sie eher oval. Liegt wohl daran, dass ich für die Schattierung mehrere Ellipsen übereinander zeichne und die Framerate vielleicht nicht passt.

Wenn sie an den Rand stoßen, werden sie kurz verformt und dann wieder normal. So sehen sie wirklich aus als würden sie springen. Zusätzlich haben sie noch eine runde Flugbahn mit sinus und cosinus bekommen. (So richtig hab ich selbst nichtmal die Auswirkung der Werte verstanden, hauptsache es funktioniert^^)

Obwohl ich die Position jedes einzelnen Balls in einem Array abspeichere und bei jeden Ball abfrage, ob er mit der Position des anderen übereinstimmt, stoßen sich die Bälle nicht ab! Ich versinke in purer Verzweiflung...

CodeA

Finale

Bälle größer

Ich habs geschafft! Die Bälle stoßen sich voneinander ab.

CodeB