Raster bar Effekt

  • 3Minuten

Der Rasterbar-Effekt (auch Copperbar genannt) ist ein in Demos und älteren Videospielen verwendeter Effekt, der animierte, meist horizontale Farbbalken anzeigt. Solche Effekte waren auf dem Atari 2600 und der Atari 8-Bit-Familie weit verbreitet und später in Demos für den Commodore 64, Amiga, Atari ST, Amstrad CPC und IBM PC. Dieses Tutorial zeigt, wie man das im GameMaker Studio realisiert.

Übrigens: Der Begriff Copperbar stammt von einem Grafik-Coprozessor auf dem Amiga-Heimcomputer, der als Copper (eine Kurzform von Coprozessor) bezeichnet wird. Er kann so programmiert werden, dass er die Anzeigefarben pro Abtastzeile ändert, ohne die CPU zu beanspruchen, außer dass er die Position der Balken einmal pro Bild aktualisiert.

Heute kann man den Effekt im Menü als Hintergrund nutzen, für Credits oder als Fake-Cracktro.

Was wir brauchen

Wir werden diesen Effekt mit zwei Objekten und einem Sprite realisieren. In meinem Beispiel hat das Sprite eine Auflösung von 320×32 Pixel und sieht so aus:

s bar h
s_bar_h

Das wirkt recht unspektakulär. Später färben wir es per Code ein.

Nun brauchen wir noch die zwei Objekte o_bars_h und o_raster_bars_h.

Theorie

Das Sprite setzen wir im Objekt o_bars_h ein. Im Beispiel werden wir mit 16 Bars arbeiten, wobei jeder seine eigene Farbe enthält. Falls euch das bekannt vorkommt: Ja, etwas Vergleichbares haben wir bereits hier getan.

o_raster_bars_h ist das Objekt, welches wir im Raum platzieren. Dieses erstellt die 16 Instanzen der Bar und weist die Farben sowie Ausgangspositionen zu.

o_bars_h

Wie bereits erwähnt, setzen wir hier das Sprite ein. Origin beim Sprite sollte übrigens auf 0x0 stehen.

Create-Event

Die Variablen erklären sich im Draw-Event quasi von selbst. Wichtig ist noch der Alarm. Hier regeln wir den Alpha-Wert. Den brauchen wir nur am Anfang, damit die Balken eingeblendet werden und nicht sofort auf dem Bildschirm erscheinen.

Alarm 0

Draw-Event

Hier findet die eigentliche Bewegung der Instanz statt, wobei wir die Höhe entsprechend der Distanz skalieren.

o_raster_bars_h

Hier brauchen wir nur ein Create-Event. Sobald die Instanzen erstellt wurden, übergeben wir ihnen noch ein paar Parameter und beste Wünsche mit auf den Weg. Die Farbe wird über image_blend definiert.

Create-Event

Um den Code besser zu verstehen, ist es ratsam, ein wenig mit den Zahlen zu spielen. Das hilft mehr als endlose Texterklärungen.

Autor

Abonnieren
Benachrichtige mich bei
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x