Sprites sind elementare Teile vieler Anwendungen. Sie können für viele verschiedene Zwecke verwendet werden und Hollywood geht sehr flexibel mit ihnen um, weil sie vollständig in die Software implementiert werden. Somit gibt es keine Beschränkungen für Spritegröße, -farben, -transparenz und so weiter. Traditionell werden Sprites für Spieler und Feind Grafiken in Spielen verwendet, aber sie kommen auch praktisch in vielen anderen Situationen vor.
Allgemein kann man sagen, Sprites haben drei verschiedene Attribute, die sie von Pinseln unterscheidet:
Eine detailliertere Erläuterung der Sprite-Befehle folgt weiter unten.
LoadBrush(1, "test.iff") LoadSprite(1, "test2.iff") DisplaySprite(1, 0, 0) DisplayBrush(1, 0, 0) |
Sie sehen, dass wir zwei Bilder laden: Pinsel 1 und Sprite 1. Nun zeigen wir Sprite 1 und danach Pinsel 1. Normalerweise müsste Pinsel 1 über dem Sprite gezeichnet werden, weil DisplayBrush() nach DisplaySprite() aufgerufen wurde. Sprites sind jedoch immer auf der Vorderseite des Displays und deshalb wird in diesem speziellen Fall Pinsel 1 hinter Sprite 1 gezeichnet werden.
Dies gilt für alle normalen Grafikbefehle von Hollywood: Sie können nie Grafiken über ein Sprite zeichnen! Sprites sind immer auf der Vorderseite und die normalen Befehle, das heißt Nicht-Sprite-Befehle können nie ein Sprite übermalen. Sie können nur Sprites über neue Sprites zeichnen.
LoadSprite(1, "test.iff") DisplaySprite(1, 0, 0) DisplaySprite(1, 100, 100) |
Sie sehen, dass wir Sprite 1 zwei Mal anzeigen. Zunächst wird es bei 0 : 0 und ein zweites Mal bei 100 : 100 angezeigt. Da jedes Sprite nur einmal auf dem Bildschirm sein kann, wird der zweite DisplaySprite() Sprite 1 nicht wieder zeichnen, aber es von 0 : 0 bis 100: 100 bewegen. DisplaySprite() überprüft, ob Sprite 1 auf dem Bildschirm ist. Wenn ja, wird es abgeholt und an die neue Position verschoben. So können Sie einfach Ihre Sprites auf dem Bildschirm bewegen.
Weitere Informationen über die Sprite-Umsetzung in Hollywood: