XMUDEC4 structure (directxpackedvector.h)

A 4D vector with x-,y-, and z- components represented as 10 bit unsigned integer values, and the w-component as a 2 bit unsigned integer value.

For a list of additional functionality such as constructors and operators that are available using XMUDEC4 when you are programming in C++, see XMUDEC4 Extensions.

Note  See DirectXMath Library Type Equivalences for information about equivalent D3DDECLTYPE, D3DFORMAT, and DXGI_FORMAT objects.
 

Syntax

struct XMUDEC4 {
  union {
    struct {
      uint32_t x : 10;
      uint32_t y : 10;
      uint32_t z : 10;
      uint32_t w : 2;
    };
             uint32_t v;
  };
  void      XMUDEC4();
  void      XMUDEC4(
    const XMUDEC4 & unnamedParam1
  );
  XMUDEC4 & operator=(
    const XMUDEC4 & unnamedParam1
  );
  void      XMUDEC4(
    XMUDEC4 && unnamedParam1
  );
  XMUDEC4 & operator=(
    XMUDEC4 && unnamedParam1
  );
  void      XMUDEC4(
    uint32_t Packed
  ) noexcept;
  void      XMUDEC4(
    float _x,
    float _y,
    float _z,
    float _w
  ) noexcept;
  void      XMUDEC4(
    const float *pArray
  ) noexcept;
  void      operator uint32_t() noexcept;
  XMUDEC4 & operator=(
    uint32_t Packed
  ) noexcept;
};

Members

x

Unsigned integer value in the range [0, 1023] describing the x-coordinate of the vector.

y

Unsigned integer value in the range [0, 1023] describing the y-coordinate of the vector.

z

Unsigned integer value in the range [0, 1023] describing the z-coordinate of the vector.

w

Unsigned integer value in the range [0, 3] describing the w-coordinate of the vector.

v

Unsigned 32-bit integer representing the 4D vector.

void XMUDEC4()

Default constructor for XMUDEC4.

Default constructor for XMUDEC4 .

Note  This constructor is only available under C++.
 

void XMUDEC4( const XMUDEC4 & unnamedParam1)

A constructor for XMUDEC4.

A constructor for XMUDEC4.

Note  This constructor is only available under C++.
 

XMUDEC4 & operator=( const XMUDEC4 & unnamedParam1)

void XMUDEC4( XMUDEC4 && unnamedParam1)

A constructor for XMUDEC4.

A constructor for XMUDEC4.

Note  This constructor is only available under C++.
 

XMUDEC4 & operator=( XMUDEC4 && unnamedParam1)

void XMUDEC4( uint32_t Packed) noexcept

Initializes a new instance of XMUDEC4 from a uint32_t variable containing component data in a packed format.

This constructor initializes a new instance of XMUDEC4 from a uint32_t variable containing component data in a packed format.

Note  This constructor is only available under C++.
 

void XMUDEC4( float _x, float _y, float _z, float _w) noexcept

Initializes a new instance of XMUDEC4 from four float arguments.

This constructor initializes a new instance of XMUDEC4 from four float arguments.

Note  This constructor is only available under C++.
 

void XMUDEC4( const float *pArray) noexcept

Initializes a new instance of XMUDEC4 from a four element float array argument.

This constructor initializes a new instance of XMUDEC4 from a four element float array argument.

Note  This constructor is only available under C++.

void operator uint32_t() noexcept

Returns an instance of uint32_t containing the components of the XMUDEC4 instance in a packed format.

This operator returns an instance of uint32_t containing the components of the XMUDEC4 instance in a packed format.

Note  This operator is only available under C++.
 

XMUDEC4 & operator=( uint32_t Packed) noexcept

Assigns the vector component data packed in an instance of uint32_t to the current instance of XMUDEC4.

This operator assigns the vector component data packed in an instance of uint32_t to the current instance of XMUDEC4.

Note  This operator is only available under C++.

Remarks

XMUDEC4 can be loaded into instances of XMVECTOR by using XMLoadUDec4.

Instances of XMVECTOR can be stored into an instance of XMUDEC4 with XMStoreUDec4.

Namespace: Use DirectX::PackedVector

Platform Requirements

Microsoft Visual Studio 2010 or Microsoft Visual Studio 2012 with the Windows SDK for Windows 8. Supported for Win32 desktop apps, Windows Store apps, and Windows Phone 8 apps.

Requirements

Requirement Value
Header directxpackedvector.h

See also

DirectXMath Library Structures

XMUDEC4 Extensions