struktur XMBYTEN4 (directxpackedvector.h)
Vektor 3D untuk menyimpan nilai yang ditandatangani dan dinormalisasi sebagai bilangan bulat 8-bit (1 byte) yang ditandatangani.
Untuk daftar fungsionalitas tambahan seperti konstruktor dan operator yang tersedia menggunakan XMBYTEN4
saat Anda memprogram di C++, lihat Ekstensi XMBYTEN4.
Sintaks
struct XMBYTEN4 {
union {
struct {
int8_t x;
int8_t y;
int8_t z;
int8_t w;
};
uint32_t v;
};
void XMBYTEN4();
void XMBYTEN4(
const XMBYTEN4 & unnamedParam1
);
XMBYTEN4 & operator=(
const XMBYTEN4 & unnamedParam1
);
void XMBYTEN4(
XMBYTEN4 && unnamedParam1
);
XMBYTEN4 & operator=(
XMBYTEN4 && unnamedParam1
);
void XMBYTEN4(
int8_t _x,
int8_t _y,
int8_t _z,
int8_t _w
) noexcept;
void XMBYTEN4(
uint32_t Packed
) noexcept;
void XMBYTEN4(
const int8_t *pArray
) noexcept;
void XMBYTEN4(
float _x,
float _y,
float _z,
float _w
) noexcept;
void XMBYTEN4(
const float *pArray
) noexcept;
XMBYTEN4 & operator=(
uint32_t Packed
) noexcept;
};
Anggota
x
Nilai bilangan bulat 8-bit yang ditandatangani dalam rentang [-127, 127] yang menjelaskan koordinat x vektor.
y
Nilai bilangan bulat 8-bit yang ditandatangani dalam rentang [-127, 127] yang menjelaskan koordinat y vektor.
z
Nilai bilangan bulat 8-bit yang ditandatangani dalam rentang [-127, 127] yang menjelaskan koordinat z vektor.
w
Nilai bilangan bulat 8-bit yang ditandatangani dalam rentang [-127, 127] yang menjelaskan koordinat w vektor.
v
Bilangan bulat 32-bit yang tidak ditandatangani mewakili vektor 4D.
Konstruktor default untuk XMBYTEN4
Konstruktor default untuk XMBYTEN4
void XMBYTEN4( const XMBYTEN4 & unnamedParam1)
Konstruktor untuk XMBYTEN4
.
Konstruktor untuk XMBYTEN4.
XMBYTEN4 & operator=( const XMBYTEN4 & unnamedParam1)
Menetapkan data komponen vektor dari satu instans XMBYTEN4
ke instans saat ini dari XMBYTEN4
.
Operator ini menetapkan data komponen vektor dari satu instans XMBYTEN4 ke instans saat ini dari XMBYTEN4
.
XMBYTEN4 batal( XMBYTEN4 && unnamedParam1)
Konstruktor untuk XMBYTEN4
.
Konstruktor untuk XMBYTEN4.
XMBYTEN4 & operator=( XMBYTEN4 && unnamedParam1)
XMBYTEN4 int8_t _x, int8_t _y, int8_t _z, int8_t _w) noexcept
Menginisialisasi instans baru dari XMBYTEN4
empat int8_t
argumen.
Konstruktor ini menginisialisasi instans baru XMBYTEN4 dari empat int8_t
argumen.
noexcept XMBYTEN4 batal (uint32_t Packed)
Menginisialisasi instans baru dari XMBYTEN4
variabel yang uint32_t
berisi data komponen dalam format yang dikemas.
Konstruktor ini menginisialisasi instans baru XMBYTEN4 dari variabel yang uint32_t
berisi data komponen dalam format yang dikemas.
void XMBYTEN4( const int8_t *pArray) noexcept
Menginisialisasi instans baru XMBYTEN4 dari argumen array empat elemen int8_t
.
Konstruktor ini menginisialisasi instans baru XMBYTEN4 dari argumen array empat elemen int8_t
.
XMBYTEN4 batal (_x float, _y float, _z float, float _w) noexcept
Menginisialisasi instans baru dari XMBYTEN4
empat float
argumen.
Konstruktor ini menginisialisasi instans baru XMBYTEN4 dari empat float
argumen.
void XMBYTEN4( const float *pArray) noexcept
Menginisialisasi instans baru XMBYTEN4 dari argumen array empat elemen float
.
Konstruktor ini menginisialisasi instans baru XMBYTEN4 dari argumen array empat elemen float
.
XMBYTEN4 & operator=( uint32_t Packed) noexcept
Keterangan
Konstruktor yang XMBYTEN4
menggunakan argumen floating point memerlukan input yang dinormalisasi, yang harus dalam rentang [0.0.-1.0]. Selama instansiasi, data ini dikalikan dengan 127,0f, hasil dibulatkan, lalu ditetapkan ke anggota yang sesuai dari XMBYTEN4
.
XMBYTEN4
dapat digunakan untuk memuat instans XMVECTOR dari nilai yang dinormalisasi, dengan menggunakan XMLoadByteN4, yang membagi setiap komponen 127.0f, membulatkan hasilnya, lalu menetapkan komponen ke XMVECTOR
instans.
XMVECTOR
instans yang berisi nilai yang dinormalisasi dapat disimpan ke dalam XMBYTEN4
menggunakan XMStoreByteN4, yang mengalikan setiap komponen dengan 127,0f, membulatkan hasil, sebelum menetapkan nilai ke anggota yang sesuai XMBYTEN4
.
Namespace: Gunakan DirectX::P ackedVector
Persyaratan Platform
Microsoft Visual Studio 2010 atau Microsoft Visual Studio 2012 dengan Windows SDK untuk Windows 8. Didukung untuk aplikasi desktop Win32, aplikasi Windows Store, dan aplikasi Windows Phone 8.Persyaratan
Header | directxpackedvector.h |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk