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