D3DXMatrixPerspectiveFovRH 函数 (D3DX10Math.h)

注意

D3DX10 实用工具库已弃用。 建议改用 DirectXMath

根据视野构建一个右手透视投影矩阵。

语法

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

参数

pOut [in, out]

类型: D3DXMATRIX*

指向操作结果的 D3DXMATRIX 结构的指针。

fovy [in]

类型: FLOAT

y 方向的视野,以弧度表示。

Aspect [in]

类型: FLOAT

纵横比,定义为视图空间宽度除以高度。

zn [in]

类型: FLOAT

近视平面的 Z 值。

zf [in]

类型: FLOAT

远视图平面的 Z 值。

返回值

类型: D3DXMATRIX*

指向 D3DXMATRIX 结构的指针,该结构是右手透视投影矩阵。

备注

此函数的返回值与 pOut 参数中返回的值相同。 这样,D3DXMatrixPerspectiveFovRH 函数就可用作另一个函数的参数。

此函数计算返回的矩阵,如下所示。

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

xScale = yScale / aspect ratio

要求

要求
标头
D3DX10Math.h

D3DX10.lib

另请参阅

数学函数