Freigeben über


XMVector3Reflect-Funktion (directxmath.h)

Spiegelt einen Incident-3D-Vektor über einen normalen 3D-Vektor wider.

Syntax

XMVECTOR XM_CALLCONV XMVector3Reflect(
  [in] FXMVECTOR Incident,
  [in] FXMVECTOR Normal
) noexcept;

Parameter

[in] Incident

3D-Incidentvektor, der reflektiert werden soll.

[in] Normal

Normalvektor 3D, um den Incidentvektor widerzuspiegeln.

Rückgabewert

Gibt den reflektierten Incidentwinkel zurück.

Hinweise

Der folgende Pseudocode veranschaulicht den Betrieb der Funktion:

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;

Plattformanforderungen

Microsoft Visual Studio 2010 oder Microsoft Visual Studio 2012 mit dem Windows SDK für Windows 8. Unterstützt für Win32-Desktop-Apps, Windows Store-Apps und Windows Phone 8-Apps.

Anforderungen

   
Zielplattform Windows
Kopfzeile directxmath.h (einschließlich DirectXMath.h)

Weitere Informationen

Geometrische Funktionen der DirectXMath-Bibliothek mit 3D-Vektoren