XMVector3Reflect function (directxmath.h)
Reflects an incident 3D vector across a 3D normal vector.
Syntax
XMVECTOR XM_CALLCONV XMVector3Reflect(
[in] FXMVECTOR Incident,
[in] FXMVECTOR Normal
) noexcept;
Parameters
[in] Incident
3D incident vector to reflect.
[in] Normal
3D normal vector to reflect the incident vector across.
Return value
Returns the reflected incident angle.
Remarks
The following pseudocode demonstrates the operation of the function:
XMVECTOR Result;
float s = 2.0f * ( Incident.x * Normal.x + Incident.y * Normal.y + Incident.z * Normal.z );
Result.x = Incident.x - s * Normal.x;
Result.y = Incident.y - s * Normal.y;
Result.z = Incident.z - s * Normal.z;
Result.w = undefined;
return Result;
Platform Requirements
Microsoft Visual Studio 2010 or Microsoft Visual Studio 2012 with the Windows SDK for Windows 8. Supported for Win32 desktop apps, Windows Store apps, and Windows Phone 8 apps.Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Header | directxmath.h (include DirectXMath.h) |