Funzione XMVectorPermute (directxmath.h)
Permuta i componenti di due vettori per creare un nuovo vettore.
Sintassi
XMVECTOR XM_CALLCONV XMVectorPermute(
[in] FXMVECTOR V1,
[in] FXMVECTOR V2,
uint32_t PermuteX,
uint32_t PermuteY,
uint32_t PermuteZ,
uint32_t PermuteW
) noexcept;
Parametri
[in] V1
Primo vettore.
[in] V2
Secondo vettore.
PermuteX
Modulo di indice 0-7 che indica dove deve essere copiato il componente X del nuovo vettore.
PermuteY
Modulo di indice 0-7 che indica dove deve essere copiato il componente Y del nuovo vettore.
PermuteZ
Modulo di indice 0-7 che indica dove deve essere copiato il componente Z del nuovo vettore.
PermuteW
Modulo di indice 0-7 che indica dove deve essere copiato il componente W del nuovo vettore.
Valore restituito
Restituisce il vettore permutato risultante dalla combinazione dei vettori di origine.
Commenti
Se tutti i 4 indici fanno riferimento solo a un singolo vettore (ovvero tutti nell'intervallo 0-3 o tutti nell'intervallo 4-7), usare XMVectorSwizzle per ottenere prestazioni migliori.
Le costanti XM_PERMUTE_ vengono fornite per l'uso come valori di input per PermuteX, PermuteY,PermuteZ e PermuteW.
Per i parametri PermuteX/Y/Z/W costanti, è molto più efficiente usare la forma di modello XMVectorPermute:
template<uint32_t PermuteX, uint32_t PermuteY, uint32_t PermuteZ, uint32_t PermuteW>
XMVECTOR XMVectorPermute(FXMVECTOR V1, FXMVECTOR V2)
Example: XMVectorPermute<XM_PERMUTE_0Z, XM_PERMUTE_1X, XM_PERMUTE_0W, XM_PERMUTE_1Y>( V1, V2 );
XMVectorPermute
è nuova per DirectXMath. La libreria XNAMath v2.x ha usato XMVectorPermuteControl
, un controllo XMVECTOR
anziché 4 indici per XMVectorPermute
e ha usato valori diversi per le costanti XM_PERMUTE_x.Requisiti della piattaforma
Microsoft Visual Studio 2010 o Microsoft Visual Studio 2012 con Windows SDK per Windows 8. Supportato per app desktop Win32, app di Windows Store e Windows Phone 8 app.Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | directxmath.h (include DirectXMath.h) |