XMXDECN4 结构 (directxpackedvector.h)
一个 4D 矢量,用于将有符号的规范化值存储为 10 位有符号 x-、y 和 z 分量,并将无符号规范化值存储为 2 位无符号 w 分量。
有关使用 C++ 编程时可用的 XMXDECN4
其他功能(例如构造函数和运算符)的列表,请参阅 XMXDECN4扩展。
语法
struct XMXDECN4 {
union {
struct {
int32_t x : 10;
int32_t y : 10;
int32_t z : 10;
uint32_t w : 2;
};
uint32_t v;
};
void XMXDECN4();
void XMXDECN4(
const XMXDECN4 & unnamedParam1
);
XMXDECN4 & operator=(
const XMXDECN4 & unnamedParam1
);
void XMXDECN4(
XMXDECN4 && unnamedParam1
);
XMXDECN4 & operator=(
XMXDECN4 && unnamedParam1
);
void XMXDECN4(
uint32_t Packed
);
void XMXDECN4(
float _x,
float _y,
float _z,
float _w
) noexcept;
void XMXDECN4(
const float *pArray
) noexcept;
void operator uint32_t() noexcept;
XMXDECN4 & operator=(
uint32_t Packed
) noexcept;
};
成员
x
[-511, 511] 范围内的带符号整数值,用于描述矢量的 x 坐标。
y
[-511, 511] 范围中的带符号整数值,用于描述矢量的 y 坐标。
z
[-511, 511] 范围内的带符号整数值,用于描述矢量的 z 坐标。
w
描述矢量 w 坐标的范围 [0, 3] 中的无符号整数值。
v
表示 4D 向量的无符号 32 位整数。
的默认构造函数 XMXDECN4
。
XMXDECN4 的默认构造函数。
void XMXDECN4 ( const XMXDECN4 & unnamedParam1)
XMXDECN4 的构造函数。
XMXDECN4的构造函数。
XMXDECN4 & operator=( const XMXDECN4 & unnamedParam1)
void XMXDECN4 ( XMXDECN4 && unnamedParam1)
XMXDECN4 的构造函数。
XMXDECN4的构造函数。
XMXDECN4 & operator= ( XMXDECN4 && unnamedParam1)
将 的一个实例中的 XMXDECN4
向量组件数据分配给 的 XMXDECN4
当前实例。
void XMXDECN4 ( uint32_t Packed)
从uint32_t
包含采用打包格式的XMXDECN4
组件数据的变量初始化 的新实例。
此构造函数从uint32_t
包含采用打包格式的组件数据的变量初始化 XMXDECN4 的新实例。
void XMXDECN4 ( float _x、float _y、float _z、float _w) noexcept
从四个规范化float
参数初始化 的新XMXDECN4
实例。
此构造函数从四个规范化float
参数初始化 XMXDECN4 的新实例。
void XMXDECN4 ( const float *pArray) noexcept
从四个元素float
数组参数初始化 XMXDECN4 的新实例。
此构造函数从四个元素float
数组参数初始化 XMXDECN4 的新实例。
void operator uint32_t () noexcept
返回 的实例,该实例 uint32_t
包含打包格式的 XMXDECN4
实例的组件。
以 uint32_t
打包格式返回 包含 XMXDECN4 实例的组件的 实例。
XMXDECN4 & operator= ( uint32_t Packed) noexcept
将 打包在 实例 uint32_t
中的矢量组件数据分配给 的 XMXDECN4
当前实例。
此运算符将 打包在 实例 uint32_t
中的矢量分量数据分配给 XMXDECN4的当前实例。
注解
那些 XMXDECN4
使用浮点参数的构造函数需要规范化输入,对于 x、y-、z 分量,该输入必须在 [-1.0.-1.0] 范围内,对于 w-分量,必须在 0.0 范围内。 在实例化期间,指定 x、y 和 z 分值的输入将乘以 511.0f,将 w 分量乘以 3.0f,这些结果将舍入,然后分配给 的 XMXDECN4
相应成员。
XMXDECN4
可以使用 XMLoadXDecN4 从规范化值加载 XMVECTOR 的实例, XMLoadXDecN4 将 x、y-和 z 分量除以 511.0f,w 分量除以 3.0f,将结果舍入,然后将组件分配给实例 XMVECTOR
。
XMVECTOR
包含规范化值的实例可以使用 XMStoreXDecN4 存储到 中XMXDECN4
,该函数将 x、y 和 z 分量乘以 511.0f,将 w 分量乘以 3.0f,将结果舍入,然后将值分配给相应的XMXDECN4
成员。
命名 空间: 使用 DirectX::P ackedVector
平台要求
Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012 以及 Windows SDK for Windows 8。 支持 Win32 桌面应用、Windows 应用商店应用和 Windows Phone 8 应用。要求
标头 | directxpackedvector.h |