home
1.) Was ist das Besondere am KYRO ?

Die herausragende Merkmale sind sein sog. "Tile-Based-Rendering" (TBR),also das Zerteilen des Bildes in kleine Kacheln (engl. "tiles") sowie die sich u.a. daraus ergebende Möglichkeit nur die Objekte im Chip zu verarbeiten, die der Betrachter auch wirklich sieht. Diese Funktion nennt man "Hidden-Surface-Removal" - also das Entfernen von nicht sichtbaren Bildinhalten.

Zum Verständnis ein Beispiel:

Diese 3 Kisten werden von einer 3D-Applikation wie unten übereinandergelegt und an den Grafikchip übergeben.

Alle Grafikchips von z.B. NVIDIA, ATI, Matrox oder auch 3dfx teilen die Kisten in ihre Einzelteile ("Polygone") auf um jedes dieser einzelnen Dreiecke berechnen zu können:

Im Chip wird das Gesamtbild dann so aufgebaut:

Die gelbe Kiste wird vollständig gezeichnet, obwohl das untere rechte Viertel im Gesamtbild garnicht zu sehen sein wird, ebenso verhält es sich im weiteren Renderprozess mit der blauen Kiste.

Diese überflüssige Berechnung kostet nicht nur Rechenleistung sondern fordert u.a. auch den lokalen Grafikkartenspeicher, da von dort die gelbe bzw. blaue Textur für die Kisten geholt werden muß !

Die nicht sichtbaren Objekte bezeichnet man als "Overdraw" - sie sind komplett überflüssig, werden aber trotzdem berechnet. In diesem simplen Beispiel beträgt der Overdraw lediglich etwa 1,16 - in Spielen mit ihren äußerst komplexen Szenen (Gebäude, herumliegende Gegenstände, Gegner/Mitspieler etc.) geht man von einem Overdraw von 2,5 aus - es werden also zweieinhalb mal so viele Objekte gezeichnet wie nötig...

Der KYRO geht einen anderen Weg:

Er zerlegt das ankommende Bild in viele kleine Kacheln der Größe 32x16 Pixel, die sog. "tiles".

Jetzt beginnt der Prozess, der als "Hidden  Surface Removal" bekannt ist: KYRO speichert zunächst die Daten der Szene in seinem "Gedächtnis" - der "Display List". In ihr befinden sich Informationen darüber, welches Dreieck in welchem tile liegt. Mittels dieser Liste beginnt KYRO nun jeden Pixel eines Dreicks pro tile auf seine Sichtbarkeit hin zu überprüfen. Der Wert für diese Tiefenprüfung wird im on-chip "Z-buffer" gespeichert. Erst wenn die Sichtbarkeitsprüfung für ein Pixel postiv ausfällt, d.h. wenn er nicht durch davorliegende Objekte verdeckt wird und somit sichtbar ist, wird er in den späteren Renderprozess eingebunden.

Diese Verzögerung gibt den PowerVR Chips auch den Namen "deferred renderer".

Das Bild wird also so aufgebaut:

Mit dieser Methode gibt es keinen Overdraw ! Die im Vergleich zu einem immediate renderer eingesparte Rechenleistung und die drastisch reduzierten Speicherzugriffe nutzt der KYRO für andere features - dazu jedoch später.

Durch das Zusammenspiel des am "Eingang" des Chips liegenden "Tile Accelerator" und nahezu perfekten Algorithmen geht das tiling übrigens so schnell vonstatten, daß man am Bildschirm davon nichts mitbekommt...

faq:

faq
tile based
rendering
artikel
downloads
PVR Chips
links
email