XMUDECN4 结构 (directxpackedvector.h)

一个 4D 矢量,用于将无符号规范化整数值存储为 10 位无符号 x、y 和 z 分量和 2 位无符号 w 分量。

有关使用 C++ 编程时可用的 XMUDECN4 更多功能(例如构造函数和运算符)的列表,请参阅 XMUDECN4 扩展

注意有关等效D3DDECLTYPED3DFORMAT和DXGI_FORMAT对象的信息,请参阅 DirectXMath 库类型等效项。
 

语法

struct XMUDECN4 {
  union {
    struct {
      uint32_t x : 10;
      uint32_t y : 10;
      uint32_t z : 10;
      uint32_t w : 2;
    };
             uint32_t v;
  };
  void       XMUDECN4();
  void       XMUDECN4(
    const XMUDECN4 & unnamedParam1
  );
  XMUDECN4 & operator=(
    const XMUDECN4 & unnamedParam1
  );
  void       XMUDECN4(
    XMUDECN4 && unnamedParam1
  );
  XMUDECN4 & operator=(
    XMUDECN4 && unnamedParam1
  );
  void       XMUDECN4(
    uint32_t Packed
  ) noexcept;
  void       XMUDECN4(
    float _x,
    float _y,
    float _z,
    float _w
  ) noexcept;
  void       XMUDECN4(
    const float *pArray
  ) noexcept;
  void       operator uint32_t() noexcept;
  XMUDECN4 & operator=(
    uint32_t Packed
  ) noexcept;
};

成员

x

[0, 1023] 范围内的无符号整数值,用于描述矢量的 x 坐标。

y

[0, 1023] 范围内的无符号整数值,用于描述矢量的 y 坐标。

z

描述矢量 z 坐标的范围 [0, 1023] 中的无符号整数值。

w

描述矢量 w 坐标的范围 [0, 3] 中的无符号整数值。

v

表示 4D 向量的无符号 32 位整数。

void XMUDECN4 ()

的默认构造函数 XMUDECN4

XMUDECN4 的默认构造函数。

注意 此构造函数仅在 C++ 下可用。
 

void XMUDECN4 ( const XMUDECN4 & unnamedParam1)

XMUDECN4构造函数。

XMUDECN4 的构造函数。

注意 此构造函数仅在 C++ 下可用。

XMUDECN4 & operator=( const XMUDECN4 & unnamedParam1)

void XMUDECN4 ( XMUDECN4 && unnamedParam1)

XMUDECN4构造函数。

XMUDECN4 的构造函数。

注意 此构造函数仅在 C++ 下可用。

XMUDECN4 & operator= ( XMUDECN4 && unnamedParam1)

将 的一个实例中的 XMUDECN4 向量组件数据分配给 的 XMUDECN4当前实例。

此运算符将 XMUDECN4 的一个实例中的向量分量数据分配给 的 XMUDECN4当前实例。

注意 此运算符仅在 C++ 下可用。

void XMUDECN4 ( uint32_t Packed) noexcept

uint32_t包含采用打包格式的XMUDECN4组件数据的变量初始化 的新实例。

此构造函数从uint32_t包含采用打包格式的组件数据的变量初始化 XMUDECN4 的新实例。

注意 此构造函数仅在 C++ 下可用。
 

void XMUDECN4 ( float _x、float _y、float _z、float _w) noexcept

此构造函数从四个规范化float参数初始化 XMUDECN4 的新实例。

注意 此构造函数仅在 C++ 下可用。
 

void XMUDECN4 ( const float *pArray) noexcept

从四元素float数组参数初始化 XMUDECN4 的新实例。

此构造函数从四个元素float数组参数初始化 XMUDECN4 的新实例。

注意 此构造函数仅在 C++ 下可用。

void 运算符 uint32_t () noexcept

返回 的实例,该实例 uint32_t 包含打包格式的 XMUDECN4 实例的组件。

uint32_t 打包格式返回 包含 XMUDECN4 实例的组件的 实例。

注意 此运算符仅在 C++ 下可用。
 

XMUDECN4 & operator= ( uint32_t Packed) noexcept

将 打包在 实例 uint32_t 中的矢量组件数据分配给 的 XMUDECN4当前实例。

此运算符将 打包在 实例 uint32_t 中的矢量分量数据分配给 XMUDECN4的当前实例。

注意 此运算符仅在 C++ 下可用。
 

注解

那些 XMUDECN4 使用浮点参数的构造函数需要规范化输入,该输入必须在 [0.-1.0] 范围内。 在实例化期间,指定 x、y 和 z 分值的输入将乘以 1023.0f,w 分量乘以 3.0f。 结果四舍五入,然后分配给 的 XMUDECN4相应成员。

可以使用 XMUDECN4XMLoadUDecN4 从规范化值加载 XMVECTOR 的实例,该函数将 x、y-和 z 分量除以 1023.0f,将 w 分量除以 3.0f,对结果进行舍入,然后将组件分配给实例XMVECTOR

XMVECTOR包含规范化值的实例可以使用 XMStoreUDecN4 存储到 中XMUDECN4,该函数将 x、y 和 z 分量乘以 1023.0f,将 w 分量乘以 3.0f,并在将值分配给相应XMUDECN4成员之前舍入结果。

命名 空间: 使用 DirectX::P ackedVector

平台要求

Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012 以及 Windows SDK for Windows 8。 支持 Win32 桌面应用、Windows 应用商店应用和 Windows Phone 8 应用。

要求

要求
Header directxpackedvector.h

另请参阅

DirectXMath 库结构

XMUDECN4扩展