다음을 통해 공유


XMFLOAT3SE 구조체(directxpackedvector.h)

각각 동일한 5비트 지수를 공유하는 9비트 매니타사가 있는 3개의 부동 소수점 구성 요소의 3D 벡터를 설명합니다.

C++에서 프로그래밍할 때 사용할 XMFLOAT3SE 수 있는 생성자 및 연산자와 같은 추가 기능 목록은 XMFLOAT3SE 확장을 참조하세요.

구문

struct XMFLOAT3SE {
  union {
    struct {
      uint32_t xm : 9;
      uint32_t ym : 9;
      uint32_t zm : 9;
      uint32_t e : 5;
    };
      uint32_t v;
  };
  void         XMFLOAT3SE();
  void         XMFLOAT3SE(
    const XMFLOAT3SE & unnamedParam1
  );
  XMFLOAT3SE & operator=(
    const XMFLOAT3SE & unnamedParam1
  );
  void         XMFLOAT3SE(
    XMFLOAT3SE && unnamedParam1
  );
  XMFLOAT3SE & operator=(
    XMFLOAT3SE && unnamedParam1
  );
  void         XMFLOAT3SE(
    uint32_t Packed
  ) noexcept;
  void         XMFLOAT3SE(
    float _x,
    float _y,
    float _z
  ) noexcept;
  void         XMFLOAT3SE(
    const float *pArray
  ) noexcept;
  void         operator uint32_t() noexcept;
  XMFLOAT3SE & operator=(
    uint32_t Packed
  ) noexcept;
};

멤버

9 xm

9비트 x 구성 요소입니다.

9 ym

9비트 y 구성 요소입니다.

9 zm

9비트 z 구성 요소입니다.

5 e

5비트 공유 지수입니다.

v

3D 벡터를 나타내는 부호 없는 32비트 정수입니다.

void XMFLOAT3SE()

에 대 한 기본 생성자 XMFLOAT3SE합니다.

XMFLOAT3SE 기본 생성자입니다.

참고 이 생성자는 C++에서만 사용할 수 있습니다.
 

void XMFLOAT3SE( const XMFLOAT3SE & unnamedParam1)

에 대한 생성자입니다 XMFLOAT3SE.

XMFLOAT3SE 생성자입니다.

참고 이 생성자는 C++에서만 사용할 수 있습니다.

XMFLOAT3SE & operator=( const XMFLOAT3SE & unnamedParam1)

void XMFLOAT3SE( XMFLOAT3SE && unnamedParam1)

에 대한 생성자입니다 XMFLOAT3SE.

XMFLOAT3SE 생성자입니다.

참고 이 생성자는 C++에서만 사용할 수 있습니다.

XMFLOAT3SE & operator=( XMFLOAT3SE && unnamedParam1)

void XMFLOAT3SE( uint32_t Packed) noexcept

압축된 형식의 구성 요소 데이터를 포함하는 변수에서 uint32_tXMFLOAT3SE 새 instance 초기화합니다.

이 생성자는 압축된 형식의 구성 요소 데이터를 포함하는 변수에서 uint32_tXMFLOAT3SE 새 instance 초기화합니다.

참고 이 생성자는 C++에서만 사용할 수 있습니다.
 

void XMFLOAT3SE( float _x, float _y, float _z) noexcept

float 인수에서 의 XMFLOAT3SE 새 instance 초기화합니다.

이 생성자는 세 float 인수에서 XMFLOAT3SE 새 instance 초기화합니다.

참고 이 생성자는 C++에서만 사용할 수 있습니다.
 

void XMFLOAT3SE( const float *pArray) noexcept

세 요소 float 배열 인수에서 XMFLOAT3SE 새 instance 초기화합니다.

이 생성자는 3개의 요소 float 배열 인수에서 XMFLOAT3SE 새 instance 초기화합니다.

참고 이 생성자는 C++에서만 사용할 수 있습니다.

void 연산자 uint32_t() noexcept

압축된 형식으로 uint32_t instance 구성 요소를 포함하는 의 instance 반환합니다 XMFLOAT3SE .

이 연산자는 압축된 형식으로 uint32_t XMFLOAT3SE instance 구성 요소를 포함하는 의 instance 반환합니다.

참고 이 연산자는 C++에서만 사용할 수 있습니다.
 

XMFLOAT3SE & operator=( uint32_t Packed) noexcept

이 연산자는 의 instance uint32_t 압축된 벡터 구성 요소 데이터를 현재 XMFLOAT3SE instance 할당합니다.

참고 이 연산자는 C++에서만 사용할 수 있습니다.
 

설명

의 instance XMFLOAT3SE 세 구성 요소의 값은 다음 형식으로 instance v에 저장됩니다. 구조체의 XMFLOAT3SEe 멤버( 세 구성 요소 XMFLOAT3SE 모두의 부동 소수점 값의 매니타사가 공유하는 지수)는 반환 값의 가장 높은 순서 비트에 저장되고 x 구성 요소의 매니티사는 가장 중요한 비트에 저장됩니다.


   (E5Z9Y9X9): [31] EEEEEzzz zzzzzzyy yyyyyyyx xxxxxxxx [0]

또는 자세히 설명합니다.

  • Packed의 비트 0-8은 x 구성 요소의 부동 소수점 값인 현재 구조체의 xm 멤버인 9비트 매니티사입니다.
  • Packed의 비트 9-17은 y 구성 요소의 부동 소수점 값인 현재 구조체의 ym 멤버의 9비트 매니타사입니다.
  • Packed의 비트 18-26은 z 구성 요소의 부동 소수점 값인 현재 구조체의 zm 멤버인 9비트 매니티사입니다.
  • Packed의 비트 27-31은 각 구성 요소의 크기를 나타내기 위해 저장된 매니티사(xm, ym, zm)와 함께 사용되는 5비트 지수입니다. 현재 구조체의 e 멤버입니다.
구조체에 구성 요소를 저장하기 위한 형식의 부호 비트가 XMFLOAT3SE 없으므로 모든 구성 요소 값은 양수입니다.

XMFLOAT3SEXMLoadFloat3SE를 사용하여 XMVECTOR 인스턴스에 로드할 수 있습니다.

인스턴스 XMVECTORXMStoreFloat3SE를 사용하여 의 XMFLOAT3SE instance 저장할 수 있습니다.

네임 스페이스: DirectX::P ackedVector 사용

플랫폼 요구 사항

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

요구 사항

   
머리글 directxpackedvector.h

추가 정보

DirectXMath 라이브러리 구조

XMFLOAT3SE 확장