Open 3D Engine AzCore API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::Simd::Vec4 Struct Reference

Static Public Member Functions

static Vec1::FloatType ToVec1 (FloatArgType value)
 
static Vec2::FloatType ToVec2 (FloatArgType value)
 
static Vec3::FloatType ToVec3 (FloatArgType value)
 
static FloatType FromVec1 (Vec1::FloatArgType value)
 
static FloatType FromVec2 (Vec2::FloatArgType value)
 
static FloatType FromVec3 (Vec3::FloatArgType value)
 
static FloatType LoadAligned (const float *__restrict addr)
 
static Int32Type LoadAligned (const int32_t *__restrict addr)
 
static FloatType LoadUnaligned (const float *__restrict addr)
 
static Int32Type LoadUnaligned (const int32_t *__restrict addr)
 
static void StoreAligned (float *__restrict addr, FloatArgType value)
 
static void StoreAligned (int32_t *__restrict addr, Int32ArgType value)
 
static void StoreUnaligned (float *__restrict addr, FloatArgType value)
 
static void StoreUnaligned (int32_t *__restrict addr, Int32ArgType value)
 
static void StreamAligned (float *__restrict addr, FloatArgType value)
 
static void StreamAligned (int32_t *__restrict addr, Int32ArgType value)
 
static float SelectIndex0 (FloatArgType value)
 
static float SelectIndex1 (FloatArgType value)
 
static float SelectIndex2 (FloatArgType value)
 
static float SelectIndex3 (FloatArgType value)
 
static float AZ_MATH_INLINE SelectFirst (FloatArgType value)
 
static float AZ_MATH_INLINE SelectSecond (FloatArgType value)
 
static float AZ_MATH_INLINE SelectThird (FloatArgType value)
 
static float AZ_MATH_INLINE SelectFourth (FloatArgType value)
 
static FloatType Splat (float value)
 
static Int32Type Splat (int32_t value)
 
static FloatType SplatIndex0 (FloatArgType value)
 
static FloatType SplatIndex1 (FloatArgType value)
 
static FloatType SplatIndex2 (FloatArgType value)
 
static FloatType SplatIndex3 (FloatArgType value)
 
static FloatType AZ_MATH_INLINE SplatFirst (FloatArgType value)
 
static FloatType AZ_MATH_INLINE SplatSecond (FloatArgType value)
 
static FloatType AZ_MATH_INLINE SplatThird (FloatArgType value)
 
static FloatType AZ_MATH_INLINE SplatFourth (FloatArgType value)
 
static FloatType ReplaceIndex0 (FloatArgType a, float b)
 
static FloatType ReplaceIndex0 (FloatArgType a, FloatArgType b)
 
static FloatType ReplaceIndex1 (FloatArgType a, float b)
 
static FloatType ReplaceIndex1 (FloatArgType a, FloatArgType b)
 
static FloatType ReplaceIndex2 (FloatArgType a, float b)
 
static FloatType ReplaceIndex2 (FloatArgType a, FloatArgType b)
 
static FloatType ReplaceIndex3 (FloatArgType a, float b)
 
static FloatType ReplaceIndex3 (FloatArgType a, FloatArgType b)
 
static FloatType AZ_MATH_INLINE ReplaceFirst (FloatArgType a, float b)
 
static FloatType AZ_MATH_INLINE ReplaceFirst (FloatArgType a, FloatArgType b)
 
static FloatType AZ_MATH_INLINE ReplaceSecond (FloatArgType a, float b)
 
static FloatType AZ_MATH_INLINE ReplaceSecond (FloatArgType a, FloatArgType b)
 
static FloatType AZ_MATH_INLINE ReplaceThird (FloatArgType a, float b)
 
static FloatType AZ_MATH_INLINE ReplaceThird (FloatArgType a, FloatArgType b)
 
static FloatType AZ_MATH_INLINE ReplaceFourth (FloatArgType a, float b)
 
static FloatType AZ_MATH_INLINE ReplaceFourth (FloatArgType a, FloatArgType b)
 
static FloatType LoadImmediate (float x, float y, float z, float w)
 
static Int32Type LoadImmediate (int32_t x, int32_t y, int32_t z, int32_t w)
 
static FloatType Add (FloatArgType arg1, FloatArgType arg2)
 
static FloatType Sub (FloatArgType arg1, FloatArgType arg2)
 
static FloatType Mul (FloatArgType arg1, FloatArgType arg2)
 
static FloatType Madd (FloatArgType mul1, FloatArgType mul2, FloatArgType add)
 
static FloatType Div (FloatArgType arg1, FloatArgType arg2)
 
static FloatType Abs (FloatArgType value)
 
static Int32Type Add (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type Sub (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type Mul (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type Madd (Int32ArgType mul1, Int32ArgType mul2, Int32ArgType add)
 
static Int32Type Abs (Int32ArgType value)
 
static FloatType Not (FloatArgType value)
 
static FloatType And (FloatArgType arg1, FloatArgType arg2)
 
static FloatType AndNot (FloatArgType arg1, FloatArgType arg2)
 
static FloatType Or (FloatArgType arg1, FloatArgType arg2)
 
static FloatType Xor (FloatArgType arg1, FloatArgType arg2)
 
static Int32Type Not (Int32ArgType value)
 
static Int32Type And (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type AndNot (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type Or (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type Xor (Int32ArgType arg1, Int32ArgType arg2)
 
static FloatType Floor (FloatArgType value)
 
static FloatType Ceil (FloatArgType value)
 
static FloatType Round (FloatArgType value)
 
static FloatType Truncate (FloatArgType value)
 
static FloatType Min (FloatArgType arg1, FloatArgType arg2)
 
static FloatType Max (FloatArgType arg1, FloatArgType arg2)
 
static FloatType Clamp (FloatArgType value, FloatArgType min, FloatArgType max)
 
static Int32Type Min (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type Max (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type Clamp (Int32ArgType value, Int32ArgType min, Int32ArgType max)
 
static FloatType CmpEq (FloatArgType arg1, FloatArgType arg2)
 
static FloatType CmpNeq (FloatArgType arg1, FloatArgType arg2)
 
static FloatType CmpGt (FloatArgType arg1, FloatArgType arg2)
 
static FloatType CmpGtEq (FloatArgType arg1, FloatArgType arg2)
 
static FloatType CmpLt (FloatArgType arg1, FloatArgType arg2)
 
static FloatType CmpLtEq (FloatArgType arg1, FloatArgType arg2)
 
static bool CmpAllEq (FloatArgType arg1, FloatArgType arg2)
 
static bool CmpAllLt (FloatArgType arg1, FloatArgType arg2)
 
static bool CmpAllLtEq (FloatArgType arg1, FloatArgType arg2)
 
static bool CmpAllGt (FloatArgType arg1, FloatArgType arg2)
 
static bool CmpAllGtEq (FloatArgType arg1, FloatArgType arg2)
 
static Int32Type CmpEq (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type CmpNeq (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type CmpGt (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type CmpGtEq (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type CmpLt (Int32ArgType arg1, Int32ArgType arg2)
 
static Int32Type CmpLtEq (Int32ArgType arg1, Int32ArgType arg2)
 
static bool CmpAllEq (Int32ArgType arg1, Int32ArgType arg2)
 
static FloatType Select (FloatArgType arg1, FloatArgType arg2, FloatArgType mask)
 
static Int32Type Select (Int32ArgType arg1, Int32ArgType arg2, Int32ArgType mask)
 
static FloatType Reciprocal (FloatArgType value)
 
static FloatType ReciprocalEstimate (FloatArgType value)
 
static FloatType Mod (FloatArgType value, FloatArgType divisor)
 
static FloatType Wrap (FloatArgType value, FloatArgType minValue, FloatArgType maxValue)
 
static FloatType AngleMod (FloatArgType value)
 
static FloatType Sqrt (FloatArgType value)
 
static FloatType SqrtEstimate (FloatArgType value)
 
static FloatType SqrtInv (FloatArgType value)
 
static FloatType SqrtInvEstimate (FloatArgType value)
 
static FloatType Sin (FloatArgType value)
 
static FloatType Cos (FloatArgType value)
 
static void SinCos (FloatArgType value, FloatType &sin, FloatType &cos)
 
static FloatType SinCos (FloatArgType angles)
 
static FloatType Acos (FloatArgType value)
 
static FloatType Atan (FloatArgType value)
 
static FloatType Atan2 (FloatArgType y, FloatArgType x)
 
static FloatType ExpEstimate (FloatArgType value)
 
static Vec1::FloatType Dot (FloatArgType arg1, FloatArgType arg2)
 
static FloatType Normalize (FloatArgType value)
 
static FloatType NormalizeEstimate (FloatArgType value)
 
static FloatType NormalizeSafe (FloatArgType value, float tolerance)
 
static FloatType NormalizeSafeEstimate (FloatArgType value, float tolerance)
 
static FloatType QuaternionMultiply (FloatArgType arg1, FloatArgType arg2)
 
static Vec3::FloatType QuaternionTransform (FloatArgType quat, Vec3::FloatArgType vec3)
 
static FloatType ConstructPlane (Vec3::FloatArgType normal, Vec3::FloatArgType point)
 
static Vec1::FloatType PlaneDistance (FloatArgType plane, Vec3::FloatArgType point)
 
static void Mat3x4InverseFast (const FloatType *__restrict rows, FloatType *__restrict out)
 
static void Mat3x4Transpose (const FloatType *__restrict rows, FloatType *__restrict out)
 
static void Mat3x4Multiply (const FloatType *__restrict rowsA, const FloatType *__restrict rowsB, FloatType *__restrict out)
 
static void Mat4x4InverseFast (const FloatType *__restrict rows, FloatType *__restrict out)
 
static void Mat4x4Transpose (const FloatType *__restrict rows, FloatType *__restrict out)
 
static void Mat4x4Multiply (const FloatType *__restrict rowsA, const FloatType *__restrict rowsB, FloatType *__restrict out)
 
static void Mat4x4MultiplyAdd (const FloatType *__restrict rowsA, const FloatType *__restrict rowsB, const FloatType *__restrict add, FloatType *__restrict out)
 
static void Mat4x4TransposeMultiply (const FloatType *__restrict rowsA, const FloatType *__restrict rowsB, FloatType *__restrict out)
 
static FloatType Mat4x4TransformVector (const FloatType *__restrict rows, FloatArgType vector)
 
static FloatType Mat4x4TransposeTransformVector (const FloatType *__restrict rows, FloatArgType vector)
 
static Vec3::FloatType Mat4x4TransformPoint3 (const FloatType *__restrict rows, Vec3::FloatArgType vector)
 
static FloatType ConvertToFloat (Int32ArgType value)
 
static Int32Type ConvertToInt (FloatArgType value)
 
static Int32Type ConvertToIntNearest (FloatArgType value)
 
static FloatType CastToFloat (Int32ArgType value)
 
static Int32Type CastToInt (FloatArgType value)
 
static FloatType ZeroFloat ()
 
static Int32Type ZeroInt ()
 

Static Public Attributes

static constexpr int32_t ElementCount = 4
 

The documentation for this struct was generated from the following files: