Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This function builds a left-handed, look-at matrix in floating point format.

Syntax

D3DMXMATRIX* WINAPI D3DMXMatrixLookAtLH(
  D3DMXMATRIX*	
pOut,
  CONST D3DMXVECTOR3* 
pEye,
  CONST D3DMXVECTOR3* 
pAt,
  CONST D3DMXVECTOR3* 
pUp
);

Parameters

pOut

[in, out] Pointer to the D3DMXMATRIXstructure that is the result of the operation.

pEye

[in] Pointer to the D3DMXVECTOR3structure that defines the eye point. This value is used in translation.

pAt

[in] Pointer to the D3DXVECTOR3structure that defines the camera look-at target.

pUp

[in] Pointer to the D3DXVECTOR3structure that defines the current world's up, usually [0, 1, 0].

Return Value

Pointer to a D3DMXMATRIXstructure that is a left-handed, look-at matrix.

Remarks

The return value for this function is the same value returned in the pOutparameter. In this way, the D3DXMatrixLookAtLHfunction can be used as a parameter for another function.

This function uses the following formula to compute the returned matrix.

Copy Code
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

Header d3dmx.h
Library D3dmx.lib
Windows Embedded CE Windows Embedded CE 6.0 and later
Windows Mobile Pocket PC for Windows Mobile Version 5.0 and later, Smartphone for Windows Mobile Version 5.0 and later

See Also