funzione XMBYTEN4::XMBYTEN4(float,float,float,float) (directxpackedvector.h)
Inizializza una nuova istanza di XMBYTEN4
da quattro float
argomenti.
Questo costruttore inizializza una nuova istanza di XMBYTEN4 da quattro float
argomenti.
Sintassi
void XMBYTEN4(
float _x,
float _y,
float _z,
float _w
) noexcept;
Parametri
_x
Valore normalizzato per la coordinata x del vettore.
Questo argomento deve essere compreso tra -1.0 e 1.0. Durante l'istanza di un'istanza di XMBYTEN4
, viene moltiplicata e 127.0f
quindi archiviata come membro x della struttura.
_y
Valore normalizzato per la coordinata y del vettore, l'y della nuova istanza di XMBYTEN4
Questo argomento deve essere compreso tra -1.0 e 1.0. Durante l'istanza di un'istanza di XMBYTEN4
, viene moltiplicata per 127.0f
e quindi archiviata come membro y della struttura.
_z
Valore normalizzato per la coordinata z del vettore, la z della nuova istanza di XMBYTEN4
Questo argomento deve essere compreso tra -1.0 e 1.0. Durante l'istanza di un'istanza di XMBYTEN4
, viene moltiplicata e 127.0f
quindi archiviata come membro z della struttura.
_w
Valore normalizzato per la coordinata w del vettore, il w della nuova istanza di XMBYTEN4
Questo argomento deve essere compreso tra -1.0 e 1.0. Durante l'istanza di un'istanza di XMBYTEN4
, viene moltiplicata e 127.0f
quindi archiviata come membro w della struttura.
Valore restituito
nessuno
Osservazioni
La grandezza di ogni argomento del costruttore verrà bloccata all'intervallo supportato da un intero con segno a 8 bit [-127.0, 127.0].
Lo pseudocode seguente illustra l'operazione di questo costruttore, che sfrutta i union
quattro componenti del vettore con un'istanza uint32_t
di XMBYTEN4
nella definizione della struttura:
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;
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | directxpackedvector.h |
Vedi anche
Riferimento