Dienstag Ľ 22.08.2017 Ľ 14:59 Uhr
 Neuigkeiten
 Artikel
 Downloadbereich
 Bildergalerie
 Forum
 PowerVR FAQ
 Suchmachine
 Mitarbeiter
 Impressum
 SGX544MP angek├╝ndig...
 Der aktuelle Stand
 zweiter SGX Artikel ...
 Die Videof├Ąhigkeite...
 neue Treiber f├╝r Po...
 neuer Treiber mit Ha...
 SGX - Aufbau, Techn...
 neuer Serie5XT Grafi...
 Apple und Intel inve...
 Mehrere weitere Lize...
 SGX - PowerVRs Shade...
 Interview mit ImgTec...
 Quack - das andere D...
 Hercules4500 AGP4x-M...
 Optionen des KYRO Tr...
 FSAA auf KYRO
 Nummer 5 lebt!
 Startpartition von W...
 MBX - Mobile Grafik
 Die Grafikf├Ąhigkeit...
 Vivid! - PowerVR Gra...
 Videologic Neon 250
 Geforce 6800 - the n...
 Beyond3d
 BluesNews
 Chrome-Center
 Hartware
 Imagination T.
 ParaKnowYa
 Planet 3dNow!
 PowerVR
 PowerVR-Ext.
 PVR Generations
 Tom's Hardware
 Videologic
 VoodooExtreme

3D Center


PowerVR

Imagination Technologies

Vivid! - PowerVR Grafik

Dank

An dieser Stelle sei mir ein Dank an all jene Menschen erlaubt, die mir dieses Review der Vivid erm├Âglichten. Zuerst m├Âchte ich unbedingt David Harold, PR Manager der Firma Imagination Technologies, nennen, durch seine Unterst├╝tzung durch die Auslieferung einer Vivid! ist diese Arbeit erst m├Âglich geworden. Genauso mu├č aber unbedingt Matt Crawford, ebenfalls ImgTec, erw├Ąhnt werden. Nur durch die sehr gute Zusammenarbeit mit ihm wurden alle Probleme mit Treibern oder dem BIOS oder auch besonderen Spielen immer wieder in wenigen Stunden gel├Âst! Ein ganz gro├čer Dank geht aber auch an Lukas Jaskiewicz, der sich spontan entschlo├č mir bei den Benchmarks und auch sonst bei allen Problemen zu helfen. Ohne ihn w├Ąre das Review sicher nie so gut und umfangreich geworden.

Vorgeschichte + Technik

Seit der Entwicklung der Computergrafik und der Darstellung dreidimensionaler Objekte mit Hilfe von Computern hat sich eigentlich nicht viel ver├Ąndert. Alle Firmen die 3D Hardware produzieren verfolgen mit ihren Produkten immer den gleichen Weg, die sogenannte Grafikpipeline.

Alle Objekte werden ├╝ber ihre Oberfl├Ąchen in Polygone (Dreiecke) zerlegt, deren Position im Raum ├╝ber entsprechende Matrixoperationen berechnet werden. Anschlie├čend wird die Beleuchtung f├╝r die Dreiecke berechnet und die Dreiecke mit einer bzw. mehreren Texturen belegt, die nat├╝rlich auch noch untereinander in Wechselwirkung treten k├Ânnen (z.B. Durchsichtigkeit u.a.). Diese Dreiecke werden so wie sie von der CPU kommen auf dem Bildschirm dargestellt. Da nicht bekannt ist, ob das Dreieck, das gerade Ausgegeben werden soll vor oder nach anderen schon vorhandenen Dreiecken liegt, wird f├╝r jeden Bildschirmpixel ein Tiefenpuffer, der sogenannte Z-Buffer, eingerichtet, ├╝ber diesen Tiefenpuffer kann jetzt entschieden werden, ob der entsprechende Pixel des Dreiecks ├╝berhaupt gezeichnet wird oder ob er vielleicht durch andere Dreiecke, die schon in der Szene sind, verdeckt wird. In modernen Spielen ist es nun oft so, dass sehr viele Objekte st├Ąndig durch andere verdeckt werden, wobei dann immer alle diese Objekte v├Âllig umsonst berechnet werden.

Man stelle sich zum Beispiel vor, man steht in einer Stadt auf dem Marktplatz und schaut auf ein Haus auf einer Marktseite. Dann sehen wir nat├╝rlich nur dieses Haus, wissen aber, dass hinter dem Haus viele weitere H├Ąuser stehen. Wenn wird diese Szene mit Hilfe eines Computers dreidimensional Darstellen wollen, geben wir nat├╝rlich die Koordinaten allen H├Ąuser ein, denn es soll ja dem Anwender des Programmes sp├Ąter ├╝berlassen werden, welche Ansicht er w├Ąhlt. Die virtuelle Stadtf├╝hrung kann beginnen! F├╝r den Rechner, und damit die Grafikhardware beginnt jetzt ein fast unl├Âsbares Problem. Wie oben beschrieben wird die gesamte 3D Szene durch den Computer berechnet und dargestellt, d. h. auch alle H├Ąuser hinter den H├Ąusern auf dem Marktplatz! Hoffen wir, dass es eine Kleinstadt ist! Es werden also hunderte von Objekten gezeichnet, die alle gar nicht zu sehen sind!
Daran scheitert momentan jede Grafikhardware! Moment fast jede!

Hier beginnt die Geschichte einer "kleinen" englischen Firma mit Namen Imagination Technologies (Videologic). Dieses Unternehmen hatte die Idee, bei der Computergrafik etwas ganz anders zu machen. Wenn man die Grafikpipeline so ver├Ąndern k├Ânnte, dass vor dem Zeichnen bekannt w├Ąre welche Teile sichtbar sind, dann k├Ânnte man sehr viel Rechenzeit und Arbeit f├╝r die Hardware sparen. Die Idee selbst ist zwar nicht von Videologic, aber mit der PowerVR Technologie sind sie das erste Unternehmen, das eine marktreife Technologie entwickelte.
Wie funktioniert jetzt eigentlich diese Technologie?
Man sollte vielleicht mit dem Begriff Displaylist Renderer anfangen. Die Grundidee besteht darin, alle Dreiecke der Szene in einer Liste zu sammeln. Wenn man alle Dreiecke hat, ist es nat├╝rlich leicht m├Âglich diese so zu sortieren, das bestimmt wird welches Dreieck am weitesten vorn liegt. Da nun aber eine Szene in der Regel doch aus mehreren tausend Dreiecken, wenn nicht gar hunderttausend Dreiecken, besteht ist dies auch schon wieder recht zeitaufwendig.

Deshalb die zweite Idee! Wenn ich sowieso alle Dreiecke kenne, kann ich doch auch den Bildschirm in kleinere Teile aufteilen, sogenannte Tiles, und bestimme f├╝r die Displayliste nur noch welche Dreiecke in welchen Tiles liegen. Da ein Dreieck meistens doch nicht den ganzen Bildschirm bedeckt, ist die Liste f├╝r so ein Tile nat├╝rlich (in der Regel) sehr viel kleiner. Diese Tiles bestehen zum Beispiel aus 32x16 Pixel und sind damit so klein, dass alle Daten die f├╝r so ein Tile gebraucht werden st├Ąndig in einem Cache Speicher des Grafikchips gehalten werden k├Ânnen.

Wenn jetzt f├╝r ein Tile bekannt ist, welche Dreiecke ├╝berhaupt in diesem liegen, beginnt der eigentliche Prozess zur Bestimmung der Farbwerte der Pixel dieses Tiles. Durch Ray Casting wird f├╝r jeden Pixel das Dreieck bestimmt, das am weitesten vorn liegt und den Farbwert bestimmt. Ray Casting f├╝r ein Pixel ist nat├╝rlich recht schnell erledigt, aber f├╝r hunderttausende? Das ist kein Problem, da ein Tile ja einen in sich abgeschlossenen Teil des Bildschirms darstellt, ist es leicht m├Âglich dieses Ray Casting massiv parallel durchzuf├╝hren. Wir wissen nicht genau wie viele Pixel parallel berechnet werden, aber ImgTec sagt, das dieser Algorithmus so schnell ist, dass er eigentlich nie ein Problem f├╝r die Geschwindigkeit des Chips darstellt. Wenn anschlie├čend im Tile f├╝r alle Pixel das jeweils farbbestimmende Dreieck gefunden wurde wird mit diesen Pixeln die Renderpipelin fortgesetzt. Hier kommt jetzt der dritte Begriff ins Spiel, das deferred Rendering. Das hat zur Folge, dass wirklich nur die Pixel der einzelnen Dreiecke gerendert werden, die auch sichtbar sind. Wenn also ein Dreieck vollst├Ąndig von anderen verdeckt wird, wird es auch niemals gerendert werden. Diese Technologie vermeidet also jeglichen Overdraw.
Hier entstehen drei wesentlich Vorteile:

  1. Es werden wirklich nur die Dreiecke bearbeitet, die auch sichtbar sind.
  2. Auf den Z-Buffer kann verzichtet werden, da dieser Test im Chip erfolgt.
  3. Dadurch das sehr viel der Rechenarbeit komplett im Grafikchip ohne Verwendung externer Speicher durchgef├╝hrt wird, ist es m├Âglich sehr viel Datentransport vom bzw. zum Speicher einzusparen.

Klingt einfach, nicht? Ist aber nat├╝rlich gar nicht so einfach, denn sonst h├Ątte es schon jeder getan! ImgTec hat f├╝r die Probleme dieser Technologie eine L├Âsung gefunden, deren Ergebnisse ihre Grafikchips sind!

Mit dem PowerVR1 (PCX1) brachten sie 1996 einen eigentlich recht erfolgreichen Chip auf den Mark, der durch die Grafikkarten Apocalypse 3dx und Matrox m3d bekannt geworden ist. Der Nachfolger dieses Chips, der PowerVR2, wurde wenigstens in der Spielekonsole Dreamcast seit 1998 eingesetzt. Ich erinnere mich noch gut an die Aufregung, die dieser Chip auch im PC Bereich verursachte. Leider kam er erst im Herbst 1999 in der Neon250 auf den Markt.

Vor uns liegt jetzt die dritte Generation, die Serie3 bzw. KYRO. Der KYRO ist eine Serie von 3D Chips, die in Zusammenarbeit von ImgTec mit STMicroelectronics entstehen. Die hier getestete Karte mit Namen Vivid! von VDO basiert auf dem ersten Marktreifen KYRO Chip.

Seite 1 2 3 4 5 6 7 8 9 10 11 12
 Vivid! - PowerVR Grafik
 12 Seiten
 verfasst von loewe
 Dienstag - 08.08.2006 - 15:11 Uhr
[1]  Technik
[2]  Eigenschaften
[3]  Installation/Treiber
[4]  Benchmarks
[5]  Quake 3 Arena
[6]  Unreal Tournament
[7]  Evolva Rolling Demo
[8]  Dagoth Moor Zoological Garden
[9]  3D Mark 2000
[10]  Overclocking und FSAA
[11]  Bildqualit├Ąt
[12]  Zusammenfassung