XMUBYTEN4 结构 (directxpackedvector.h)

一个 3D 矢量,用于将无符号规范化值存储为有符号 8 位 (1 字节) 整数。

有关使用 C++ 编程时可用的 XMUBYTEN4 其他功能(如构造函数和运算符)的列表,请参阅 XMUBYTEN4 Extensions

注意有关等效D3DDECLTYPE、D3DFORMATDXGI_FORMAT对象的信息,请参阅 DirectXMath 库类型等效项。
 

语法

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

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

y

[0, 255] 范围内的无符号 8 位整数值,用于描述向量的 y 坐标。

z

[0, 255] 范围内的无符号 8 位整数值,用于描述矢量的 z 坐标。

w

[0, 255] 范围内的无符号 8 位整数值,用于描述矢量的 w 坐标。

v

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

void XMUBYTEN4 ()

的默认构造函数 XMUBYTEN4

XMUBYTEN4 的默认构造函数

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

void XMUBYTEN4 ( const XMUBYTEN4 & unnamedParam1)

的构造函数 XMUBYTEN4

XMUBYTEN4 的构造函数

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

XMUBYTEN4 & operator=( const XMUBYTEN4 & unnamedParam1)

void XMUBYTEN4 ( XMUBYTEN4 && unnamedParam1)

的构造函数 XMUBYTEN4

XMUBYTEN4 的构造函数

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

XMUBYTEN4 & operator= ( XMUBYTEN4 && unnamedParam1)

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

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

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

void XMUBYTEN4 ( uint8_t _x、uint8_t _y、uint8_t _z、uint8_t _w) noexcept

从四uint8_t个参数初始化 的新XMUBYTEN4实例。

此构造函数从四uint8_t个参数初始化 XMUBYTEN4 的新实例。

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

void XMUBYTEN4 ( uint32_t Packed) noexcept

uint32_t包含组件数据的变量以打包格式初始化 的新实例XMUBYTEN4

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

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

void XMUBYTEN4 ( const uint8_t *pArray) noexcept

从四个元素uint8_t数组参数初始化 XMUBYTEN4 的新实例。

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

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

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

从四float个参数初始化 的新XMUBYTEN4实例。

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

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

void XMUBYTEN4 ( const float *pArray) noexcept

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

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

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

XMUBYTEN4 & operator=( uint32_t Packed) noexcept

注解

那些 XMUBYTEN4 使用浮点参数的构造函数需要规范化输入,该输入必须在 [0.0.-1.0] 范围内。 在实例化期间,这些数据乘以 255.0f,将结果舍入,然后分配给 的相应成员 XMUBYTEN4

XMUBYTEN4 可以使用 XMLoadUByteN4 从规范化值加载 XMVECTOR 的实例,该 XMLoadUByteN4 将每个组件除为 255.0f,将结果舍入,然后将组件分配给实例 XMVECTOR

XMVECTOR 可以使用 XMStoreUByteN4 将包含规范化值的实例存储到 中 XMUBYTEN4 ,该 XMStoreUByteN4 将每个组件乘以 255.0f,将结果舍入,然后再将这些值分配给相应的 XMUBYTEN4 成员。

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

平台要求

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

要求

   
标头 directxpackedvector.h

另请参阅

DirectXMath 库结构

XMUBYTEN4扩展