UnsafeNativeMethods.Matrix.LookAtLH(Matrix,Vector3,Vector3,Vector3) Method (Microsoft.DirectX)
Builds a left-handed look-at matrix.
Note: For programming in Microsoft Visual Basic .NET or Microsoft JScript .NET, use the equivalent method in the Microsoft.DirectX structures.
Definition
Visual Basic Public Shared Function LookAtLH( _
ByVal pOut As Matrix, _
ByVal cameraPosition As Vector3, _
ByVal cameraTarget As Vector3, _
ByVal cameraUpVector As Vector3 _
) As MatrixC# public static Matrix LookAtLH(
Matrix pOut,
Vector3 cameraPosition,
Vector3 cameraTarget,
Vector3 cameraUpVector
);C++ public:
static Matrix LookAtLH(
Matrix pOut,
Vector3 cameraPosition,
Vector3 cameraTarget,
Vector3 cameraUpVector
);JScript public static function LookAtLH(
pOut : Matrix,
cameraPosition : Vector3,
cameraTarget : Vector3,
cameraUpVector : Vector3
) : Matrix;
Parameters
pOut Microsoft.DirectX.Matrix
A Matrix structure that is a left-handed look-at matrix.cameraPosition Microsoft.DirectX.Vector3
A Vector3 structure that defines the camera point. This value is used in translation.cameraTarget Microsoft.DirectX.Vector3
A Vector3 structure that defines the camera look-at target.cameraUpVector Microsoft.DirectX.Vector3
A Vector3 structure that defines the up direction of the current world, usually [0, 1, 0].
Return Value
Microsoft.DirectX.Matrix
A Matrix structure that is a left-handed look-at matrix.
Remarks
This method uses the following formula to compute the returned matrix.
zaxis = normal(cameraTarget - cameraPosition) xaxis = normal(cross(cameraUpVector, 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, cameraPosition) -dot(yaxis, cameraPosition) -dot(zaxis, cameraPosition) 1
The return value for this method is the same value returned in the pOut parameter. This allows you to use the LookAtLH method as a parameter for another method.
See Also