XMVector4Cross function (directxmath.h)
Computes the 4D cross product.
Syntax
XMVECTOR XM_CALLCONV XMVector4Cross(
[in] FXMVECTOR V1,
[in] FXMVECTOR V2,
[in] FXMVECTOR V3
) noexcept;
Parameters
[in] V1
4D vector.
[in] V2
4D vector.
[in] V3
4D vector.
Return value
Returns the 4D cross product of V1, V2, and V3.
Remarks
A 4D cross-product is not well-defined. This function computes a geometric analog to the 3D cross product. XMVector4Orthogonal is another generalized 'cross-product' for 4D vectors.
The following pseudocode demonstrates the operation of the function:
XMVECTOR Result;
Result.x = V1.y * (V2.z * V3.w - V3.z * V2.w)
- V1.z * (V2.y * V3.w - V3.y * V2.w )
+ V1.w * (V2.y * V3.z - V3.y * V2.z);
Result.y = V1.x * (V3.z * V2.w - V2.z * V3.w)
- V1.z * (V3.x * V2.w - V2.x * V3.w)
+ V1.w * (V3.x * V2.z - V2.x * V3.z);
Result.z = V1.x * (V2.y * V3.w - V3.y * V2.w)
- V1.y * (V2.x * V3.w - V3.x * V2.w)
+ V1.w * (V2.x * V3.y - V3.x * V2.y);
Result.w = V1.x * (V3.y * V2.z - V2.y * V3.z)
- V1.y * (V3.x * V2.z - V2.x * V3.z)
+ V1.z * (V3.x * V2.y - V2.x * V3.y);
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) |