Partager via


Modèle XMVectorPermute

Permute les composants de deux vecteurs pour créer un vecteur.

Syntaxe

template<uint32_t PermuteX, uint32_t PermuteY, uint32_t PermuteZ, uint32_t PermuteW> XMVECTOR XMVectorPermute(
  [in]  XMVECTOR V1,
  [in]  XMVECTOR V2
);

Paramètres

V1

[in] Premier vecteur.

V2

[in] Deuxième vecteur.

Valeur renvoyée

Retourne le vecteur permuté résultant de la combinaison des vecteurs sources.

Notes

Si les 4 index font référence à un seul vecteur (c’est-à-dire qu’ils se trouvent tous dans la plage 0-3 ou tous dans la plage 4-7), utilisez XMVectorSwizzle à la place pour de meilleures performances.

Notez que la bibliothèque utilise des spécialisations de modèle sur certaines plateformes pour améliorer les performances. Tous les cas de miroir possibles ne sont pas implémentés pour ces cas spéciaux. Par conséquent, préférez les permutations où l’élément X du vecteur résultant provient du paramètre V1 plutôt que du paramètre V2. Par exemple, préférez utiliser XMVectorPermute<0,1,4,5>(A,B); à XMVectorPermute(4,5,0,1)(B,A);.

Cette fonction est une version de modèle de XMVectorPermute où les arguments Permute* sont des valeurs de modèle.

Les constantes XM_PERMUTE_ sont fournies pour être utilisées comme valeurs d’entrée pour PermuteX, PermuteY, PermuteZ et PermuteW.

Notes

Le XMVectorPermute modèle est nouveau pour DirectXMath et n’est pas disponible pour XNAMath 2.x.

 

Espace de noms : utiliser DirectX

Conditions requises par la plateforme

Microsoft Visual Studio 2010 ou Microsoft Visual Studio 2012 avec le SDK Windows pour Windows 8. Pris en charge pour les applications de bureau Win32, les applications du Windows Store et les applications Windows Phone 8.

Spécifications

Condition requise Valeur
En-tête
DirectXMath.h

Voir aussi

Fonctions de modèle de bibliothèque DirectXMath

XMVectorSwizzle