D3DXMatrixPerspectiveFovLH-Funktion (D3DX10Math.h)

Hinweis

Die D3DX10-Hilfsprogrammbibliothek ist veraltet. Es wird empfohlen, stattdessen DirectXMath zu verwenden.

Erstellt eine linkshändige perspektivische Projektionsmatrix auf der Grundlage eines Sichtfelds.

Syntax

D3DXMATRIX* D3DXMatrixPerspectiveFovLH(
  _Inout_ D3DXMATRIX *pOut,
  _In_    FLOAT      fovy,
  _In_    FLOAT      Aspect,
  _In_    FLOAT      zn,
  _In_    FLOAT      zf
);

Parameter

pOut [ein, aus]

Typ: D3DXMATRIX*

Zeiger auf die D3DXMATRIX-Struktur , die das Ergebnis des Vorgangs ist.

fovy [in]

Typ: FLOAT

Sichtfeld in y-Richtung, in Bogen.

Aspekt [in]

Typ: FLOAT

Seitenverhältnis, definiert als Ansichtsraumbreite geteilt durch Höhe.

zn [in]

Typ: FLOAT

Z-Wert der Nahansichtsebene.

zf [in]

Typ: FLOAT

Z-Wert der fernen Sichtebene.

Rückgabewert

Typ: D3DXMATRIX*

Zeiger auf eine D3DXMATRIX-Struktur, die eine linkshändige Perspektivprojektionsmatrix ist.

Bemerkungen

Der Rückgabewert für diese Funktion ist derselbe Wert, der im pOut-Parameter zurückgegeben wird. Auf diese Weise kann die D3DXMatrixPerspectiveFovLH-Funktion als Parameter für eine andere Funktion verwendet werden.

Diese Funktion berechnet die zurückgegebene Matrix wie gezeigt:

xScale     0          0               0
0        yScale       0               0
0          0       zf/(zf-zn)         1
0          0       -zn*zf/(zf-zn)     0
where:
yScale = cot(fovY/2)

xScale = yScale / aspect ratio

Anforderungen

Anforderung Wert
Header
D3DX10Math.h
Bibliothek
D3DX10.lib

Siehe auch

Mathematische Funktionen