Función XMCOLOR::XMCOLOR(constfloat*) (directxpackedvector.h)
Inicializa una nueva instancia de XMCOLOR a partir de un argumento de matriz de cuatro elementos float
.
Este constructor inicializa una nueva instancia de XMCOLOR a partir de un argumento de matriz de cuatro elementos float
.
Sintaxis
void XMCOLOR(
const float *pArray
) noexcept;
Parámetros
pArray
Matriz de punto flotante de cuatro elementos que contiene los valores de color usados para inicializar los cuatro componentes de una nueva instancia de XMCOLOR.
Valor devuelto
Ninguno
Observaciones
Los elementos de matriz se asignan a los componentes vectoriales de una nueva instancia de XMCOLOR de la siguiente manera:
Componente de vector | Elemento Array | Intervalo | Descripción |
---|---|---|---|
a | pArray[0] | 0.0, 1.0 | Durante la creación de instancias, pArray[0] se sujeta entre 0 y 1, multiplicado por 255.0f y asignado a un (canal alfa). |
r | pArray[1] | 0.0, 1.0 | Durante la creación de instancias, pArray[1] se sujeta entre 0 y 1, multiplicado por 255.0f y, a continuación, asignado a r (canal rojo). |
z | pArray[2] | 0.0, 1.0 | Durante la creación de instancias, pArray[2] se sujeta entre 0 y 1, multiplicado por 255.0f y, a continuación, asignado a g (canal verde). |
w | pArray[3] | 0.0, 1.0 | Durante la creación de instancias, pArray[3] se sujeta entre 0 y 1, multiplicado por 255.0f y, a continuación, asignado a b (canal azul). |
El pseudocódigo siguiente muestra el funcionamiento de este constructor, que aprovecha la unión de los cuatro canales de color de la estructura XMCOLOR con una instancia de uint32_t
en la definición de la estructura:
XMCOLOR instance;
_a1 = min( max( pArray[0], 0.0 ), 1.0 );
_r1 = min( max( pArray[1], 0.0 ), 1.0 );
_g1 = min( max( pArray[2], 0.0 ), 1.0 );
_b1 = min( max( pArray[3], 0.0 ), 1.0 );
_a1 = round ( _a1 * 255.0f );
_r1 = round ( _r1 * 255.0f );
_g1 = round ( _g1 * 255.0f );
_b1 = round ( _b1 * 255.0f );
instance.v = ( (uint32_t)_a1 << 24) |
( (uint32_t)_r1 << 16) |
( (uint32_t)_b1 << 8) |
( (uint32_t)_b1 );
Requisitos
Plataforma de destino | Windows |
Encabezado | directxpackedvector.h |