XMMATRIX 구조체(directxmath.h)
4개의 하드웨어 벡터 레지스터에 매핑되는 16비트 경계에 맞춰진 4*4 행렬을 설명합니다.
DirectXMath는 행 주 행렬, 행 벡터 및 사전 곱셈을 사용합니다. 손수는 사용되는 함수 버전(RH 및 LH)에 따라 결정됩니다.
C++에서 프로그래밍할 때 사용할 XMMATRIX
수 있는 생성자 및 연산자와 같은 추가 기능 목록은 XMMATRIX 확장을 참조하세요.
구문
struct XMMATRIX {
union {
XMVECTOR r[4];
struct {
float _11;
float _12;
float _13;
float _14;
float _21;
float _22;
float _23;
float _24;
float _31;
float _32;
float _33;
float _34;
float _41;
float _42;
float _43;
float _44;
};
float m[4][4];
};
XMVECTOR r[4];
void XMMATRIX();
void XMMATRIX(
const XMMATRIX & unnamedParam1
);
XMMATRIX & operator=(
const XMMATRIX & M
) noexcept;
XMMATRIX & operator=(
const XMMATRIX & unnamedParam1
);
void XMMATRIX(
XMMATRIX && unnamedParam1
);
XMMATRIX & operator=(
XMMATRIX && unnamedParam1
);
void XMMATRIX(
FXMVECTOR R0,
FXMVECTOR R1,
FXMVECTOR R2,
CXMVECTOR R3
) noexcept;
void XMMATRIX(
float m00,
float m01,
float m02,
float m03,
float m10,
float m11,
float m12,
float m13,
float m20,
float m21,
float m22,
float m23,
float m30,
float m31,
float m32,
float m33
) noexcept;
void XMMATRIX(
const float *pArray
) noexcept;
float operator()(
size_t Row,
size_t Column
) noexcept;
float & operator()(
size_t Row,
size_t Column
) noexcept;
XMMATRIX operator+() noexcept;
XMMATRIX operator-() noexcept;
XMMATRIX &XM_CALLCONV operator+=(
FXMMATRIX M
) noexcept;
XMMATRIX &XM_CALLCONV operator-=(
FXMMATRIX M
) noexcept;
XMMATRIX &XM_CALLCONV operator*=(
FXMMATRIX M
) noexcept;
XMMATRIX & operator*=(
float S
) noexcept;
XMMATRIX & operator/=(
float S
) noexcept;
XMMATRIX XM_CALLCONV operator+(
FXMMATRIX M
) noexcept;
XMMATRIX XM_CALLCONV operator-(
FXMMATRIX M
) noexcept;
XMMATRIX XM_CALLCONV operator*(
FXMMATRIX M
) noexcept;
XMMATRIX operator*(
float S
) noexcept;
XMMATRIX operator/(
float S
) noexcept;
};
멤버
r[4]
행렬의 행을 나타내는 4개의 벡터 배열입니다.
_11
_12
_13
_14
_21
_22
_23
_24
_31
_32
_33
_34
_41
_42
_43
_44
m[4]
에 대 한 기본 생성자 XMMATRIX
합니다.
XMMATRIX의 기본 생성자입니다.
void XMMATRIX( const XMMATRIX & unnamedParam1)
에 대한 생성자입니다 XMMATRIX
.
XMMATRIX에 대한 생성자입니다.
XMMATRIX & operator=( const XMMATRIX & M) noexcept
의 현재 instance XMMATRIX
XMMATRIX
의 instance 행렬 데이터를 할당하고 를 현재 instance 반환 reference
합니다.
이 연산자는 XMMATRIX의 한 instance 행렬 데이터를 의 현재 instance XMMATRIX
할당하고 를 현재 instance 반환합니다reference
.
XMMATRIX & operator=( const XMMATRIX & unnamedParam1)
void XMMATRIX( XMMATRIX && unnamedParam1)
XMMATRIX & operator=( XMMATRIX && unnamedParam1)
void XMMATRIX( FXMVECTOR R0, FXMVECTOR R1, FXMVECTOR R2, CXMVECTOR R3) noexcept
4개의 인스턴스에서 XMMATRIX 구조체의 새 instance 초기화합니다XMVECTOR
.
XMVECTOR 데이터 형식의 4개 인스턴스에서 XMMATRIX 구조체의 새 instance 초기화합니다.
16개의 스칼라 float
값에서 구조체의 XMMATRIX
새 instance 초기화합니다.
16개의 스칼라 float
값에서 XMMATRIX 구조체의 새 instance 초기화합니다.
void XMMATRIX( const float *pArray) noexcept
16개의 요소 float
배열에서 XMMATRIX 구조체의 새 instance 초기화합니다.
16개의 요소 float
배열에서 XMMATRIX 구조체의 새 instance 초기화합니다.
float operator()( size_t Row, size_t Column) noexcept
float & operator()( size_t Row, size_t Column) noexcept
reference
행 및 열 인수에 지정된 대로 instance XMMATRIX
행렬 요소에 를 반환합니다.
이 연산자는 reference
행 및 열 인수에 지정된 대로 instance XMMATRIX의 행렬 요소에 를 반환합니다.
XMMATRIX operator+() noexcept
XMMATRIX operator-() noexcept
XMMATRIX &XM_CALLCONV operator+=( FXMMATRIX M) noexcept
XMMATRIX &XM_CALLCONV operator-=( FXMMATRIX M) noexcept
XMMATRIX &XM_CALLCONV operator*=( FXMMATRIX M) noexcept
의 현재 instance 다른 instance XMMATRIX
XMMATRIX
행렬 곱셈을 수행하고 업데이트된 현재 instance 대한 참조를 반환합니다.
이 연산자는 XMMATRIX의 현재 instance 다른 instance XMMATRIX
행렬 곱셈을 수행하고 업데이트된 현재 instance 대한 참조를 반환합니다.
XMMATRIX & operator*=( float S) noexcept
XMMATRIX & operator/=( float S) noexcept
XMMATRIX XM_CALLCONV operator+( FXMMATRIX M) noexcept
XMMATRIX XM_CALLCONV operator-( FXMMATRIX M) noexcept
XMMATRIX XM_CALLCONV operator*( FXMMATRIX M) noexcept
의 현재 instance 의 다른 instance XMMATRIX
행렬 곱셈을 XMMATRIX
수행합니다.
이 연산자는 XMMATRIX의 현재 instance 의 다른 instance 행렬 곱셈을 XMMATRIX
수행합니다.
XMMATRIX operator*( float S) noexcept
XMMATRIX operator/( float S) noexcept
설명
DirectXMath.h 헤더 파일에서 시스템은 개체, 특히 CXMMATRIX에 XMMATRIX
대한 별칭을 사용합니다.
헤더는 별칭을 사용하여 다양한 컴파일러의 최적의 인라인 호출 규칙을 준수합니다. DirectXMath를 사용하는 대부분의 프로젝트에서는 이를 에 대한 정확한 별칭으로 처리하기에 충분합니다 XMMATRIX
.
효과적 으로:
typedef const XMMATRIX CXMMATRIX;
다양한 플랫폼의 호출 규칙을 처리하는 방법에 대한 자세한 정보가 필요한 프로젝트는 라이브러리 내부를 참조하세요.
XMMATRIX
는 row-major이고 를 매개 변수로 수락 XMMATRIX
하는 모든 DirectXMath 함수는 데이터가 행 주로 구성될 것으로 예상합니다.
의 XMMATRIX
데이터에는 다음과 같은 레이아웃이 있습니다.
_11 _12 _13 _14
_21 _22 _23 _24
_31 _32 _33 _34
_41 _42 _43 _44
DirectXMath는 XMMATRIX 를 완전히 불투명한 형식으로 정의합니다. XMMATRIX의 개별 요소에 액세스하려면 지정된 행에 대한 XMFLOAT4 또는 전체 행렬의 XMFLOAT4X4 같은 동등한 형식을 사용합니다.
XMMATRIX
_11 ~ _44 멤버와 m 배열 멤버가 있는 공용 구조체로 정의됩니다. 이러한 조합원을 사용하는 경우 성능이 저하됩니다. DirectXMath.h는 _XM_NO_INTRINSICS_ 사용하여 앱을 빌드할 때 이러한 XMMATRIX
공용 구조체 멤버를 여전히 정의합니다. XNAMath 버전 2.05는 DirectXMath 동작을 적용하는 옵트인 XM_STRICT_XMMATRIX 제공합니다.플랫폼 요구 사항
Windows 8 Windows SDK를 사용하는 Microsoft Visual Studio 2010 또는 Microsoft Visual Studio 2012. Win32 데스크톱 앱, Windows 스토어 앱 및 Windows Phone 8개 앱에 지원됩니다.요구 사항
요구 사항 | 값 |
---|---|
헤더 | directxmath.h |