XMBYTEN4 structure (directxpackedvector.h)
A 3D vector for storing signed, normalized values as signed 8-bits (1 byte) integers.
For a list of additional functionality such as constructors and operators that are available
using XMBYTEN4
when you are programming in C++, see XMBYTEN4 Extensions.
Syntax
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;
};
Members
x
Signed 8-bit integer value in the range [-127, 127] describing the x-coordinate of the vector.
y
Signed 8-bit integer value in the range [-127, 127] describing the y-coordinate of the vector.
z
Signed 8-bit integer value in the range [-127, 127] describing the z-coordinate of the vector.
w
Signed 8-bit integer value in the range [-127, 127] describing the w-coordinate of the vector.
v
Unsigned 32-bit integer representing the 4D vector.
Default constructor for XMBYTEN4
Default constructor for XMBYTEN4
void XMBYTEN4( const XMBYTEN4 & unnamedParam1)
A constructor for XMBYTEN4
.
A constructor for XMBYTEN4.
XMBYTEN4 & operator=( const XMBYTEN4 & unnamedParam1)
Assigns the vector component data from one instance of XMBYTEN4
to the current instance of XMBYTEN4
.
This operator assigns the vector component data from one instance of XMBYTEN4 to the current instance of XMBYTEN4
.
void XMBYTEN4( XMBYTEN4 && unnamedParam1)
A constructor for XMBYTEN4
.
A constructor for XMBYTEN4.
XMBYTEN4 & operator=( XMBYTEN4 && unnamedParam1)
void XMBYTEN4( int8_t _x, int8_t _y, int8_t _z, int8_t _w) noexcept
Initializes a new instance of XMBYTEN4
from four int8_t
arguments.
This constructor initializes a new instance of XMBYTEN4
from a
four int8_t
arguments.
void XMBYTEN4( uint32_t Packed) noexcept
Initializes a new instance of XMBYTEN4
from a uint32_t
variable containing component data in a packed format.
This constructor initializes a new instance of XMBYTEN4
from a
uint32_t
variable containing component data in a packed format.
void XMBYTEN4( const int8_t *pArray) noexcept
Initializes a new instance of XMBYTEN4 from a four element int8_t
array argument.
This constructor initializes a new instance of XMBYTEN4 from a four element int8_t
array argument.
void XMBYTEN4( float _x, float _y, float _z, float _w) noexcept
Initializes a new instance of XMBYTEN4
from four float
arguments.
This constructor initializes a new instance of XMBYTEN4 from four
float
arguments.
void XMBYTEN4( const float *pArray) noexcept
Initializes a new instance of XMBYTEN4 from a four element float
array argument.
This constructor initializes a new instance of XMBYTEN4 from a from a four element float
array argument.
XMBYTEN4 & operator=( uint32_t Packed) noexcept
Remarks
Those XMBYTEN4
constructors using floating point arguments require normalized input,
which must be in the range of [0.0.-1.0]. During instantiation, these data are
multiplied by 127.0f, results are rounded, and then
assigned to the appropriate members of XMBYTEN4
.
XMBYTEN4
can be used to load instances of XMVECTOR from
normalized values, by using XMLoadByteN4, which divides each
component 127.0f, rounds the result, and then assigns the components to an
XMVECTOR
instance.
XMVECTOR
instances containing normalized values can be stored into XMBYTEN4
using XMStoreByteN4, which multiplies each component by 127.0f,
rounding the result, before assigning the values to the appropriate XMBYTEN4
members.
Namespace: Use DirectX::PackedVector
Platform Requirements
Microsoft Visual Studio 2010 or Microsoft Visual Studio 2012 with the Windows SDK for Windows 8. Supported for Win32 desktop apps, Windows Store apps, and Windows Phone 8 apps.Requirements
Requirement | Value |
---|---|
Header | directxpackedvector.h |