Ein Sprite ist ein Grafikobjekt, das von der Grafikhardware über das Hintergrundbild bzw. den restlichen Inhalt der Bildschirmanzeige eingeblendet wird. Die Positionierung wird dabei komplett von der Grafikhardware erledigt. Beispiel: Die meisten Grafikkarten stellen ein Hardware-Sprite für den Mauszeiger zur Verfügung.
Heute ist die Sprite-Technik durch die Möglichkeiten von modernen Grafikkarten weitgehend überholt.
Die Daten für die Sprite-Grafik werden dabei entweder direkt in Registern der Grafikhardware vorgehalten (Beispiel: C64, Breite und Höhe der Sprites fest) oder in speziellen RAM-Bereichen, auf die diese Hardware genügend schnellen Zugriff hat. Ein Beispiel für die letztere Variante ist der Amiga mit seinem Chipsatz und dem Chip-RAM: Der Zugriff erfolgt durch den DMA-Apparat des Agnus-Chips jeweils am Zeilenanfang und die Darstellung durch den Denise-Chip. Eine Auswirkung dieses Prinzips ist, dass die Sprites beim Amiga zwar eine durch die Grafikhardware festgelegte/begrenzte Breite aufweisen, deren Höhe jedoch mehr oder weniger beliebig groß werden darf.
Zur Bewegung eines Sprites reicht es aus, lediglich dessen x/y-Koordinate zu ändern; die komplizierte Berechnung der Adresse im Grafikspeicher entfällt, was ebenfalls den Hauptprozessor entlastet. Der Grafikprozessor fügt selbstständig an der vorgegebenen Koordinate das Sprite beim Aufbau des nächsten Bildes im Vordergrund ein. Auch animierte Sprites sind möglich; dazu müssen nur die Daten der Sprite-Grafik im Speicher durch die des nächsten Einzelbildes ersetzt werden.
Ein Sprite ist prinzipiell rechteckig. Aber auch unregelmäßig geformte Sprites sind möglich, indem der Rand transparent dargestellt wird – entweder durch eine bestimmte Farbe, welche vom Grafikprozessor transparent dargestellt wird, oder durch eine Maske, die definiert, an welchen Stellen das Sprite deckend und an welchen es transparent dargestellt werden soll.
Eine weitere Verbesserung für Computerspiele war die Sprite-Sprite-Kollisionserkennung. Sobald der Grafikprozessor beim Erstellen des Bildes erkennt, dass sich zwei Sprites überlappen, wird dies der Software per Interrupt, Flag oder Event mitgeteilt. Damit sind die meisten Computerspiele vergleichsweise einfach zu programmieren, weil sich das Programm nicht um die Kollisionserkennung kümmern muss und für diese keine Rechenleistung verbraucht. Eine vernünftige Kollisionserkennung ist aber in beinahe allen Grafikprozessoren vorhanden, welche auch Bobs oder Sprites beherrschen.
Sprite (počítačová grafika) | Sprite | Sprite (computer graphics) | Sprite (videojuegos) | Sprite-grafiikka | Sprite (jeu vidéo) | Sprite (informatica) | スプライト | Sprite | Спрайт (компьютерная графика) | Sprite (datorgrafik)
This article is licensed under the GNU Free Documentation License.
It uses material from the
"Sprite (Computergrafik)".
Home Page • arts • business • computers • games • health • hospitals • home • kids & teens • news • physicians • recreation• reference • regional • science • shopping • society • sports • world