티스토리 뷰

builds a left- handed, look-at matirx.

 

syntax

c++

D3DMATRIX* D3DMatrixLookAtLH(

_Inout_            D3DMATRIX*    pOut,

_In_      const   D3DXVECTOR3* pEye,

_In_      const   D3DXVECTOR3* pAt,

_In_      const   D3DXVECTOR3* pUp     );

 

Parameters

pOut - Pointer to the D3DXMATRIX structure that is the result of the operation.

pEye - Pointer to the D3DXVECTOR3 structure that defines the eye point. This value is used in translation.

pAt - Pointer to the D3DXVECTOR3 structure that defines the camera look-at target.

pUp - Pointer th the D3DXVECTOR3 structure that defines the current world's up, usually [0,1,0].

 

Return value

Pointer to a D3DMATRIX 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 

 

Header

D3dx9math.h

Library

D3dx9.lib

 

cf - D3DMatrixLookAtRH

source is...

댓글