Шаблон XMVectorPermute
Перемежает компоненты двух векторов, чтобы создать новый вектор.
Синтаксис
template<uint32_t PermuteX, uint32_t PermuteY, uint32_t PermuteZ, uint32_t PermuteW> XMVECTOR XMVectorPermute(
[in] XMVECTOR V1,
[in] XMVECTOR V2
);
Параметры
-
Версия 1
-
[in] Первый вектор.
-
Версия 2
-
[in] Второй вектор.
Возвращаемое значение
Возвращает пермутированный вектор, полученный в результате объединения исходных векторов.
Комментарии
Если все 4 индекса ссылаются только на один вектор (т. е. все они находятся в диапазоне 0–3 или все в диапазоне 4–7), для повышения производительности используйте XMVectorSwizzle .
Обратите внимание, что библиотека использует специализации шаблонов на некоторых платформах для повышения производительности. Не все возможные зеркало варианты реализованы для этих особых случаев, поэтому отдавайте предпочтение переставлениям, когда элемент X результирующего вектора поступает из параметра V1, а не из параметра V2. Например, предпочитать использовать XMVectorPermute<0,1,4,5>(A,B);
для XMVectorPermute(4,5,0,1)(B,A);
.
Эта функция является версией шаблона XMVectorPermute , где аргументы Permute* являются значениями шаблона.
Константы XM_PERMUTE_ предоставляются для использования в качестве входных значений для PermuteX, PermuteY, PermuteZ и PermuteW.
Примечание
Шаблон XMVectorPermute
является новым для DirectXMath и недоступен для XNAMath 2.x.
Пространство имен: использование DirectX
Требования к платформе
Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и Windows Phone 8 приложений.
Требования
Требование | Значение |
---|---|
Заголовок |
|
См. также раздел