Compartilhar via


função XMBYTEN4::XMBYTEN4(float,float,float,float) (directxpackedvector.h)

Inicializa uma nova instância de de XMBYTEN4 quatro float argumentos.

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

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

Sintaxe

void XMBYTEN4(
  float _x,
  float _y,
  float _z,
  float _w
) noexcept;

Parâmetros

_x

Um valor normalizado para a coordenada x do vetor.

Esse argumento deve estar entre -1.0 e 1.0. Durante a instanciação de uma instância de XMBYTEN4, ela é multiplicada por 127.0f e, em seguida, armazenada como o membro x da estrutura.

_y

Um valor normalizado para a coordenada y do vetor, o y da nova instância de XMBYTEN4

Esse argumento deve estar entre -1.0 e 1.0. Durante a instanciação de uma instância do XMBYTEN4, ela é multiplicada por 127.0f e, em seguida, armazenada como o membro y da estrutura.

_z

Um valor normalizado para a coordenada z do vetor, o z da nova instância de XMBYTEN4

Esse argumento deve estar entre -1.0 e 1.0. Durante a instanciação de uma instância de XMBYTEN4, ela é multiplicada por 127.0f e, em seguida, armazenada como o membro z da estrutura.

_w

Um valor normalizado para a coordenada w do vetor, o w da nova instância de XMBYTEN4

Esse argumento deve estar entre -1.0 e 1.0. Durante a instanciação de uma instância de XMBYTEN4, ela é multiplicada por 127.0f e, em seguida, armazenada como o membro w da estrutura.

Retornar valor

Nenhum

Comentários

A magnitude de cada argumento para o construtor será presa ao intervalo com suporte por um inteiro com sinal de 8 bits [-127.0, 127.0].

O pseudocódigo a XMBYTEN4 seguir demonstra a operação desse construtor, que aproveita os union quatro componentes do vetor com uma instância de uint32_t na definição da estrutura:


	XMBYTEN4 instance;
	_x1=min( max( _x, -1.0 ), 1.0 );
	_y1=min( max( _y, -1.0 ), 1.0 );
	_z1=min( max( _z, -1.0 ), 1.0 );
	_w1=min( max( _w, -1.0 ), 1.0 );
	_x1 = round( _x1 *  127.0f);
	_y1 = round( _y1 *  127.0f);
	_z1 = round( _z1 *  127.0f);
	_w1 = round( _w1 *  127.0f);
	instance.x = (int8_t)_x1;
	instance.y = (int8_t)_y1;
	instance.z = (int8_t)_z1;
	instance.w = (int8_t)_w1;
      

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho directxpackedvector.h

Confira também

Referência

XMBYTEN4

Construtores XMBYTEN4