84template<
typename T,
typename U>
constexpr T pow(
T,
U)
RET;
106#define ceil glsl::ceil
108#define exp2 glsl::exp2
109#define floor glsl::floor
111#define frexp glsl::frexp
112#define isinf glsl::isinf
113#define isnan glsl::isnan
115#define log2 glsl::log2
116#define modf glsl::modf
118#define round glsl::round
119#define sqrt glsl::sqrt
120#define trunc glsl::trunc
121#define ldexp glsl::ldexp
122#define acos glsl::acos
123#define acosh glsl::acosh
124#define asin glsl::asin
125#define asinh glsl::asinh
126#define atan glsl::atan
127#define atanh glsl::atanh
129#define cosh glsl::cosh
131#define sinh glsl::sinh
133#define tanh glsl::tanh
135template<
typename T>
constexpr T max(
T,
T)
RET;
136template<
typename T>
constexpr T min(
T,
T)
RET;
140template<
typename T,
typename U>
constexpr T max(
T,
U)
RET;
141template<
typename T,
typename U>
constexpr T min(
T,
U)
RET;
159float mix(
float,
float,
float)
RET;
164#define select(A, B, C) mix(A, B, C)
btScalar determinant() const
Return the determinant of the matrix.
SIMD_FORCE_INLINE btScalar length() const
Return the length of the vector.
VecBase< int, D > findMSB(VecOp< int, D >) RET
int atomicMin(int &, int) RET
VecBase< bool, D > notEqual(VecOp< T, D >, VecOp< T, D >) RET
float4 unpackSnorm4x8(uint) RET
VecBase< float, D > mix(VecOp< float, D >, VecOp< float, D >, VecOp< float, D >) RET
VecBase< int, D > bitfieldExtract(VecOp< int, D >, int, int) RET
T smoothstep(T, T, T) RET
void gpu_discard_fragment()
VecBase< bool, D > greaterThanEqual(VecOp< T, D >, VecOp< T, D >) RET
float2 unpackUnorm2x16(uint) RET
VecBase< int, D > floatBitsToInt(VecOp< float, D >) RET
VecBase< bool, D > lessThanEqual(VecOp< T, D >, VecOp< T, D >) RET
bool any(VecOp< bool, D >) RET
int atomicMax(int &, int) RET
VecBase< float, D > intBitsToFloat(VecOp< int, D >) RET
int atomicExchange(int &, int) RET
MatBase< C, R > inverse(MatBase< C, R >) RET
uint packUnorm2x16(float2) RET
VecBase< T, D > refract(VecOp< T, D >, VecOp< T, D >, float) RET
int atomicCompSwap(int &, int, int) RET
VecBase< T, D > reflect(VecOp< T, D >, VecOp< T, D >) RET
VecBase< bool, D > greaterThan(VecOp< T, D >, VecOp< T, D >) RET
VecBase< int, D > bitfieldReverse(VecOp< int, D >) RET
VecBase< float, D > normalize(VecOp< float, D >) RET
float4 unpackUnorm4x8(uint) RET
float dot(VecOp< float, D >, VecOp< float, D >) RET
uint packSnorm4x8(float4) RET
VecBase< T, D > faceforward(VecOp< T, D >, VecOp< T, D >, VecOp< T, D >) RET
constexpr T inversesqrt(T) RET
int atomicAnd(int &, int) RET
VecBase< float, D > constexpr mod(VecOp< float, D >, VecOp< float, D >) RET
uint packUnorm4x8(float4) RET
int atomicXor(int &, int) RET
VecBase< uint, D > floatBitsToUint(VecOp< float, D >) RET
VecBase< int, D > bitfieldInsert(VecOp< int, D >, VecOp< int, D >, int, int) RET
int atomicAdd(int &, int) RET
bool all(VecOp< bool, D >) RET
VecBase< float, D > step(VecOp< float, D >, VecOp< float, D >) RET
MatBase< R, C > transpose(MatBase< C, R >) RET
VecBase< int, D > bitCount(VecOp< int, D >) RET
VecBase< float, D > uintBitsToFloat(VecOp< uint, D >) RET
VecBase< float, 3 > cross(VecOp< float, 3 >, VecOp< float, 3 >) RET
VecBase< bool, D > lessThan(VecOp< T, D >, VecOp< T, D >) RET
float2 unpackHalf2x16(uint) RET
constexpr T radians(T) RET
uint packHalf2x16(float2) RET
VecBase< bool, D > equal(VecOp< T, D >, VecOp< T, D >) RET
float2 unpackSnorm2x16(uint) RET
constexpr T clamp(T, U, U) RET
VecBase< int, D > findLSB(VecOp< int, D >) RET
uint packSnorm2x16(float2) RET
float distance(VecOp< float, D >, VecOp< float, D >) RET
int atomicOr(int &, int) RET
constexpr T degrees(T) RET
VecBase< bool, D > operator!(VecOp< bool, D >) RET
void groupMemoryBarrier()
void memoryBarrierBuffer()
void memoryBarrierShared()
void memoryBarrierImage()
VecBase< bool, D > isinf(VecOp< float, D >) RET
VecBase< bool, D > isnan(VecOp< float, D >) RET