Normalizes the coefficients of a plane so that coefficients of x, y, and z form a unit normal vector.
XMVECTOR XMPlaneNormalize(
XMVECTOR P
)
P
Type: XMVECTOR
XMVECTOR describing the plane coefficients (A, B, C, D) for the plane equation
XMVECTOR Result;
float LengthSq = P.x * P.x + P.y * P.y + P.z * P.z;
float ReciprocalLength = 1.0f / sqrt(LengthSq);
Result.x = P.x * ReciprocalLength;
Result.y = P.y * ReciprocalLength;
Result.z = P.z * ReciprocalLength;
Result.w = P.w * ReciprocalLength;
return Result;
.
Type: XMVECTOR
Returns the normalized plane as a 4D vector whose components are the plane coefficients (A, B, C, D) for the plane equation Ax+By+Cz+D=0.
The following pseudocode demonstrates the operation of the function:
Ax+By+Cz+D=0
Header: Declared in directxmath.h.