Stufe des Rasterizers

Die Rasterungsphase konvertiert Vektorinformationen (bestehend aus Formen oder Grundtypen) in ein Rasterbild (bestehend aus Pixeln), um 3D-Echtzeitgrafiken anzuzeigen.

Während der Rasterung wird jeder Grundtyp in Pixel konvertiert, während die Werte pro Scheitelpunkt über jeden Grundtyp interpoliert werden. Die Rasterung umfasst das Beschneiden von Scheitelpunkten für das Frustum der Ansicht, das Ausführen einer Division durch z, um eine Perspektive bereitzustellen, das Zuordnen von Primitiven zu einem 2D-Viewport und das Bestimmen, wie der Pixelshader aufgerufen werden soll. Während die Verwendung eines Pixelshaders optional ist, führt die Rasterizerphase immer Clipping und eine Perspektivspalte aus, um die Punkte in homogenen Raum zu transformieren, und ordnet die Scheitelpunkte dem Viewport zu.

Scheitelpunkte (x,y,z,w), die in die Rasterizerphase gelangen, werden als homogene Clip-Space-Objekte angenommen. In diesem Koordinatenbereich zeigt die X-Achse nach rechts, Y zeigt nach oben und Z von der Kamera entfernt.

Sie können die Rasterung deaktivieren, indem Sie der Pipeline mitteilen, dass kein Pixelshader vorhanden ist (legen Sie die Pixelshader-Stufe mit ID3D11DeviceContext::P SSetShader auf NULL fest) und deaktivieren Sie Tiefen- und Schablonentests (legen Sie DepthEnable und StencilEnable in D3D11_DEPTH_STENCIL_DESC auf FALSE fest). Wenn die Rasterung deaktiviert ist, werden damit zusammenhängende Pipelinezähler nicht aktualisiert. Es gibt auch eine vollständige Beschreibung der Rasterungsregeln.

Auf Hardware, die hierarchische Z-Pufferoptimierungen implementiert, können Sie das Vorabladen des Z-Puffers aktivieren, indem Sie die Pixelshaderphase auf NULL festlegen und gleichzeitig Tiefen- und Schablonentests aktivieren.

In diesem Abschnitt

Thema Beschreibung
Erste Schritte mit der Rasterizerphase
In diesem Abschnitt wird das Festlegen des Viewports, des Scherenrechtecks, des Rasterisierungszustands und der Mehrfachsampling beschrieben.
Rasterungsregeln
Rasterungsregeln definieren, wie Vektordaten Rasterdaten zugeordnet werden. Die Rasterdaten werden an ganzzahligen Speicherorten angedockt, die dann gekullt und beschnitten werden (um die Mindestanzahl von Pixeln zu zeichnen), und attribute pro Pixel werden interpoliert (aus den Attributen pro Vertex), bevor sie an einen Pixelshader übergeben werden.

Grafikpipeline

Pipelinephasen (Direct3D 10)