Funzione XMU555::XMU555(constuint8_t*,bool) (directxpackedvector.h)
Inizializza una nuova istanza di XMU555 da una matrice di tre elementi int8_t
e un bool
argomento.
Questo costruttore inizializza una nuova istanza di XMU555 da una matrice di tre elementi int8_t
(specificando componenti x, y e z) e un <bool
argomento (specificando un componente w).
Sintassi
void XMU555(
const uint8_t *pArray,
bool _w
) noexcept;
Parametri
pArray
Matrice di caratteri a tre elementi contenente i valori usati per inizializzare i componenti x,y e z di una nuova istanza di XMU555.
_w
Valore del componente w-component dell'istanza.
Valore restituito
nessuno
Osservazioni
Gli elementi della matrice e l'argomento _w vengono mappati ai componenti vettoriali di una nuova istanza di XMU555 come indicato di seguito:
Membro XMU555 | Argomento | Intervallo |
---|---|---|
x | pArray[0] | 0, 31 |
y | pArray[1] | 0, 31 |
z | pArray[2] | 0, 31 |
w | _W | 0, 1 |
Gli argomenti dei costruttori verranno bloccati all'intervallo consentito prima dell'assegnazione al membro appropriato di XMU555.
Lo pseudocodice seguente illustra l'operazione di questo costruttore, che sfrutta l'unione dei quattro componenti del vettore XMU555 con un'istanza di uint16_t nella definizione della struttura:
XMU555 instance;
_x1=min( max( pArray[0], 0 ), 31 );
_y1=min( max( pArray[1], 0 ), 31 );
_z1=min( max( pArray[2], 0 ), 31 );
_w1=min( max( _w, 0 ), 1 );
instance.v = (((uint16_t)_w1 ? 0x8000 : 0) |
(((uint16_t)_z1 & 0x1F) << 10) |
(((uint16_t)_y1 & 0x1F) << 5) |
(((uint16_t)_x1 & 0x1F)));
Requisiti
Piattaforma di destinazione | Windows |
Intestazione | directxpackedvector.h |