D3DXMatrixOrthoOffCenterLH 函数 (D3DX10Math.h)
注意
D3DX10 实用工具库已弃用。 建议改用 DirectXMath 。
生成自定义的左手正交投影矩阵。
语法
D3DXMATRIX* D3DXMatrixOrthoOffCenterLH(
_Inout_ D3DXMATRIX *pOut,
_In_ FLOAT l,
_In_ FLOAT r,
_In_ FLOAT b,
_In_ FLOAT t,
_In_ FLOAT zn,
_In_ FLOAT zf
);
参数
-
pOut [in, out]
-
类型: D3DXMATRIX*
指向生成的 D3DXMATRIX 的指针。
-
l [in]
-
类型: FLOAT
视图卷的最小 x 值。
-
r [in]
-
类型: FLOAT
视图卷的最大 x 值。
-
b [in]
-
类型: FLOAT
视图卷的最小 y 值。
-
t [in]
-
类型: FLOAT
视图卷的最大 y 值。
-
zn [in]
-
类型: FLOAT
视图卷的最小 z 值。
-
zf [in]
-
类型: FLOAT
视图卷的最大 z 值。
返回值
类型: D3DXMATRIX*
指向生成的 D3DXMATRIX 的指针。
备注
D3DXMatrixOrthoLH 是 D3DXMatrixOrthoOffCenterLH 函数的一种特例。 若要使用 D3DXMatrixOrthoOffCenterLH 创建相同的投影,请使用以下值:
l = -w/2,
r = w/2,
b = -h/2, and
t = h/2。
D3DXMatrixOrthoOffCenterLH 函数的所有参数都是相机空间中的距离。 参数描述视图卷的尺寸。
此函数的返回值与 pOut 参数中返回的值相同。 这样,D3DXMatrixOrthoOffCenterLH 函数可用作另一个函数的参数。
此函数使用以下公式计算返回的矩阵。
2/(r-l) 0 0 0
0 2/(t-b) 0 0
0 0 1/(zf-zn) 0
(l+r)/(l-r) (t+b)/(b-t) zn/(zn-zf) 1
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|
另请参阅