Поделиться через


Структура XMU555 (directxpackedvector.h)

4D-вектор с компонентами x-,y-, и z-, представленными в виде 5-разрядных целочисленных значений без знака, а w-компонент — в виде 1-битового целочисленного значения.

Список дополнительных функций, таких как конструкторы и операторы, доступные при XMU555 программировании на C++, см. в разделе Расширения XMU555.

Синтаксис

struct XMU555 {
  union {
    struct {
      uint16_t x : 5;
      uint16_t y : 5;
      uint16_t z : 5;
      uint16_t w : 1;
    };
      uint16_t v;
  };
  void     XMU555();
  void     XMU555(
    const XMU555 & unnamedParam1
  );
  XMU555 & operator=(
    const XMU555 & unnamedParam1
  );
  void     XMU555(
    XMU555 && unnamedParam1
  );
  XMU555 & operator=(
    XMU555 && unnamedParam1
  );
  void     XMU555(
    uint16_t Packed
  ) noexcept;
  void     XMU555(
    uint8_t _x,
    uint8_t _y,
    uint8_t _z,
    bool    _w
  ) noexcept;
  void     XMU555(
    const uint8_t *pArray,
    bool          _w
  ) noexcept;
  void     XMU555(
    float _x,
    float _y,
    float _z,
    bool  _w
  ) noexcept;
  void     XMU555(
    const float *pArray,
    bool        _w
  ) noexcept;
  void     operator uint16_t() noexcept;
  XMU555 & operator=(
    uint16_t Packed
  ) noexcept;
};

Члены

5 x

5-битовое целое число без знака в диапазоне [0,31], описывающее координату X вектора.

5 y

5-битовое целое число без знака в диапазоне [0,31], описывающее координату Y вектора.

5 z

5-битовое целочисленное значение без знака в диапазоне [0,31], описывающее z-координату вектора.

1 w

1-битовое целое значение в диапазоне [0,31], описывающее w-координату вектора.

v

Неподписанный короткий, представляющий 4D-вектор.

void XMU555()

Конструктор по умолчанию для XMU555

Конструктор по умолчанию для XMU555

Примечание Это доступно только для разработки на C++.
 

void XMU555( const XMU555 & unnamedParam1)

Конструктор для XMU555.

Конструктор для XMU555.

Примечание Это доступно только для разработки на C++.

XMU555 & operator=( const XMU555 & unnamedParam1)

void XMU555( XMU555 && unnamedParam1)

Конструктор для XMU555.

Конструктор для XMU555.

Примечание Это доступно только для разработки на C++.

XMU555 & operator=( XMU555 && unnamedParam1)

Назначает данные компонента вектора из одного экземпляра XMU555 в текущий XMU555экземпляр .

Этот оператор назначает данные компонента вектора из одного экземпляра XMU555 текущему экземпляру XMU555.

void XMU555( uint16_t Упакованы) noexcept

Инициализирует новый экземпляр XMU555 из переменной uint16_t , содержащей данные компонента в упакованном формате.

Этот конструктор инициализирует новый экземпляр XMU555 из переменной uint16_t , содержащей данные компонента в упакованном формате.

Примечание Этот конструктор доступен только в C++.
 

void XMU555( uint8_t _x, uint8_t _y, uint8_t _z, bool _w) noexcept

Инициализирует новый экземпляр XMU555 из трех int8_t и одного bool аргументов.

Этот конструктор инициализирует новый экземпляр XMU555 из трех int8_t (с указанием компонентов x, y и z) и одного bool (с указанием w-component) аргументов.

Примечание Это доступно только для разработки на C++.

void XMU555( const uint8_t *pArray, bool _w) noexcept

Инициализирует новый экземпляр XMU555 из массива из трех элементов int8_t и одного bool аргумента.

Этот конструктор инициализирует новый экземпляр XMU555 из трехэлементного int8_t массива (с указанием x-, y- и z-component) и одного <bool аргумента (с указанием w-компонента).

Примечание Это доступно только для разработки на C++.

void XMU555( float _x, float _y, float _z, bool _w) noexcept

Инициализирует новый экземпляр из XMU555 трех float и одного bool аргументов.

Этот конструктор инициализирует новый экземпляр XMU555 из трех float (с указанием x-, y-, и z-component) и одного bool (с указанием w-component) аргументов.

Примечание Этот конструктор доступен только в C++.
 

void XMU555( const float *pArray, bool _w) noexcept

Инициализирует новый экземпляр XMU555 из массива из трех элементов float и одного bool аргумента.

Этот конструктор инициализирует новый экземпляр XMU555 из трехэлементного float массива (с указанием x-, y- и z-component) и одного bool аргумента (с указанием w-компонента).

Примечание Это доступно только для разработки на C++.

оператор void uint16_t() noexcept

Возвращает экземпляр класса , uint16_t содержащий компоненты экземпляра XMU555 в упакованном формате.

Этот оператор возвращает экземпляр класса , uint16_t содержащий компоненты экземпляра XMU555 в упакованном формате.

Примечание Этот оператор доступен только в C++.
 

XMU555 & operator=( uint16_t Упакованы) noexcept

Назначает данные компонента вектора, упакованные в экземпляр uint16_t , текущему экземпляру XMU555.

Назначает данные компонента вектора, упакованные в экземпляр uint16_t , текущему экземпляру XMU555.

Примечание Этот оператор доступен только в C++.
 

Комментарии

XMU555 можно загрузить в экземпляры XMVECTOR с помощью XMLoadU555.

Экземпляры XMVECTOR могут храниться в экземпляре XMU555 с XMStoreU555.

Пространства имен: Использование DirectX::P ackedVector

Требования к платформе

Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и приложений Windows Phone 8.

Требования

   
Верхняя часть directxpackedvector.h

См. также раздел

Структуры библиотек DirectXMath

Расширения XMU555