Freigeben über


Koordinatensysteme (Direct3D 10)

Koordinatensysteme für Direct3D 10 werden für Pixel und Texel definiert.

Unterschiede zwischen Direct3D 9 und Direct3D 10:

  • Direct3D 10 definiert die obere linke Ecke des oberen linken Pixels als Ursprung eines Renderziels.
  • Direct3D 9 definiert die Mitte des oberen linken Pixels als Ursprung eines Renderziels.

 

Pixelkoordinatensystem

Texelkoordinatensystem

Verwandte Themen

Pixelkoordinatensystem

Das Pixelkoordinatensystem in Direct3D 10 definiert den Ursprung eines Renderziels in der oberen linken Ecke. wie im folgenden Diagramm dargestellt. Pixelzentriert werden von ganzzahligen Positionen um (0,5f,0,5f) versetzt.

Diagramm des Pixelkoordinatensystems in direct3d 10

Pixelkoordinatensystem für Direct3D 9

Hier ist das Pixelkoordinatensystem für Direct3D 9, das den Ursprung oder ein Renderziel als Mitte des linken oberen Pixels (0,5,0,5) von der oberen linken Ecke definiert hat, wie im folgenden Diagramm dargestellt. In Direct3D 9 befinden sich Pixelzentriert an ganzzahligen Positionen.

Diagramm des Pixelkoordinatensystems in direct3d 9

Texelkoordinatensystem

Das Texelkoordinatensystem hat seinen Ursprung in der oberen linken Ecke der Textur, wie im folgenden Diagramm dargestellt. Dadurch wird das Rendern von Bildschirmausrichtungstexturen trivial (in Direct3D 10), da das Pixelkoordinatensystem am Texelkoordinatensystem ausgerichtet ist.

Diagramm des Texelkoordinatensystems

Texelkoordinatensystem

Texturkoordinaten werden entweder mit einer normalisierten oder einer skalierten Zahl dargestellt; Jede Texturkoordinate wird einem bestimmten Texel wie folgt zugeordnet:

Für eine normalisierte Koordinate:

  • Punkt-Sampling: Texel # = floor(U * Width)
  • Lineares Sampling: Left Texel # = floor(U * Width), Right Texel # = Left Texel # + 1

Für eine skalierte Koordinate:

  • Punktsampling: Texel # = floor(U)
  • Lineares Sampling: Left Texel # = floor(U - 0,5), Right Texel # = Left Texel # + 1

Die Breite ist die Breite der Textur (in Texeln).

Der Texturadressumbruch tritt auf, nachdem die Texelposition berechnet wurde.

Ressourcen (Direct3D 10)