XMVector3Reflect 関数 (directxmath.h)
3D 法線ベクトル全体にインシデント 3D ベクトルを反映します。
構文
XMVECTOR XM_CALLCONV XMVector3Reflect(
[in] FXMVECTOR Incident,
[in] FXMVECTOR Normal
) noexcept;
パラメーター
[in] Incident
反映する 3D インシデント ベクトル。
[in] Normal
インシデント ベクトルを全体に反映する 3D 法線ベクトル。
戻り値
反射されたインシデントの角度を返します。
解説
次の擬似コードは、 関数の操作を示しています。
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;
プラットフォームの要件
Windows SDK for Windows 8 を使用する Microsoft Visual Studio 2010 または Microsoft Visual Studio 2012。 Win32 デスクトップ アプリ、Windows ストア アプリ、Windows Phone 8 アプリでサポートされます。要件
対象プラットフォーム | Windows |
ヘッダー | directxmath.h (DirectXMath.h を含む) |