Spiele programmieren (XL)

center

Ohne mehrfarbige und animierte Figuren ist die Spieleprogrammierung undenkbar. Jetzt zeigen wir, wie's fleht.
In früheren Folgen haben wir schon mehrmals die Player Missile-Grafik des Atari benutzt, um ein Spiel mit leicht zu bewegenden Figuren auszustatten. Jedoch wurden zumeist nur einfarbige und nicht animierte Player verwendet. Ein guter Spieldesigner hätte dafür höchstens ein müdes Lächeln übrig.
Heutzutage sind mehrfarbige und in vielen Phasen animierte Figuren gefragt. Sie lassen sich allerdings nicht mehr ganz so einfach erzeugen. Hier muß man schon etwas tiefer in die Trickkiste des Atari greifen. Besonders nützlich wäre ein Hilfsprogramm, mit dessen Hilfe man die Player am Bildschirm zeichnen und animieren kann. Diese Dienste leistet der "Multiplayer-Animator" ("MPA"), ein Programm zum Editieren von mehrfarbigen PM-Grafiken. Mit ihm wurden übrigens auch die Figuren in "Schreckenstein" erstellt und per Animation zum Leben erweckt.

Ein Novum ist jedoch, daß wir das Programm diesmal nicht abdrucken können, da es mit einer Länge von ca. 100 Diskettensektoren viel zu viel Platz beanspruchen würde. Um es Ihnen trotzdem nicht vorzuenthalten, haben wir es auf die Leserdiskette LF 86/87 gepackt. Damit sich die Sache lohnt, finden Sie dort auch gleich einige Animationsbeispiele.

Grundlagen

Beginnen wir mit einigen grundlegenden Dingen. Zunächst stellt sich die Frage, wie man überhaupt mehrfarbige Player erzeugen kann. Das ist ganz einfach; man nimmt zwei Figuren und legt sie direkt übereinander. Verwendet man dazu die Player 0 und 1 oder 2 und 3 und setzt Bit 5 in GPRIOR ($26F), so stehen pro Figurenpaar sogar vier Farben zur Verfügung. Die Farbe eines Pixels wird somit durch zwei Bit (je eines pro Player) bestimmt. Es ergeben sich folgende Möglichkeiten:

0 0: Hintergrund scheint durch
0 1: Farbregister erster Player
1 0: Farbregister zweiter Player
1 1: beide Farbregister ODER verknüpft

Die Farbwahl ist demnach nicht so uneingeschränkt wie bei hochauflösender Grafik. Bei der (1,1)-Verbindung werden die Inhalte der beiden Farbregister einer ODER-Verknüpfung unterworfen. Man muß daher beim Auswählen der zwei Player-Farben sorgsam darauf achten, daß deren Kombination eine sinnvolle dritte Farbe ergibt. Damit können Sie im Programm "Multiplayer-Animator" beliebig experimentieren.
Der zweite wichtige Punkt ist die Animation. Das funktioniert wie bei einem Trickfilm. Zuerst wird die Figur in mehreren Phasen einer Bewegung gezeichnet, die möglichst gut ineinander übergehen sollen. Generell gilt, je mehr Phasen, desto besser die Animation. Einfache Bewegungen lassen sich schon mit nur zwei Phasen erreichen, wirken allerdings immer etwas ruckig. In meinen Programmen habe ich meist mit vier Phasen gearbeitet. Damit kann man eine Figur schon zum Laufen bringen ("Schreckenstein") oder einen Vogel zum Fliegen ("Cavelord").

Danach folgt harte Arbeit für den Programmierer, denn nun müssen die einzelnen Phasen nacheinander in möglichst konstanten Zeitabständen angezeigt werden. Wie Sie sicher schon ahnen, ist dies eine höchst dankbare Aufgabe für den VBI. In der nächsten Ausgabe des ATARImagazins wird ein Programm vorgestellt, mit dem sich "MPA"-Figuren in eigenen Spielen einsetzen lassen.

Der Animator

Alle Funktionen von "MPA" werden mittels Joystick bzw. Maltafel (!) angesteuert. Die Tastatur brauchen Sie wirklich nur, um einen File-Namen einzugeben. Nach dem Laden ist das Programm immer auf Joystick-Bedienung eingestellt. Man kann aber jederzeit durch einen Druck auf SELECT zwischen den beiden Eingabemedien hin- und herschalten. Die Auswahl wird in einem Feld in der Mitte unten festgehalten.

Bewegen Sie nun den Cursor in das gepunktete Feld in der Mitte des Bildschirms (Bild 1). Sie werden bemerken, daß er dort nur in gewissen Positionen "einrastet". Dies ist die Zeichenfläche mit einer Größe von 8 x 16 Punkten, in der sich Figuren in vierfacher Vergrößerung entwerfen lassen. Gezeichnet wird mit dem roten Joystick-Knopf oder mit irgendeinem Taster an der Maltafel. Die Farbe können Sie jederzeit wechseln, indem Sie den Cursor nach oben fahren und den gewünschten Farbblock (0 bis 3) anklicken. Auf der linken Seite des Bildschirms sind acht Plätze zum Ablegen von fertigen Shapes zu sehen. Die jeweils aktive Position ist durch ein kleines Rechteck gekennzeichnet. Diese Markierung läßt sich verändern, indem man einfach eine andere Ablagestelle anklickt.

Dazwischen erscheinen mehrere Symbole, die den Datentransfer zwischen den Ablageplätzen und dem mittleren Zeichenfeld steuern. Bei Anwahl des Doppelpfeils kommt die Figur aus der aktiven Ablageposition ins Editierfenster. Jede Anderung wird sofort im Ablageplatz wirksam. Das ist eine praktische Sache, denn so sieht man seine Figur immer gleich in der Originalgröße. Wird der Pfeil nach rechts angeklickt, findet der Datentransfer nur von der Ablage zum Editierfenster statt. Der Pfeil nach links bewirkt dagegen den umgekehrten Datenaustausch. Damit ist es möglich, Shapes bequem zwischen den einzelnen Ablagestellen hin und her zu kopieren. Wählen Sie dazu den Pfeil nach rechts und dann den gewünschten Ablageplatz. Die Figur erscheint sofort im Fenster. Mit dem Pfeil nach links kommt sie nun in die angeklickte Ablageposition. Wenn Sie anschließend den Doppelpfeil aktivieren, können Sie jede einzelne Kopie verändern und auf einfachste Art verschiedene Phasen einer Bewegung herstellen.

Jetzt zeigt "Animator" aber erst, was wirklich in ihm steckt! Mit dem Kreuz-Symbol können Sie mehrere Shapes kennzeichnen. Dazu muß man zuerst das Symbol und dann einen oder mehrere Ablageplätze anklicken. Die gewählten Shapes werden im Animationsfenster nacheinander abgespielt, und zwar so lange, bis Sie die Markierungen durch nochmaliges Anklicken der Ablagen entfernen. Während die Animation läuft, können Sie also die einzelnen Phasen ändern, neue hinzufügen oder entfernen und sofort die Auswirkung im Animationsfenster sehen!

Auf der rechten Seite des Bildschirms befindet sich eine Menüleiste, mit der sich eine Reihe von Hilfsfunktionen aktivieren läßt. Hier eine Zusammenstellung:

Zu nennen wäre noch das Feld BUFFER, das sich links unten im Bild befindet. Sobald Sie dies wählen, wird der gesamte Ablageplatz mit einem internen Buffer ausgetauscht, so daß Sie immer zwei komplette Sätze mit je acht Figuren im Speicher halten können.

Das Format der auf Diskette abgelegten "MPA"-Dateien ist denkbar einfach. Die Gesamtlänge von 256 Byte ist aufgegliedert in 128 Byte für den ersten Player und weitere 128 für den überlagerten. Diese 128 Byte unterteilen sich wiederum in acht Phasen zu je 16 Byte. Um beispielsweise die erste Phase aus dem Datensatz herauszuziehen, muß man die ersten 16 Byte in Player 0 sowie die Bytes 128 bis 144 nach Player 1 schreiben und die beiden dann überlagern. Aber dazu mehr in der nächsten Folge.


Peter Finzel
Aus: Atari-Magazin 06 / 1987, Seite

Links

Copyright-Bestimmungen: siehe Über diese Seite