XMUSHORTN2 structure (directxpackedvector.h)

A 2D vector for storing unsigned, normalized values as unsigned 16-bit integers, (type uint16_t).

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

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

Syntax

struct XMUSHORTN2 {
  union {
    struct {
      uint16_t x;
      uint16_t y;
    };
    uint32_t v;
  };
  void                   XMUSHORTN2();
  void                   XMUSHORTN2(
    const XMUSHORTN2 & 
  );
  XMUSHORTN2 &           operator=(
    const XMUSHORTN2 & 
  );
  void                   XMUSHORTN2(
    XMUSHORTN2 && 
  );
  XMUSHORTN2 &           operator=(
    XMUSHORTN2 && 
  );
  noexcept               XMUSHORTN2(
    uint32_t Packed
  );
  noexcept               XMUSHORTN2(
    uint16_t _x,
    uint16_t _y
  );
  noexcept               XMUSHORTN2(
    const uint16_t *pArray
  );
  noexcept               XMUSHORTN2(
    float _x,
    float _y
  );
  noexcept               XMUSHORTN2(
    const float *pArray
  );
  XMUSHORTN2 &  noexcept operator=(
    uint32_t Packed
  );
};

Members

x

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

y

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

v

void XMUSHORTN2()

Default constructor for XMUSHORTN2.

Default constructor for XMUSHORTN2.

Note  This constructor is only available under C++.
 

void XMUSHORTN2( const XMUSHORTN2 & )

A constructor for XMUSHORTN2.

A constructor for XMUSHORTN2.

Note  This constructor is only available under C++.

XMUSHORTN2 & operator=( const XMUSHORTN2 & )

Assigns the vector component data from one instance of XMUSHORTN2 to the current instance of XMUSHORTN2.

This operator assigns the vector component data from one instance of XMUSHORTN2 to the current instance of XMUSHORTN2.

Note  This operator is only available under C++.

void XMUSHORTN2( XMUSHORTN2 && )

A constructor for XMUSHORTN2.

A constructor for XMUSHORTN2.

Note  This constructor is only available under C++.

XMUSHORTN2 & operator=( XMUSHORTN2 && )

noexcept XMUSHORTN2( uint32_t Packed)

A constructor for XMUSHORTN2.

A constructor for XMUSHORTN2.

Note  This constructor is only available under C++.

noexcept XMUSHORTN2( uint16_t _x, uint16_t _y)

Initializes a new instance of XMUSHORTN2 from two uint16_t arguments.

This constructor initializes a new instance of XMUSHORTN2 from two uint16_t arguments.

Note  This constructor is only available under C++.
 

noexcept XMUSHORTN2( const uint16_t *pArray)

Initializes a new instance of XMUSHORTN2 from a two element uint16_t array argument.

This constructor initializes a new instance of XMUSHORTN2 from a from a two element uint16_t array argument.

Note  This constructor is only available under C++.

noexcept XMUSHORTN2( float _x, float _y)

Initializes a new instance of XMUSHORTN2 from two normalized floatarguments.

This constructor initializes a new instance of XMUSHORTN2 from two normalized float arguments.

Note  This constructor is only available under C++.
 

noexcept XMUSHORTN2( const float *pArray)

A constructor for XMUSHORTN2.

A constructor for XMUSHORTN2.

Note  This constructor is only available under C++.

XMUSHORTN2 & noexcept operator=( uint32_t Packed)

Remarks

Those XMUSHORTN2 constructors using floating point arguments require normalized input, which must be in the range of [0.0.-1.0]. During instantiation, data is multiplied by 65535.0f, results are rounded, and then assigned to the appropriate members of XMUSHORTN2.

You can use XMUSHORTN2 to load instances of XMVECTOR from normalized values by using XMLoadShortN4, which divides each component 65535.0f, rounds the result, and then assigns the components to an XMVECTOR instance.

You can store XMVECTOR instances containing normalized values into XMUSHORTN2using XMStoreShortN4, which multiplies each component by 65535.0f and rounds the result before assigning the values to the appropriate XMUSHORTN2 members.

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

   
Header directxpackedvector.h

See also

DirectXMath Library Structures

XMUSHORTN2 Extensions