struttura XMXDECN4 (directxpackedvector.h)
Vettore 4D per l'archiviazione di valori firmati, normalizzati come componenti x,y e z con segno a 10 bit e un valore normalizzato senza segno come componente w senza segno a 2 bit.
Per un elenco di funzionalità aggiuntive, ad esempio costruttori e operatori disponibili quando XMXDECN4
si esegue la programmazione in C++, vedere XMXDECN4 Extensions.
Sintassi
struct XMXDECN4 {
union {
struct {
int32_t x : 10;
int32_t y : 10;
int32_t z : 10;
uint32_t w : 2;
};
uint32_t v;
};
void XMXDECN4();
void XMXDECN4(
const XMXDECN4 & unnamedParam1
);
XMXDECN4 & operator=(
const XMXDECN4 & unnamedParam1
);
void XMXDECN4(
XMXDECN4 && unnamedParam1
);
XMXDECN4 & operator=(
XMXDECN4 && unnamedParam1
);
void XMXDECN4(
uint32_t Packed
);
void XMXDECN4(
float _x,
float _y,
float _z,
float _w
) noexcept;
void XMXDECN4(
const float *pArray
) noexcept;
void operator uint32_t() noexcept;
XMXDECN4 & operator=(
uint32_t Packed
) noexcept;
};
Members
x
Valore intero con segno nell'intervallo [-511, 511] che descrive la coordinata x del vettore.
y
Valore intero con segno nell'intervallo [-511, 511] che descrive la coordinata y del vettore.
z
Valore intero con segno nell'intervallo [-511, 511] che descrive la coordinata z del vettore.
w
Valore intero senza segno nell'intervallo [0, 3] che descrive la coordinata w del vettore.
v
Intero senza segno a 32 bit che rappresenta il vettore 4D.
Costruttore predefinito per XMXDECN4
.
Costruttore predefinito per XMXDECN4 .
void XMXDECN4( const XMXDECN4 & unnamedParam1)
Costruttore per XMXDECN4 .
Costruttore per XMXDECN4.
XMXDECN4 & operator=( const XMXDECN4 & unnamedParam1)
void XMXDECN4( XMXDECN4 && unnamedParam1)
Costruttore per XMXDECN4 .
Costruttore per XMXDECN4.
XMXDECN4 & operator=( XMXDECN4 && unnamedParam1)
Assegna i dati del componente vettoriale da un'istanza di XMXDECN4
all'istanza corrente di XMXDECN4
.
void XMXDECN4( uint32_t compresso)
Inizializza una nuova istanza di XMXDECN4
da una uint32_t
variabile contenente i dati del componente in un formato compresso.
Questo costruttore inizializza una nuova istanza di XMXDECN4 da una uint32_t
variabile contenente i dati del componente in un formato compresso.
void XMXDECN4( float _x, float _y, float _z, float _w) noexcept
Inizializza una nuova istanza di XMXDECN4
da quattro argomenti normalizzati float
.
Questo costruttore inizializza una nuova istanza di XMXDECN4 da quattro argomenti normalizzati float
.
void XMXDECN4( const float *pArray) noexcept
Inizializza una nuova istanza di XMXDECN4 da un argomento di matrice di quattro elementi float
.
Questo costruttore inizializza una nuova istanza di XMXDECN4 da un argomento di matrice di quattro elementi float
.
Operatore void uint32_t() noexcept
Restituisce un'istanza di uint32_t
contenente i componenti dell'istanza XMXDECN4
in un formato compresso.
Restituisce un'istanza di uint32_t
contenente i componenti dell'istanza di XMXDECN4 in un formato compresso.
XMXDECN4 & operator=( uint32_t Packed) noexcept
Assegna i dati del componente vettoriale compressi in un'istanza di uint32_t
all'istanza corrente di XMXDECN4
.
Questo operatore assegna i dati del componente vettoriale compressi in un'istanza di uint32_t
all'istanza corrente di XMXDECN4.
Commenti
Tali XMXDECN4
costruttori che usano argomenti a virgola mobile richiedono l'input normalizzato, che deve trovarsi nell'intervallo di [-1.0.-1.0] per x-, y-, z-components e 0.0 per il componente w. Durante la creazione di istanze, gli input che specificano i componenti x,y e z vengono moltiplicati per 511.0f e il componente w per 3,0f, questi risultati vengono arrotondati e quindi assegnati ai membri appropriati di XMXDECN4
.
XMXDECN4
può essere usato per caricare istanze di XMVECTOR da valori normalizzati, usando XMLoadXDecN4, che divide i componenti x,y e z per 511.0f, il componente w per 3,0f, arrotonda il risultato e quindi assegna i componenti a un'istanza XMVECTOR
di .
XMVECTOR
Le istanze contenenti valori normalizzati possono essere archiviate in XMXDECN4
usando XMStoreXDecN4, che moltiplica i componenti x,y e z per 511.0f, il componente w per 3,0f, arrotondando il risultato, prima di assegnare i valori ai membri appropriati XMXDECN4
.
Namespace: Usare DirectX::P ackedVector
Requisiti della piattaforma
Microsoft Visual Studio 2010 o Microsoft Visual Studio 2012 con Windows SDK per Windows 8. Supportato per le app desktop Win32, le app di Windows Store e Windows Phone 8 app.Requisiti
Intestazione | directxpackedvector.h |