XMVectorSelectControl 함수(directxmath.h)
XMVectorSelect에서 사용할 컨트롤 벡터를 정의합니다.
구문
XMVECTOR XM_CALLCONV XMVectorSelectControl(
[in] uint32_t VectorIndex0,
[in] uint32_t VectorIndex1,
[in] uint32_t VectorIndex2,
[in] uint32_t VectorIndex3
) noexcept;
매개 변수
[in] VectorIndex0
XMVectorSelect에서 선택할 벡터를 결정하는 인덱스입니다. 0이면 첫 번째 벡터의 첫 번째 구성 요소가 선택됩니다. 그렇지 않으면 두 번째 벡터의 구성 요소가 선택됩니다.
[in] VectorIndex1
XMVectorSelect에서 선택할 벡터를 결정하는 인덱스입니다. 0이면 첫 번째 벡터의 두 번째 구성 요소가 선택됩니다. 그렇지 않으면 두 번째 벡터의 구성 요소가 선택됩니다.
[in] VectorIndex2
XMVectorSelect에서 선택할 벡터를 결정하는 인덱스입니다. 0이면 첫 번째 벡터의 세 번째 구성 요소가 선택됩니다. 그렇지 않으면 두 번째 벡터의 구성 요소가 선택됩니다.
[in] VectorIndex3
XMVectorSelect에서 선택할 벡터를 결정하는 인덱스입니다. 0이면 첫 번째 벡터의 네 번째 구성 요소가 선택됩니다. 그렇지 않으면 두 번째 벡터의 구성 요소가 선택됩니다.
반환 값
컨트롤 벡터를 반환합니다.
설명
다음 의사 코드는 함수의 작업을 보여 줍니다.
XMVECTOR ControlVector;
const uint32_t ControlElement[] =
{
XM_SELECT_0,
XM_SELECT_1
};
assert(VectorIndex0 < 2);
assert(VectorIndex1 < 2);
assert(VectorIndex2 < 2);
assert(VectorIndex3 < 2);
ControlVector.u[0] = ControlElement[VectorIndex0];
ControlVector.u[1] = ControlElement[VectorIndex1];
ControlVector.u[2] = ControlElement[VectorIndex2];
ControlVector.u[3] = ControlElement[VectorIndex3];
return ControlVector;
플랫폼 요구 사항
Windows 8 Windows SDK를 사용하는 Microsoft Visual Studio 2010 또는 Microsoft Visual Studio 2012. Win32 데스크톱 앱, Windows 스토어 앱 및 Windows Phone 8개 앱에 지원됩니다.예제
XMVectorSelectControl 사용
이 예제에서 XMVectorSelectControl 은 첫 번째 벡터에서 x 및 w 구성 요소를 선택하고 두 번째 벡터의 y 및 z 구성 요소를 선택하는 컨트롤 마스크를 생성하는 데 사용됩니다.
벡터 결과는 ( 3.0f, 5.0f, 5.0f, 3.0f )입니다.
XMVECTOR three = XMVectorReplicate( 3.0f );
XMVECTOR five = XMVectorReplicate( 5.0f );
XMVECTOR control = XMVectorSelectControl( 0, 1, 1, 0 );
XMVECTOR result = XMVectorSelect( three, five, control );
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | directxmath.h(DirectXMath.h 포함) |