PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Shader Model 3 Interpolator


Corrail
2006-04-05, 00:05:40
Hallo!

Ich habe eine Frage bezüglich der Anzahl der floating point Interpolatoren bei Version 3 des DirectX Shader Models. In der SDK von DirectX Dezember 2005 steht bei Input Register 10 Stück. Sind diese aber alle floating point oder sind da noch fixed point dabei (Color oder sowas)?

Vielen Dank

Neomi
2006-04-05, 00:08:41
Die 8 Floatingpoint-Interpolatoren wurden mit den 2 Farb-Interpolatoren für das Shadermodell 3 zu 10 Floatingpoint-Interpolatoren zusammengefaßt. Die Präzision ist bei allen 10 identisch.

Corrail
2006-04-05, 00:14:27
Die 8 Floatingpoint-Interpolatoren wurden mit den 2 Farb-Interpolatoren für das Shadermodell 3 zu 10 Floatingpoint-Interpolatoren zusammengefaßt. Die Präzision ist bei allen 10 identisch.

Heißt das, dass ich 10 echte 32Bit floating point Interpolatoren auf Shader Model 3 Hardware zur Verfügung habe?

Coda
2006-04-05, 00:15:50
Rrrriiichtiiisch :)

Corrail
2006-04-05, 00:17:07
Rrrriiichtiiisch :)

Passt, danke! ;)

Und wie muss ich das unter DirectX/HLSL binden? Die Texture Coordinates sind ja fix 32Bit float, aber wird unter SM3 auch für Color Bindings 32Bit floating point garantiert?

Neomi
2006-04-05, 00:22:19
Die Texture Coordinates sind ja fix 32Bit float, aber wird unter SM3 auch für Color Bindings 32Bit floating point garantiert?

Genau so ist es.

Coda
2006-04-05, 00:25:16
Wieviel Interpolatoren erlaubt eigentlich D3D10? Ich finde da nichts in der Doku (unendlich?).

Neomi
2006-04-05, 00:57:46
Wieviel Interpolatoren erlaubt eigentlich D3D10? Ich finde da nichts in der Doku (unendlich?).

16 Float4-Interpolatoren, wenn es vom VertexShader direkt zum PixelShader geht. Wenn ein GeometryShader dazwischenhängt, sind es sogar 32. Jep, mit baryzentrischen Koordinaten sind kaum noch Grenzen gesetzt. :)

Edit: gefunden!

A pixel shader can input up to 32 32-bit 4-component data for the current pixel location. It is only when the geometry shader is active that all 32 inputs can be fed with data from above in the pipeline. In the absence of the geometry shader, only up to 16 4-component elements of data can be input from upstream in the pipeline.

Direct3D 10 Graphics -> Programming Guide -> Pipeline Stages -> Shader Stages

Coda
2006-04-05, 01:04:47
Und wenn man im GS barycentrics berechnet sogar "unendlich", wenn ich das richtig verstanden hab ;)