ATIs neue Waffe - RADEON 8500

Smartshader

Erst mit der Einführung von DirectX 8.1 können die Hauptbestandteile der neuen RADEON-8500-Architektur, der programmierbare Vertex- und Pixel-Shader - auch Smartshader genannt - voll genutzt werden.

Der Vertex Shader ist in der Geometrie-Pipeline untergebracht. Anhand von frei programmierbaren Anweisungen und Instruktionen kann er die ankommenden Vertex-Daten neu berechnen. Ein Vertex kann aus insgesamt 16 einzelnen Datenteilen, den so genannten Streams, bestehen. Diese enthalten zum Beispiel Orts- und Textur-Koordinaten, Lichtwerte oder Daten zur Oberflächenberechnung. Eine Vertex-Shader-Anweisung enthält maximal 128 Instruktionen. Ihr stehen zur Abarbeitung der Befehlsfolge 12 temporäre und 95 feste Datenregister zur Verfügung.

Besonders bei der aufwendigen Berechnung von Oberflächen (Procedural Deformation) und Schatten (Shadow Volumes) bringt diese Technik Vorteile.

Anders als der Vertex-Shader ist der Pixel-Shader ein Teil der Rendering-Pipeline. Er ist in der Lage, sechs unterschiedliche Texturen in einem Durchlauf zu untersuchen, um die Farbe eines Pixels festzustellen und neu zu berechnen. Dabei können die Texturen in einem dreidimensionalen Array abgespeichert werden. Eine Pixel-Shader-Anweisung fasst insgesamt 22 Instruktionen. Sechs temporäre und acht feste Datenregister helfen bei der Berechnung der Daten.

Vorteil des Pixel-Shader ist das schnelle Per-Pixel-Rendering mit vielen Lichtquellen darüber hinaus beschleunigt es Funktionen zur Berechnung des Lichtes an Oberflächen wie das True Phong Shading, Advanced Bump Mapping und Procedural Textures.