Module |
|
Header |
/Engine/Source/Runtime/Core/Public/Math/UnrealMathSSE.h |
Include |
#include "Math/UnrealMathSSE.h" |
VectorRegister VectorLoadSignedByte4
(
const void * Ptr
)
Loads 4 signed BYTEs from unaligned memory and converts them into 4 FLOATs. IMPORTANT: You need to call VectorResetFloatRegisters() before using scalar FLOATs after you've used this intrinsic!
VectorRegister, float(Ptr[1]), float(Ptr[2]), float(Ptr[3]) )Looks complex but is really quite straightforward: Load as 32-bit value, unpack 4x unsigned bytes to 4x 16-bit ints, then unpack again into 4x 32-bit ints, then convert to 4x floats
Parameter |
Description |
---|---|
Ptr |
Unaligned memory pointer to the 4 BYTEs. |