Programmieren leicht gemacht - adäquate Modelle für den Einsatz im Unterricht/ Die erste eigene Animation

Aus Wikibooks
Zur Navigation springen Zur Suche springen

Die erste eigene Animation - Drippeln mit einem Ball[Bearbeiten]

Auswahl des Hintergrunds[Bearbeiten]

Hier soll nun das erstmalige Anfertigen eigenständiger einfacher 3D-Animationen vorgestellt werden, welche beliebig erweiterbar sind. Zu Beginn muss nun ein entsprechender Hintergrund für das eigene Szenario erstellt werden. Dafür stehen in der Registerkarte "Templates" einige Landschaften zur Auswahl. In unserem ersten Beispiel wählen wir die Landschaft "sand":


Alice1 small.png

Hinzufügen von Objekten[Bearbeiten]

Im Folgenden wollen wir nun ein ganz einfaches Szenario entwerfen, in welchem eine Person mit einem Ball auf dem Boden drippelt. Dafür müssen wir aber zuerst die dafür notwendigen Objekte in das leere Szenario einfügen. Dies kann durch Klicken auf den grünen Button im Kamerafenster realisiert werden. Es stehen dabei standardmäßig unzählige Objekte unterschiedlicher Kategorien und Genres zur Verfügung. Wir klicken nun auf das Objekt "Skatergirl", welches sich in der Kategorie "People" befindet. Durch Klicken auf den Button "Add Instance to the world" kann das ausgewählte Objekt in das eigen Szenario eingefügt werden. Auf diese Weise können beliebig viele Objekte an unterschiedlichen Positionen in das eigene Szenario eingefügt werden:



Skatergirl.png

Mit Hilfe der Pfeiltasten am unteren Rand des Kamerafensters kann der Kamera-Blickwinkel dementsprechend geändert werden. Wählt man die Option "quad view", so wird das Objekt zusätzlich zu der Standardansicht noch von rechts, von oben und von vorne angezeigt. Die Buttons auf der rechten Seite des Kamerfensters ermöglichen das Drehen, Duplizieren, Bewegen, Rotieren,... des ausgewählten Objekts. Um unser Szenario fertig zu stellen, fügen wir nun noch einen Volleyball ein, welcher sich in der Kategorie "Sports" befindet. Sind alle gewünschten Objekte eingefügt, so wird dies durch den Button "Done" symbolisiert.

Der Objekt-Verzeichnisbaum[Bearbeiten]

Alle im Szenario enthaltenen Objekte werden nun im linken Verzeichnis aufgelistet. Bei einigen Objekten kann auch auf einzelne Teile des Objekts zugegriffen werden. Dies wird durch ein + vor dem Namen des Objekts symbolisiert. In unserem Szenario können wir bei dem Objekt "Skatergirl" auf einzelne Körperteile getrennt voneinander zugreifen (z.B. linker Arm, rechter Fuß, Oberkörper,...). Klickt man nun im Verzeichnisbaum auf ein Objekt, so werden im linken unteren Bereich alle für dieses Objekt standardmäßig zur Verfügung stehenden Methoden aufgelistet:


ObjektTree.png


Hinzufügen eigener Methoden[Bearbeiten]

Selbstverständlich können nun auch beliebige eigene Methoden implementiert werden.

Da noch keine vorgefertigte Methode existiert, die für das Drippeln des Balles verantwortlich ist, müssen wir eine derartige Methode schreiben. Dafür klicken wir zuerst auf das Objekt "volleyball", da die gewünschte Bewegung von diesem Objekt ausgeführt werden soll. Nun klicken wir im linken unteren Bereich auf "create new method", um eine neue Methode zu implementieren, die das Auf- bzw. Abprallen des Balles am Boden realisieren soll. Diese nennen wir "drippeln":


MethodenName.png

Neue Variablen können mittels "create new variable" zu der aktuellen Methode hinzugefügt werden. Dabei kann die Zuweisung eines Datentyps bzw. die Initialisierung mittels einer sich öffnenden Dialogbox vorgenommen werden:


VariableAnlegen.png

Auf diese Art soll nun die Variable entfernungZumBoden und die Konstante SPRUNGFAKTOR angelegt werden:


Variablen.png

Im unteren Bereich des Editorfensters befinden sich Schaltflächen, mit denen ganz einfach die elementarsten Schleifen bzw. Verzweigungen eingefügt werden können:


Verzweigungen klein.png

Wir fügen nun erstmals ein "Do in order" ein und setzen die Variable "entfernungZumBoden" auf den momentanen Abstand vom Ball zum Boden. Diese Entfernung erhalten wir aus dem Register "functions". Der Hauptunterschied zwischen "functions" und "methods" liegt im Rückgabewert. Während Methoden keine Werte zurückliefern, muss bei Funktionen immer ein Rückgabewert (mittels return) angegeben werden.

Die gewünschten Variablen bzw. Kontrollstrukturen können mittels Drag-and-Drop eingefügt werden:


DoInOrder klein.png

Um das gewünschte Verhalten des Balles zu gewährleisten, muss nun noch Folgendes hinzugefügt werden:


While3.png


MethodeDrippeln3.png


Nun möchten wir noch eine Interaktion zwischen dem Objekt "Skatergirl" und unserem Volleyball herstellen, sodass schlussendlich eine realistische Animation resultiert. Dafür müssen wir nun das Objekt "World" anklicken und dort eine neue Methode hinzufügen, die wir mit "maedchenSpieleBall" bezeichnen. Diese Methode soll realisieren, dass der Ball anfangs von dem Mädchen zwischen den Händen gehalten wird und dann fallen gelassen wird:


UpperBody.png

Die fertige Methode sieht nun folgendermaßen aus:


MaedchenSpieleBall.png

Die Methode world.my first method[Bearbeiten]

Da die Methode world.my first method die Rolle der main-Methode übernimmt, d.h. diese wird aufgerufen, sobald die Animation gestartet wird, müssen wir in dieser Methode noch die notwendigen Informationen hinzufügen:


StarteWorld.png

Selbstverständlich können auch noch einige Events hinzugefügt werden, mit Hilfe derer eine Interaktion mit dem Benutzer ermöglicht wird. Diese sollen aber erst in den nächsten Beispielen erläutert werden.

Abspielen einer Animation[Bearbeiten]

Nun müssen wir unsere Objekte nur mehr zum Leben erwecken: Die zusammengestellte Animation kann durch Klicken des Play-Buttons betrachtet werden:


StarteWorld2.png

Daraufhin öffnet sich ein Fenster, in welchem die gewünschte Animation abläuft. Mit einem Schieberegler kann auch die Geschwindigkeit dementsprechend angepasst werden. Mittels "restart" kann die Animation noch einmal von Beginn angesehen werden:


Animation.png