Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Inicializa una nueva instancia de XMDECN4 a partir de un argumento de matriz de cuatro elementos float .
Este constructor inicializa una nueva instancia de XMDECN4 a partir de un argumento de matriz de cuatro elementos float .
Sintaxis
void XMDECN4(
const float *pArray
) noexcept;
Parámetros
pArray
Matriz de punto flotante de cuatro elementos que contiene los valores usados para inicializar los cuatro componentes de una nueva instancia de XMDECN4.
Valor devuelto
None
Observaciones
Los elementos de matriz se asignan a los componentes vectoriales de una nueva instancia de XMDECN4 de la siguiente manera:
| Componente de vector | Elemento Array | Intervalo | Descripción |
|---|---|---|---|
| x | pArray[0] | -1.0, 1.0 | Durante la creación de instancias, pArray[0] se sujeta entre -1 y 1, multiplicado por 511.0f y asignado a x. |
| y | pArray[1] | -1.0, 1.0 | Durante la creación de instancias, pArray[1] se sujeta entre -1 y 1, multiplicado por 511,0f y, a continuación, se asigna a y. |
| z | pArray[2] | -1.0, 1.0 | Durante la creación de instancias, pArray[2] se sujeta entre -1 y 1, multiplicado por 511.0f y, a continuación, asignado a z. |
| w | pArray[3] | -1.0, 1.0 | Durante la creación de instancias, pArray[3] se sujeta entre -1 y 1 y, a continuación, se asigna a w. |
XMDECN4 instance;
_x1=min( max( pArray[0], -1.0 ), 1.0 );
_y1=min( max( pArray[1], -1.0 ), 1.0 );
_z1=min( max( pArray[2], -1.0 ), 1.0 );
_w1=min( max( pArray[3], -1.0 ), 1.0 );
_x1 = round( _x1 * 511.0f);
_y1 = round( _y1 * 511.0f);
_z1 = round( _z1 * 511.0f);
instance.v = ( (int32_t)_w1 << 30) |
(((int32_t)_z1 & 0x3FF) << 20) |
(((int32_t)_y1 & 0x3FF) << 10) |
(((int32_t)_x1 & 0x3FF));
Requisitos
| Requisito | Value |
|---|---|
| Plataforma de destino | Windows |
| Encabezado | directxpackedvector.h |