структура XMUBYTEN4 (directxpackedvector.h)
Трехмерный вектор для хранения неподписанных нормализованных значений в виде 8-разрядных (1-байтовых) целых чисел со знаком.
Список дополнительных функций, таких как конструкторы и операторы, доступные при XMUBYTEN4
программировании на C++, см. в разделе расширения XMUBYTEN4.
Синтаксис
struct XMUBYTEN4 {
union {
struct {
uint8_t x;
uint8_t y;
uint8_t z;
uint8_t w;
};
uint32_t v;
};
void XMUBYTEN4();
void XMUBYTEN4(
const XMUBYTEN4 & unnamedParam1
);
XMUBYTEN4 & operator=(
const XMUBYTEN4 & unnamedParam1
);
void XMUBYTEN4(
XMUBYTEN4 && unnamedParam1
);
XMUBYTEN4 & operator=(
XMUBYTEN4 && unnamedParam1
);
void XMUBYTEN4(
uint8_t _x,
uint8_t _y,
uint8_t _z,
uint8_t _w
) noexcept;
void XMUBYTEN4(
uint32_t Packed
) noexcept;
void XMUBYTEN4(
const uint8_t *pArray
) noexcept;
void XMUBYTEN4(
float _x,
float _y,
float _z,
float _w
) noexcept;
void XMUBYTEN4(
const float *pArray
) noexcept;
XMUBYTEN4 & operator=(
uint32_t Packed
) noexcept;
};
Члены
x
8-битовое целочисленное значение без знака в диапазоне [0, 255], описывающее координату X вектора.
y
8-битовое целочисленное значение без знака в диапазоне [0, 255], описывающее координату Y вектора.
z
8-битовое целочисленное значение без знака в диапазоне [0, 255], описывающее Z-координату вектора.
w
8-битовое целочисленное значение без знака в диапазоне [0, 255], описывающее w-координату вектора.
v
32-разрядное целое число без знака, представляющее вектор 4D.
Конструктор по умолчанию для XMUBYTEN4
Конструктор по умолчанию для XMUBYTEN4
void XMUBYTEN4( const XMUBYTEN4 & unnamedParam1)
Конструктор для XMUBYTEN4
Конструктор для XMUBYTEN4
XMUBYTEN4 & operator=( const XMUBYTEN4 & unnamedParam1)
void XMUBYTEN4( XMUBYTEN4 && без имениParam1)
Конструктор для XMUBYTEN4
Конструктор для XMUBYTEN4
XMUBYTEN4 & operator=( XMUBYTEN4 && unnamedParam1)
Назначает данные компонента вектора из одного экземпляра XMUBYTEN4 текущему экземпляру XMUBYTEN4.
Этот оператор назначает данные компонента вектора из одного экземпляра XMUBYTEN4 текущему экземпляру XMUBYTEN4.
void XMUBYTEN4( uint8_t _x, uint8_t _y, uint8_t _z, uint8_t _w) noexcept
Инициализирует новый экземпляр из XMUBYTEN4
четырех uint8_t
аргументов.
Этот конструктор инициализирует новый экземпляр XMUBYTEN4 из четырех uint8_t
аргументов.
void XMUBYTEN4( uint32_t Упаковано) noexcept
Инициализирует новый экземпляр из XMUBYTEN4
переменной uint32_t
, содержащей данные компонента в упакованном формате.
Этот конструктор инициализирует новый экземпляр XMUBYTEN4 из переменной uint32_t
, содержащей данные компонента в упакованном формате.
void XMUBYTEN4( const uint8_t *pArray) noexcept
Инициализирует новый экземпляр XMUBYTEN4 из аргумента массива с четырьмя элементами uint8_t
.
Этот конструктор инициализирует новый экземпляр XMUBYTEN4 из аргумента массива четырех элементов uint8_t
.
void XMUBYTEN4( float _x, float _y, float _z, float _w) noexcept
Инициализирует новый экземпляр из XMUBYTEN4
четырех float
аргументов.
Этот конструктор инициализирует новый экземпляр XMUBYTEN4 из четырех float
аргументов.
void XMUBYTEN4( const float *pArray) noexcept
Инициализирует новый экземпляр XMUBYTEN4 из аргумента массива с четырьмя элементами float
.
Этот конструктор инициализирует новый экземпляр XMUBYTEN4 из аргумента массива четырех элементов float
.
XMUBYTEN4 & operator=( uint32_t Packed) noexcept
Комментарии
Эти XMUBYTEN4
конструкторы, использующие аргументы с плавающей запятой, требуют нормализованных входных данных, которые должны находиться в диапазоне [0.0.-1.0]. Во время создания экземпляра эти данные умножаются на 255,0f, результаты округляются, а затем присваиваются соответствующим членам XMUBYTEN4
.
XMUBYTEN4
можно использовать для загрузки экземпляров XMVECTOR из нормализованных значений с помощью XMLoadUByteN4, который делит каждый компонент 255.0f, округляет результат, а затем назначает компоненты экземпляру XMVECTOR
.
XMVECTOR
Экземпляры, содержащие нормализованные значения, можно сохранить в XMUBYTEN4
с помощью XMStoreUByteN4, который умножает каждый компонент на 255,0f, округляя результат, прежде чем присваивать значения соответствующим XMUBYTEN4
членам.
Пространства имен: Использование DirectX::P ackedVector
Требования к платформе
Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и Windows Phone 8 приложений.Требования
Верхняя часть | directxpackedvector.h |