estrutura XMUDECN4 (directxpackedvector.h)

Um vetor 4D para armazenar valores inteiros não assinados e normalizados como componentes x, y e z sem sinal de 10 bits e um w-component sem sinal de 2 bits.

Para obter uma lista de mais funcionalidades, como construtores e operadores que estão disponíveis usando XMUDECN4 quando você está programando no C++, consulte extensões de XMUDECN4.

Nota Consulte Equivalências de tipo de biblioteca DirectXMath para obter informações sobre objetos de D3DDECLTYPE, D3DFORMAT e DXGI_FORMAT equivalentes.
 

Sintaxe

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;
};

Membros

x

Valor inteiro sem sinal no intervalo [0, 1023] que descreve a coordenada x do vetor.

y

Valor inteiro sem sinal no intervalo [0, 1023] que descreve a coordenada y do vetor.

z

Valor inteiro sem sinal no intervalo [0, 1023] descrevendo a coordenada z do vetor.

w

Valor inteiro sem sinal no intervalo [0, 3] descrevendo a coordenada w do vetor.

v

Inteiro de 32 bits sem sinal que representa o vetor 4D.

void XMUDECN4()

Construtor padrão para XMUDECN4.

Construtor padrão para XMUDECN4 .

Nota Esse construtor só está disponível em C++.
 

void XMUDECN4( const XMUDECN4 & unnamedParam1)

Um construtor para XMUDECN4.

Um construtor para XMUDECN4 .

Nota Esse construtor só está disponível em C++.

XMUDECN4 & operator=( const XMUDECN4 & unnamedParam1)

void XMUDECN4( XMUDECN4 && unnamedParam1)

Um construtor para XMUDECN4.

Um construtor para XMUDECN4 .

Nota Esse construtor só está disponível em C++.

XMUDECN4 & operator=( XMUDECN4 && unnamedParam1)

Atribui os dados do componente vetor de uma instância do XMUDECN4 à instância atual do XMUDECN4.

Esse operador atribui os dados do componente vetor de uma instância do XMUDECN4 à instância atual do XMUDECN4.

Nota Esse operador só está disponível em C++.

void XMUDECN4( uint32_t Packed) noexcept

Inicializa uma nova instância de de XMUDECN4 uma uint32_t variável que contém dados de componente em um formato empacotado.

Esse construtor inicializa uma nova instância de XMUDECN4 de uma uint32_t variável que contém dados de componente em um formato empacotado.

Nota Esse construtor só está disponível em C++.
 

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

Esse construtor inicializa uma nova instância de XMUDECN4 de quatro argumentos normalizados float .

Nota Esse construtor só está disponível em C++.
 

void XMUDECN4( const float *pArray) noexcept

Inicializa uma nova instância de XMUDECN4 de um argumento de matriz de quatro elementos float .

Esse construtor inicializa uma nova instância de XMUDECN4 de um argumento de matriz de quatro elementos float .

Nota Esse construtor só está disponível em C++.

operador void uint32_t() noexcept

Retorna uma instância de uint32_t que contém os componentes da XMUDECN4 instância em um formato empacotado.

Retorna uma instância de que uint32_t contém os componentes da instância XMUDECN4 em um formato empacotado.

Nota Esse operador só está disponível em C++.
 

XMUDECN4 & operator=( uint32_t Packed) noexcept

Atribui os dados do componente vetor empacotados em uma instância do uint32_t à instância atual do XMUDECN4.

Esse operador atribui os dados do componente vetor empacotados em uma instância do uint32_t à instância atual do XMUDECN4.

Nota Esse operador só está disponível em C++.
 

Comentários

Esses XMUDECN4 construtores que usam argumentos de ponto flutuante exigem entrada normalizada, que deve estar no intervalo de [0.-1.0]. Durante a instanciação, as entradas que especificam os componentes x, y e z são multiplicadas por 1023,0f e o w-component é multiplicado por 3,0f. Os resultados são arredondados e atribuídos aos membros apropriados do XMUDECN4.

Você pode usar XMUDECN4 para carregar instâncias de XMVECTOR de valores normalizados usando XMLoadUDecN4, que divide os componentes x, y e z por 1023,0f, divide o w-component por 3,0f, arredonda o resultado e atribui os componentes a uma XMVECTOR instância.

XMVECTOR Instâncias que contêm valores normalizados podem ser armazenadas no XMUDECN4 uso de XMStoreUDecN4, que multiplica os componentes x, y e z por 1023,0f, multiplica o w-component por 3,0f e arredonda o resultado antes de atribuir os valores aos membros apropriados XMUDECN4 .

Namespace: Usar DirectX::P ackedVector

Requisitos de plataforma

Microsoft Visual Studio 2010 ou Microsoft Visual Studio 2012 com o SDK do Windows para Windows 8. Com suporte para aplicativos da área de trabalho Win32, aplicativos da Windows Store e aplicativos Windows Phone 8.

Requisitos

Requisito Valor
Cabeçalho directxpackedvector.h

Confira também

Estruturas da Biblioteca DirectXMath

Extensões do XMUDECN4