Function directx_math::template::XMVectorPermute [−][src]
pub fn XMVectorPermute(
V1: FXMVECTOR,
V2: FXMVECTOR,
PermuteX: u32,
PermuteY: u32,
PermuteZ: u32,
PermuteW: u32
) -> XMVECTOR
Permutes the components of two vectors to create a new vector.
Parameters
V1
First vector.
V2
Second vector.
PermuteX
Index form 0-7
indicating where the X
component of the new vector should be copied from.
PermuteY
Index form 0-7
indicating where the Y
component of the new vector should be copied from.
PermuteZ
Index form 0-7
indicating where the Z
component of the new vector should be copied from.
PermuteW
Index form 0-7
indicating where the W
component of the new vector should be copied from.
Return value
Returns the permuted vector that resulted from combining the source vectors.
Remarks
If all 4 indices reference only a single vector (i.e. they are all in the range 0-3
or all in the range 4-7
),
use XMVectorSwizzle
instead for better performance.
The XM_PERMUTE_
constants are provided to use as input values for PermuteX
, PermuteY
, PermuteZ
, and PermuteW
.
For constant PermuteX/Y/Z/W parameters, it may more efficent to use the template form of XMVectorPermute
https://docs.microsoft.com/en-us/windows/win32/api/directxmath/nf-directxmath-XMVectorPermute