XMConvertFloatToHalfStream
XMConvertHalfToFloatStream
XMMatrixDecompose
XMPlaneTransformStream
XMVector2TransformCoordStream
XMVector2TransformNormalStream
XMVector2TransformStream
XMVector3ProjectStream
XMVector3TransformCoordStream
XMVector3TransformNormalStream
XMVector3TransformStream
XMVector3UnprojectStream
XMVector4TransformStream
Expand Minimize

XMVector2Reflect method

Reflects an incident 2D vector across a 2D normal vector.

Syntax


XMVECTOR XMVector2Reflect(
  [in]  XMVECTOR Incident,
  [in]  XMVECTOR Normal
);

Parameters

Incident [in]

2D incident vector to reflect.

Normal [in]

2D 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);	// 2.0 * dot(Incident, Normal);

Result.x = Incident.x - s * Normal.x;
Result.y = Incident.y - s * Normal.y;
Result.z = undefined;
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

Namespace

Use DirectX.

Header

DirectXMath.h

 

 

Community Additions

ADD
Show:
© 2014 Microsoft