다음을 통해 공유


XMQuaternionMultiply 함수(directxmath.h)

두 쿼터니언의 곱을 계산합니다.

구문

XMVECTOR XM_CALLCONV XMQuaternionMultiply(
  [in] FXMVECTOR Q1,
  [in] FXMVECTOR Q2
) noexcept;

매개 변수

[in] Q1

첫 번째 4원수입니다.

[in] Q2

두 번째 4원수입니다.

반환 값

두 쿼터니언의 곱을 2*분기1분기로 반환합니다.

설명

DirectXMath 쿼터니언 함수는 XMVECTOR 4-벡터를 사용하여 쿼터니언을 나타냅니다. 여기서 X, Y 및 Z 구성 요소는 벡터 부분이고 W 구성 요소는 스칼라 부분입니다.

이 함수는 일반적으로 회전을 나타내는 쿼터니언(즉, Q2*Q1 반환)을 연결하기 위해 사용되므로 결과는 회전 Q1 다음에 XMMatrixMulplity 연결과 일치하도록 회전 Q2를 나타냅니다.

이 함수는 다음 의사 코드에 해당하는 를 계산합니다.


XMVECTOR Result;
Result.x = (Q2.w * Q1.x) + (Q2.x * Q1.w) + (Q2.y * Q1.z) - (Q2.z * Q1.y);
Result.y = (Q2.w * Q1.y) - (Q2.x * Q1.z) + (Q2.y * Q1.w) + (Q2.z * Q1.x);
Result.z = (Q2.w * Q1.z) + (Q2.x * Q1.y) - (Q2.y * Q1.x) + (Q2.z * Q1.w);
Result.w = (Q2.w * Q1.w) - (Q2.x * Q1.x) - (Q2.y * Q1.y) - (Q2.z * Q1.z);
return Result;
    

플랫폼 요구 사항

Windows 8 Windows SDK를 사용하는 Microsoft Visual Studio 2010 또는 Microsoft Visual Studio 2012. Win32 데스크톱 앱, Windows 스토어 앱 및 Windows Phone 8개 앱에서 지원됩니다.

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 directxmath.h

추가 정보

DirectXMath 라이브러리 Quaternion 함수