DX 11 XNA Math XNA Math 1 XMFLOAT

  • Slides: 8
Download presentation
DX 11 XNA Math

DX 11 XNA Math

XNA Math – 계산(벡터 변환) (1) • XMFLOAT* (XMFLOAT 2, 3, 4) : XMVECTOR로

XNA Math – 계산(벡터 변환) (1) • XMFLOAT* (XMFLOAT 2, 3, 4) : XMVECTOR로 변 환해서 계산해야 한다. • XMFLOAT* -> XMVECTOR 변환함수: – XMVECTOR XMLoad. Float 2(CONST XMFLOAT 2 *p. Source); • XMVECTOR -> XMFLOAT* 변환함수: – VOID XMStore. Float 2(XMFLOAT 2 *p. Destination, FXMVECTOR V);

XNA Math – 계산(벡터 변환) (2) • 기타 XMVECTOR 함수 – – FLOAT XMVector.

XNA Math – 계산(벡터 변환) (2) • 기타 XMVECTOR 함수 – – FLOAT XMVector. Get. X(FXMVECTOR V); XMVector. Get. Y(FXMVECTOR V); XMVector. Get. Z(FXMVECTOR V); XMVector. Get. W(FXMVECTOR V); – – XMVECTOR w); XMVector. Set. X(FXMVECTOR V, FLOAT x); XMVector. Set. Y(FXMVECTOR V, FLOAT y); XMVector. Set. Z(FXMVECTOR V, FLOAT z); XMVector. Set. W(FXMVECTOR V, FLOAT

XNA Math – 매개변수 전달(1) • 매개 변수 전달 규칙이 플랫폼(32 bit Windows, 64

XNA Math – 매개변수 전달(1) • 매개 변수 전달 규칙이 플랫폼(32 bit Windows, 64 bit Windows, Xbox 360) 마다 다르다 – //32비트 Windows typedef const XMVECTOR FXMVECTOR; typedef const XMVECTOR& CXMVECTOR; – //64비트 Windows typedef const XMVECTOR& FXMVECTOR; typedef const XMVECTOR& CXMVECTOR;

XNA Math – 매개변수 전달(2) • 매개변수를 참조를 전달하느냐 복사본을 전달하느냐의 차이 • XMVECTOR

XNA Math – 매개변수 전달(2) • 매개변수를 참조를 전달하느냐 복사본을 전달하느냐의 차이 • XMVECTOR 매개 변수를 전달할때 – 처음 3개의 XMVECTOR 매개 변수는 반드시 FXMVECTOR 형식. – 그외는 반드시 CXMVECTOR 형식. – XMINLINE XMMATRIX XMMatrix. Transformation( FXMVECTOR Scaling. Origin, FXMVECTOR Scaling. Orientation. Quaternion, FXMVECTOR Scaling, CXMVECTOR ~, CXMVECTOR ~); • 중간에 다른 형식이 껴있어도 그 변수 제외하고 3개가 FXMVECTOR 형식 이어야 함.

XNA Math - 상수벡터 • 상수(const) XMVECTOR 인스턴스에는 반드 시 XMVECTORF 32 형식을 사용해야

XNA Math - 상수벡터 • 상수(const) XMVECTOR 인스턴스에는 반드 시 XMVECTORF 32 형식을 사용해야 한다. – 예) static const XMMVECTORF 32 g_v. Half. Vector = {0. 5 f, 0. 5 f }; • 즉, 초기화 구문을 사용하고자 할때에는 XMVECTORF 32 를 사용해야함. • XMVECTORU 32 : 정수 – 예) static const XMVECTORU 32 v. Grab. Y = { 0 x 0000, 0 x. FFFF, 0 x 00000000 };