D3DXMatrixLookAtLH function (D3dx9math.h)
Note
The D3DX utility library is deprecated. We recommend that you use DirectXMath instead.
Builds a left-handed, look-at matrix.
Syntax
D3DXMATRIX* D3DXMatrixLookAtLH(
_Inout_ D3DXMATRIX *pOut,
_In_ const D3DXVECTOR3 *pEye,
_In_ const D3DXVECTOR3 *pAt,
_In_ const D3DXVECTOR3 *pUp
);
Parameters
-
pOut [in, out]
-
Type: D3DXMATRIX*
Pointer to the D3DXMATRIX structure that is the result of the operation.
-
pEye [in]
-
Type: const D3DXVECTOR3*
Pointer to the D3DXVECTOR3 structure that defines the eye point. This value is used in translation.
-
pAt [in]
-
Type: const D3DXVECTOR3*
Pointer to the D3DXVECTOR3 structure that defines the camera look-at target.
-
pUp [in]
-
Type: const D3DXVECTOR3*
Pointer to the D3DXVECTOR3 structure that defines the current world's up, usually [0, 1, 0].
Return value
Type: D3DXMATRIX*
Pointer to a D3DXMATRIX structure that is a left-handed, look-at matrix.
Remarks
The return value for this function is the same value returned in the pOut parameter. In this way, the D3DXMatrixLookAtLH function can be used as a parameter for another function.
This function uses the following formula to compute the returned matrix.
zaxis = normal(At - Eye)
xaxis = normal(cross(Up, zaxis))
yaxis = cross(zaxis, xaxis)
xaxis.x yaxis.x zaxis.x 0
xaxis.y yaxis.y zaxis.y 0
xaxis.z yaxis.z zaxis.z 0
-dot(xaxis, eye) -dot(yaxis, eye) -dot(zaxis, eye) 1
Requirements
Requirement | Value |
---|---|
Header |
|
Library |
|
See also