Preview


ATi Radeon 8500 (R200)
Hersteller: ATi Technologies
Typ: Grafikkarte
Bus: AGP 4x
Speicher: 64 MB DDR SDRAM (4ns) - 128 Bit Interface
Prozessgröße: 0,15 micron Technology
Chip-Takt: 250 Mhz
Speichertakt: 240/480 Mhz
Features: DirectX 8.1 kompatibel, DVI, TV-Out, SMOOTHVISION, TRUFORM, SMARTSHADER, HydraVision

Durch die neue Roadmap(1,5 MB PowerPoint) konnten einige neue Informationen gewonnen werden.

Hier eine Übersicht der verschiedenen Grafikchips.



Hier ein paar Bilder eines Sampleboards

Oberseite
Unterseite
Speicher

4ns - 500 Mhz

Der Chip

Chip

Wie auf diesem Diagramm zu sehen ist, wird die Radeon II ein 128 Bit Channel Speicherinterface bekommen und mit AGP4x angesprochen.
Da sich auf der Karte 8x 64 MBit Chips befinden, welche in 4M x 16 angeordnet sind, kann das Speicherinterface nur 128 Bit breit sein, da wir ja nur 8 Chips haben. Links unten erkennt man die neue HyperZ II Einheit. ATi verwendet das gleiche Speicherinterface wie schon beim Radeon. Es wurden keinerlei Cross-Bar-Techniken o.ä. wie bei NVIDIA's Geforce 3 verwendet.
In der Mitte erkennt man die neue N-Patch Engine (TRUFORM) & die neue Charisma Engine II. Desweiteren wurde er auch mit der Pixel Tapestry II Einheit ausgestattet, welche eine Vertex Shader- und eine Pixel Shader-Einheit beherbergt. 4-Render Pipelines wurden integriert, zwei mehr als beim Radeon. Es werden 2 TMU's pro Pipeline verwendet. Pro Durchlauf können maximal 6 Texturen auf einen Pixel gelegt werden. Gespannt bin ich auch schon, wie sich das Adaptive FSAA verhält - ATi nennt es SMOOTHVISION
Das der Chip über alle möglichen Video-Out/In (ext. DAC, DVI, ext. TMDS, TV, CRT) Features verfügt, ist ja schon fast ATi typisch. Dual-Monitor Support (Hydra Vision) sollte somit kein Problem mehr sein. Bleibt nur zu hoffen, dass ATi die Treiber sauber hinbekommt und Probleme, wie bei der Radeon vermeidet. Wenn der Chip, wie oben angegeben mit 250 Mhz und der Speicher mit 240/480 Mhz laufen soll, dann hat ATi sein synchrones Chip-Speicher Interface über Board geworfen, denn beim Radeon liefen Chip & Speicher synchron, auch wenn manche Overclocker hier andere Einstellungen versuchten.


HyperZ II

HyperZ II hat gegenüber seinem Vorgänger ein paar kleine Verbesserungen erfahren. Hierarchical Z teilt den Bildschirm in Blöcke (Tiles) auf und überspringt verdeckte Pixel - Overdraw wird verringert. Der originale Radeon benutzte 8x8 Blöcke, bem neue Radeon 8500 wurde diese Größe auf 4x4 Blöcke reduziert. Dadurch arbeitet es effizienter - kleinere Speicherzugriffe sparen Bandbreite.
Außerdem kann der Radeon 8500 64 Pixel pro Takt überspringen, der alte Radeon nur 8. Die Geforce 3 liegt hier mit 16 Pixeln im Mittelfeld.
Z-Compression wurde durch einen weiterentwickelten Z-Compression Algorithmus verbessert.



SMOOTVISION (FSAA)

Es arbeitet mit programmierbaren Filtern und einer adaptiven Auswahl von Pixeln, die bei Supersampling verwendet werden. Alle anderen Karten bieten bisher nur feste Auswahlmuster - außer die Voodoo 5.



Vertex Shader


Vertex & Pixel Shader

Pixel & Vertex Shader sind die wichtigsten neuen Hauptbestandteile von DirectX 8.
Mit Hilfe dieser zwei Einheiten wurde der Grafikchip zu einer (fast) frei programmierbaren Einheit. Es ist nun möglich kleine Programme zu schreiben, die kompiliert und dem Grafikchip übergeben werden. Damit können Polygondaten (Vertex Shader) und Pixeldaten (Pixel Shader) manipuliert werden, während sie auf dem Weg durch den Chip zum Bildschirm sind.

Mit der Vertex Shader Einheit ist es nun möglich, Polygone und Objekte zu verändern, nachdem die Vertexdaten über den Bus (AGP oder PCI je nach Karte) zur Karte gelangt sind. So lassen sich z.B. Gesichter und Figuren animieren (Matrix Skinning).

Vertex Shader Effekte
Effekt
Beschreibung
Beispiel
Prozeduale Deformationen
verändert die Form eines Objektes, durch mathematische Berechnungen
eine naturgetreu animierte Seifenblase
Schatten Volumen
der Vertex Shader erzeugt transparente Objekte, auf der vom Licht abgewannten Seite der beleuchteten Objekte - so wird ein realistischer Schatten erzeugt
Eine Szene mit mehreren Lichtquellen
Haar Rendering
ändert die Orientierung und Größe von Polyonen
Gräser, Haare
Partikel Systeme
animiert eine große Anzahl von kleinen Polygonen - durch Zuweisung phys. Parameter wie Masse, Geschwindigkeit, Beschleunigung
Feuer, Funken
Linsen Effekte
verändert die Form eines Objektes um den Eindruckzu erwecken, man würde es durch eine Linse sehen
Sniper Waffe, unter Wasser
Matrix Palette Skinning (klingt auf deutsch doof)
die Knochen, durch ein Skelet animierter Wesen, werden durch Matrizen realistisch bewegt und die Haut entsprechend gedehnt
lebensecht animierte Personen & Tiere
Fortgeschrittene Keyframe Interpolation
Animationen und Morphing Effekte, die durch Überblendung zweier, oder mehrerer Keyframes erzeugt werden
Komplexe Bewegung von Gesichtern

Pixel Shader (SMARTSHADER)

Pixel Shader


Mit der Pixel Shader Einheit ist es nun möglich, die Oberflächeneigenschaften Polygone und Objekte zu verändern, nachdem die Vertexdaten über den Bus (AGP oder PCI je nach Karte) zur Karte gelangt sind und vom Vertex Shader bearbeitet wurden. So lassen sich z.B. neue Bump-Mapping Techniken verwirklichen oder realistischere Beleuchtung von Onjekten.

Pixel Shader (Version 1.4) Effekte
Effekt Beschreibung Anwendung
Echtes Phong Shading führt eine komplexe mathematische Berechnung aus, um jedem Pixel eine exakte Beleuchtung & Schattierung zu geben, die mit seinen jeweiligen Materialeigenschaften und der Szenenbeleuchtung übereinstimmen realistische Beleuchtung von Materialien, Metall etc.
Anisotrophische Beleuchtung benutzt die "bidirectional reflectance distribution functions (BRDF)" um den jeweiligen Lichtablenkungswinkel zwischen Lichtquelle, Objekt & Betrachter zu ermitteln realistischere Beleuchtung von Haaren
Fortgeschrittenes Bump Mapping erlaubt die Benutzung von horizontalem Mapping, um Bump-Maps zu erzeugen, welche einen Schatten werfen, erlaubt auch die Kombinierung von mehreren Bump-Maps sich bewegendes Wasser, durch Wind oder Objekte (Helikopter)
Prozeduale Texturen erzeugt komplexe Texturen (mit mathematischen Berechnungen), die keinen Speicherplatz benötigen, da sie im Chip generiert werden Marmoreobjekte, Holzobjekte, die beim anschneiden eine realistische texturierte Schnittkante haben

Wie man sieht, erlaubt der Pixel Shader eine Menge Operationen. Leider sind nicht alle mit der Version 1.0/1.1 von DirectX 8 möglich.
Erst DirectX 8.1 erlaubt dies. NVIDIA's Geforce 3 erfüllte bisher nur die Spezifikation 1.1 .
Seit einigen Wochen gibt es aber neue Andeutungen, wonach in DirectX 8.1 auch die Spezifikationen 1.2 / 1.3 des Pixel Shades eingebaut sind. Laut NVIDIA erfüllt die Geforce 3 diese Spezifikationen, darf sich also auch DirectX 8.1 kompatibel nennen.

Radeon 8500: 1.0 - 1.4
Geforce 3: 1.0 - 1.3

Letztendlich müssen sich damit die Spieleentwickler herumplagen und entscheiden, welche Effekte sie nutzten und welche nicht.

Pixel Shader v1.1 vs Pixel Shader v1.4
Daten
Pixel Shader v1.1
Pixel Shader v1.4
Max. gleichzeitig verwendete Texturen 4 6
Max. Programmlänge 12 Instruktionen (bis zu 4 Texture Samples, 8 Farbüberblendungen) 22 Instruktionen (bis zu 6 Texture Samples, 8 Textureadressierungen, 8 Farbüberblendungen)
Instruktions Set 13 Adressoperationen
8
Farboperationen
12 Adress- / Farboperationen
Texture Adressierungsarten 40 unendlich viele


TRUFORM


Das Problem?

TRUFORM 1


Polygonfiguren sind einfach zu eckig! Die Modelle sind auf möglichst wenige Polygone heruntergerechnet, um Speicherplatz und Bandbreite zu sparen. Je mehr Vertexdaten ich habe, desto höher ist die Belastung des AGP oder PCI Busses. Die Texturen müssen aber auch noch zur Grafikkarte gelangen, dann greifen schließlich noch ein paar Prozesse auf die Festplatte zu und meine Speicher- und Busbandbreite ist ausgeschöpft. AGP 4x hin oder her - wenn der RAM keine Bandbreite mehr hat, dann kann der angeschlossene Bus noch so breit sein -> es entsteht ein Flaschenhals.

Die Lösung?

TRUFORM 2

TRUFORM erzeugt mit Hilfe der Normalen und den Eckpunkten der Dreiecke N-Patches, welche dann gerendert werden. Wie man an den Beispielen sehen kann, trägt dieses Verfahren auch zu einer Verbessung der Beleuchtungspunkte bei. Bei heutigen Spielen soll sich die TRUFORM Funktion sehr einfach implementieren lassen, da die Grunddaten, der 3D Objekte, nicht geändert werden müssen.


Fazit & Preis

Radeon 8500 - 399 US $ - Dieser Preis wird sicher nicht lange so bleiben, spätestens wenn NVIDIA mit dem Geforce 3 Nachfolger auftaucht geht der Preiskampf los.
Da hat ATi wirklich eine interessante Karte im Köcher. Leider gibt es von ATi nur eigenen Treibersupport (alle auf einer Codebasis, wie bei NVIDIA) für Windows 98/Me/2000/XP. Unter Linux wird man wohl wieder auf die "3'rd Party" Treiber zurückgreifen müssen. Da hat NVIDIA mit ihren "In-House" Linuxtreibern die Nase vorn. Auf Benchmarkergebnisse habe ich verzichtet, da es sich um ein PREVIEW handelt und es keine zuverlässigen Quellen gibt. Weiter Infos gibts bei http://www.anandtech.com
.