Ark Server API (ASA) - Wiki
|
#include "CoreTypes.h"
#include "Math/UnrealMathUtility.h"
#include "Math/UnrealMathFPU.h"
#include "Math/UnrealMathVectorCommon.h"
Go to the source code of this file.
Classes | |
struct | VectorRegisterConstInit |
Namespaces | |
namespace | GlobalVectorConstants |
Macros | |
#define | SUPPORT_DOUBLE_TO_FLOAT_VECTOR_CONVERSION 1 |
#define | SIMD_ALIGNMENT (alignof(VectorRegister)) |
#define | VectorMask_LT(Vec1, Vec2) VectorCompareLT(Vec1, Vec2) |
#define | VectorMask_LE(Vec1, Vec2) VectorCompareLE(Vec1, Vec2) |
#define | VectorMask_GT(Vec1, Vec2) VectorCompareGT(Vec1, Vec2) |
#define | VectorMask_GE(Vec1, Vec2) VectorCompareGE(Vec1, Vec2) |
#define | VectorMask_EQ(Vec1, Vec2) VectorCompareEQ(Vec1, Vec2) |
#define | VectorMask_NE(Vec1, Vec2) VectorCompareNE(Vec1, Vec2) |
#define | ZERO_ANIMWEIGHT_THRESH (0.00001f) |
#define | ZERO_ANIMWEIGHT_THRESH_DOUBLE (0.00001) |
Typedefs | |
template<typename T > | |
using | TVectorRegisterType = std::conditional_t<std::is_same_v<T, float>, VectorRegister4Float, std::conditional_t<std::is_same_v<T, double>, VectorRegister4Double, void> > |
using | PersistentVectorRegister4Double = VectorRegister4Double |
using | PersistentVectorRegister4Float = VectorRegister4Float |
template<typename T > | |
using | TPersistentVectorRegisterType = std::conditional_t<std::is_same_v<T, float>, PersistentVectorRegister4Float, std::conditional_t<std::is_same_v<T, double>, PersistentVectorRegister4Double, void> > |
Variables | |
constexpr VectorRegister | VECTOR_INV_255 = MakeVectorRegisterDoubleConstant(1.0 / 255, 1.0 / 255, 1.0 / 255, 1.0 / 255) |
constexpr VectorRegister | GlobalVectorConstants::AnimWeightThreshold = MakeVectorRegisterConstant(ZERO_ANIMWEIGHT_THRESH_DOUBLE, ZERO_ANIMWEIGHT_THRESH_DOUBLE, ZERO_ANIMWEIGHT_THRESH_DOUBLE, ZERO_ANIMWEIGHT_THRESH_DOUBLE) |
constexpr VectorRegister | GlobalVectorConstants::RotationSignificantThreshold = MakeVectorRegisterConstant(1.0 - UE_DELTA*UE_DELTA, 1.0 - UE_DELTA*UE_DELTA, 1.0 - UE_DELTA*UE_DELTA, 1.0 - UE_DELTA*UE_DELTA) |
#define SIMD_ALIGNMENT (alignof(VectorRegister)) |
Definition at line 28 of file VectorRegister.h.
#define SUPPORT_DOUBLE_TO_FLOAT_VECTOR_CONVERSION 1 |
Definition at line 9 of file VectorRegister.h.
Definition at line 111 of file VectorRegister.h.
Definition at line 110 of file VectorRegister.h.
Definition at line 109 of file VectorRegister.h.
Definition at line 108 of file VectorRegister.h.
Definition at line 107 of file VectorRegister.h.
Definition at line 112 of file VectorRegister.h.
#define ZERO_ANIMWEIGHT_THRESH (0.00001f) |
Below this weight threshold, animations won't be blended in.
Definition at line 117 of file VectorRegister.h.
#define ZERO_ANIMWEIGHT_THRESH_DOUBLE (0.00001) |
Definition at line 118 of file VectorRegister.h.
Definition at line 41 of file VectorRegister.h.
Definition at line 87 of file VectorRegister.h.
using TPersistentVectorRegisterType = std::conditional_t<std::is_same_v<T, float>, PersistentVectorRegister4Float, std::conditional_t<std::is_same_v<T, double>, PersistentVectorRegister4Double, void> > |
Alias for VectorRegister type to be used as member variables of structs, when alignment should not be over 16 bytes. 32-byte alignment requires large allocations in some allocators, which we want to avoid. See PersistentVectorRegister4Double for more details.
Usage example: TPersistentVectorRegisterType<float> MyFloatRegister; TPersistentVectorRegisterType<double> MyDoubleRegister;
Definition at line 99 of file VectorRegister.h.
using TVectorRegisterType = std::conditional_t<std::is_same_v<T, float>, VectorRegister4Float, std::conditional_t<std::is_same_v<T, double>, VectorRegister4Double, void> > |
Definition at line 33 of file VectorRegister.h.
|
inlineconstexpr |
Vector that represents (1/255,1/255,1/255,1/255)
Definition at line 104 of file VectorRegister.h.