Skip to content

GLSL Core

Navigation: SDKGPUGLSL References

GLSL Core

GLSL core defines and functions.

Defines

FFX_SELECT

#define FFX_SELECT(cond, arg1, arg2) cond ? arg1 : arg2

A define for abstracting select functionality for pre/post HLSL 21.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 31, column 9)

FFX_GROUPSHARED

#define FFX_GROUPSHARED shared

A define for abstracting shared memory between shading languages.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 36, column 9)

FFX_GROUP_MEMORY_BARRIER

#define FFX_GROUP_MEMORY_BARRIER groupMemoryBarrier(); barrier()

A define for abstracting compute memory barriers between shading languages.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 41, column 9)

FFX_ATOMIC_ADD

#define FFX_ATOMIC_ADD(x, y) atomicAdd(x, y)

A define for abstracting compute atomic additions between shading languages.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 46, column 9)

FFX_ATOMIC_ADD_RETURN

#define FFX_ATOMIC_ADD_RETURN(x, y, r) r = atomicAdd(x, y)

A define for abstracting compute atomic additions between shading languages.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 51, column 9)

FFX_ATOMIC_OR

#define FFX_ATOMIC_OR(x, y) atomicOr(x, y)

A define for abstracting compute atomic OR between shading languages.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 56, column 9)

FFX_ATOMIC_MIN

#define FFX_ATOMIC_MIN(x, y) atomicMin(x, y)

A define for abstracting compute atomic min between shading languages.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 61, column 9)

FFX_ATOMIC_MAX

#define FFX_ATOMIC_MAX(x, y) atomicMax(x, y)

A define for abstracting compute atomic max between shading languages.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 66, column 9)

FFX_STATIC

#define FFX_STATIC

A define added to accept static markup on functions to aid CPU/GPU portability of code.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 71, column 9)

FFX_UNROLL

#define FFX_UNROLL

A define for abstracting loop unrolling between shading languages.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 76, column 9)

FFX_GREATER_THAN

#define FFX_GREATER_THAN(x, y) greaterThan(x, y)

A define for abstracting a ‘greater than’ comparison operator between two types.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 81, column 9)

FFX_GREATER_THAN_EQUAL

#define FFX_GREATER_THAN_EQUAL(x, y) greaterThanEqual(x, y)

A define for abstracting a ‘greater than or equal’ comparison operator between two types.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 86, column 9)

FFX_LESS_THAN

#define FFX_LESS_THAN(x, y) lessThan(x, y)

A define for abstracting a ‘less than’ comparison operator between two types.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 91, column 9)

FFX_LESS_THAN_EQUAL

#define FFX_LESS_THAN_EQUAL(x, y) lessThanEqual(x, y)

A define for abstracting a ‘less than or equal’ comparison operator between two types.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 96, column 9)

FFX_EQUAL

#define FFX_EQUAL(x, y) equal(x, y)

A define for abstracting an ‘equal’ comparison operator between two types.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 101, column 9)

FFX_NOT_EQUAL

#define FFX_NOT_EQUAL(x, y) notEqual(x, y)

A define for abstracting a ‘not equal’ comparison operator between two types.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 106, column 9)

FFX_MATRIX_MULTIPLY

#define FFX_MATRIX_MULTIPLY(a, b) (a * b)

A define for abstracting matrix multiply operations between shading languages.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 111, column 9)

FFX_TRANSFORM_VECTOR

#define FFX_TRANSFORM_VECTOR(a, b) (a * b)

A define for abstracting vector transformations between shading languages.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 116, column 9)

FFX_MODULO

#define FFX_MODULO(a, b) (mod(a, b))

A define for abstracting modulo operations between shading languages.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 121, column 9)

FFX_BROADCAST_FLOAT32

#define FFX_BROADCAST_FLOAT32(x) FfxFloat32(x)

Broadcast a scalar value to a 1-dimensional floating point vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 126, column 9)

FFX_BROADCAST_FLOAT32X2

#define FFX_BROADCAST_FLOAT32X2(x) FfxFloat32x2(FfxFloat32(x))

Broadcast a scalar value to a 2-dimensional floating point vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 131, column 9)

FFX_BROADCAST_FLOAT32X3

#define FFX_BROADCAST_FLOAT32X3(x) FfxFloat32x3(FfxFloat32(x))

Broadcast a scalar value to a 3-dimensional floating point vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 136, column 9)

FFX_BROADCAST_FLOAT32X4

#define FFX_BROADCAST_FLOAT32X4(x) FfxFloat32x4(FfxFloat32(x))

Broadcast a scalar value to a 4-dimensional floating point vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 141, column 9)

FFX_BROADCAST_UINT32

#define FFX_BROADCAST_UINT32(x) FfxUInt32(x)

Broadcast a scalar value to a 1-dimensional unsigned integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 146, column 9)

FFX_BROADCAST_UINT32X2

#define FFX_BROADCAST_UINT32X2(x) FfxUInt32x2(FfxUInt32(x))

Broadcast a scalar value to a 2-dimensional unsigned integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 151, column 9)

FFX_BROADCAST_UINT32X3

#define FFX_BROADCAST_UINT32X3(x) FfxUInt32x3(FfxUInt32(x))

Broadcast a scalar value to a 3-dimensional unsigned integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 156, column 9)

FFX_BROADCAST_UINT32X4

#define FFX_BROADCAST_UINT32X4(x) FfxUInt32x4(FfxUInt32(x))

Broadcast a scalar value to a 4-dimensional unsigned integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 161, column 9)

FFX_BROADCAST_INT32

#define FFX_BROADCAST_INT32(x) FfxInt32(x)

Broadcast a scalar value to a 1-dimensional signed integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 166, column 9)

FFX_BROADCAST_INT32X2

#define FFX_BROADCAST_INT32X2(x) FfxInt32x2(FfxInt32(x))

Broadcast a scalar value to a 2-dimensional signed integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 171, column 9)

FFX_BROADCAST_INT32X3

#define FFX_BROADCAST_INT32X3(x) FfxInt32x3(FfxInt32(x))

Broadcast a scalar value to a 3-dimensional signed integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 176, column 9)

FFX_BROADCAST_INT32X4

#define FFX_BROADCAST_INT32X4(x) FfxInt32x4(FfxInt32(x))

Broadcast a scalar value to a 4-dimensional signed integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 181, column 9)

FFX_BROADCAST_MIN_FLOAT16

#define FFX_BROADCAST_MIN_FLOAT16(x) FFX_MIN16_F(x)

Broadcast a scalar value to a 1-dimensional half-precision floating point vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 186, column 9)

FFX_BROADCAST_MIN_FLOAT16X2

#define FFX_BROADCAST_MIN_FLOAT16X2(x) FFX_MIN16_F2(FFX_MIN16_F(x))

Broadcast a scalar value to a 2-dimensional half-precision floating point vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 191, column 9)

FFX_BROADCAST_MIN_FLOAT16X3

#define FFX_BROADCAST_MIN_FLOAT16X3(x) FFX_MIN16_F3(FFX_MIN16_F(x))

Broadcast a scalar value to a 3-dimensional half-precision floating point vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 196, column 9)

FFX_BROADCAST_MIN_FLOAT16X4

#define FFX_BROADCAST_MIN_FLOAT16X4(x) FFX_MIN16_F4(FFX_MIN16_F(x))

Broadcast a scalar value to a 4-dimensional half-precision floating point vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 201, column 9)

FFX_BROADCAST_MIN_UINT16

#define FFX_BROADCAST_MIN_UINT16(x) FFX_MIN16_U(x)

Broadcast a scalar value to a 1-dimensional half-precision unsigned integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 206, column 9)

FFX_BROADCAST_MIN_UINT16X2

#define FFX_BROADCAST_MIN_UINT16X2(x) FFX_MIN16_U2(FFX_MIN16_U(x))

Broadcast a scalar value to a 2-dimensional half-precision unsigned integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 211, column 9)

FFX_BROADCAST_MIN_UINT16X3

#define FFX_BROADCAST_MIN_UINT16X3(x) FFX_MIN16_U3(FFX_MIN16_U(x))

Broadcast a scalar value to a 3-dimensional half-precision unsigned integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 216, column 9)

FFX_BROADCAST_MIN_UINT16X4

#define FFX_BROADCAST_MIN_UINT16X4(x) FFX_MIN16_U4(FFX_MIN16_U(x))

Broadcast a scalar value to a 4-dimensional half-precision unsigned integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 221, column 9)

FFX_BROADCAST_MIN_INT16

#define FFX_BROADCAST_MIN_INT16(x) FFX_MIN16_I(x)

Broadcast a scalar value to a 1-dimensional half-precision signed integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 226, column 9)

FFX_BROADCAST_MIN_INT16X2

#define FFX_BROADCAST_MIN_INT16X2(x) FFX_MIN16_I2(FFX_MIN16_I(x))

Broadcast a scalar value to a 2-dimensional half-precision signed integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 231, column 9)

FFX_BROADCAST_MIN_INT16X3

#define FFX_BROADCAST_MIN_INT16X3(x) FFX_MIN16_I3(FFX_MIN16_I(x))

Broadcast a scalar value to a 3-dimensional half-precision signed integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 236, column 9)

FFX_BROADCAST_MIN_INT16X4

#define FFX_BROADCAST_MIN_INT16X4(x) FFX_MIN16_I4(FFX_MIN16_I(x))

Broadcast a scalar value to a 4-dimensional half-precision signed integer vector.

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 241, column 9)

Functions

ffxAsFloat

FfxFloat32 ffxAsFloat(FfxUInt32 x)

Interprets the bit pattern of x as a floating-point number.

Returns: The input interpreted as a floating-point number.

Parameters:

  • x (FfxUInt32) – [in] The input value.

Returns: FfxFloat32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 276, column 12)

ffxAsFloat

FfxFloat32x2 ffxAsFloat(FfxUInt32x2 x)

Interprets the bit pattern of x as a floating-point number.

Returns: The input interpreted as a floating-point number.

Parameters:

  • x (FfxUInt32x2) – [in] The input value.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 289, column 14)

ffxAsFloat

FfxFloat32x3 ffxAsFloat(FfxUInt32x3 x)

Interprets the bit pattern of x as a floating-point number.

Returns: The input interpreted as a floating-point number.

Parameters:

  • x (FfxUInt32x3) – [in] The input value.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 302, column 14)

ffxAsFloat

FfxFloat32x4 ffxAsFloat(FfxUInt32x4 x)

Interprets the bit pattern of x as a floating-point number.

Returns: The input interpreted as a floating-point number.

Parameters:

  • x (FfxUInt32x4) – [in] The input value.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 315, column 14)

ffxAsUInt32

FfxUInt32 ffxAsUInt32(FfxFloat32 x)

Interprets the bit pattern of x as an unsigned integer.

Returns: The input interpreted as an unsigned integer.

Parameters:

  • x (FfxFloat32) – [in] The input value.

Returns: FfxUInt32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 328, column 11)

ffxAsUInt32

FfxUInt32x2 ffxAsUInt32(FfxFloat32x2 x)

Interprets the bit pattern of x as an unsigned integer.

Returns: The input interpreted as an unsigned integer.

Parameters:

  • x (FfxFloat32x2) – [in] The input value.

Returns: FfxUInt32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 341, column 13)

ffxAsUInt32

FfxUInt32x3 ffxAsUInt32(FfxFloat32x3 x)

Interprets the bit pattern of x as an unsigned integer.

Returns: The input interpreted as an unsigned integer.

Parameters:

  • x (FfxFloat32x3) – [in] The input value.

Returns: FfxUInt32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 354, column 13)

ffxAsUInt32

FfxUInt32x4 ffxAsUInt32(FfxFloat32x4 x)

Interprets the bit pattern of x as an unsigned integer.

Returns: The input interpreted as an unsigned integer.

Parameters:

  • x (FfxFloat32x4) – [in] The input value.

Returns: FfxUInt32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 367, column 13)

ffxPackHalf2x16

FfxUInt32 ffxPackHalf2x16(FfxFloat32x2 value)

Pack 2x32-bit floating point values in a single 32bit value.

This function first converts each component of value into their nearest 16-bit floating point representation, and then stores the X and Y components in the lower and upper 16 bits of the 32bit unsigned integer respectively.

Returns: A packed 32bit value containing 2 16bit floating point values.

Parameters:

  • value (FfxFloat32x2) – [in] A 2-dimensional floating point value to convert and pack.

Returns: FfxUInt32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 384, column 11)

ffxF32ToF16

FfxUInt32 ffxF32ToF16(FfxFloat32 value)

Convert a 32bit IEEE 754 floating point value to its nearest 16bit equivalent.

Returns: The nearest 16bit equivalent of value.

Parameters:

  • value (FfxFloat32) – [in] The value to convert.

Returns: FfxUInt32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 397, column 11)

ffxBroadcast2

FfxFloat32x2 ffxBroadcast2(FfxFloat32 value)

Broadcast a scalar value to a 2-dimensional floating point vector.

Returns: A 2-dimensional floating point vector with value in each component.

Parameters:

  • value (FfxFloat32) – [in] The value to to broadcast.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 410, column 14)

ffxBroadcast3

FfxFloat32x3 ffxBroadcast3(FfxFloat32 value)

Broadcast a scalar value to a 3-dimensional floating point vector.

Returns: A 3-dimensional floating point vector with value in each component.

Parameters:

  • value (FfxFloat32) – [in] The value to to broadcast.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 423, column 14)

ffxBroadcast4

FfxFloat32x4 ffxBroadcast4(FfxFloat32 value)

Broadcast a scalar value to a 4-dimensional floating point vector.

Returns: A 4-dimensional floating point vector with value in each component.

Parameters:

  • value (FfxFloat32) – [in] The value to to broadcast.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 436, column 14)

ffxBroadcast2

FfxInt32x2 ffxBroadcast2(FfxInt32 value)

Broadcast a scalar value to a 2-dimensional signed integer vector.

Returns: A 2-dimensional signed integer vector with value in each component.

Parameters:

  • value (FfxInt32) – [in] The value to to broadcast.

Returns: FfxInt32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 449, column 12)

ffxBroadcast3

FfxInt32x3 ffxBroadcast3(FfxInt32 value)

Broadcast a scalar value to a 3-dimensional signed integer vector.

Returns: A 3-dimensional signed integer vector with value in each component.

Parameters:

  • value (FfxInt32) – [in] The value to to broadcast.

Returns: FfxInt32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 462, column 12)

ffxBroadcast4

FfxInt32x4 ffxBroadcast4(FfxInt32 value)

Broadcast a scalar value to a 4-dimensional signed integer vector.

Returns: A 4-dimensional signed integer vector with value in each component.

Parameters:

  • value (FfxInt32) – [in] The value to to broadcast.

Returns: FfxInt32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 475, column 12)

ffxBroadcast2

FfxUInt32x2 ffxBroadcast2(FfxUInt32 value)

Broadcast a scalar value to a 2-dimensional unsigned integer vector.

Returns: A 2-dimensional unsigned integer vector with value in each component.

Parameters:

  • value (FfxUInt32) – [in] The value to to broadcast.

Returns: FfxUInt32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 488, column 13)

ffxBroadcast3

FfxUInt32x3 ffxBroadcast3(FfxUInt32 value)

Broadcast a scalar value to a 3-dimensional unsigned integer vector.

Returns: A 3-dimensional unsigned integer vector with value in each component.

Parameters:

  • value (FfxUInt32) – [in] The value to to broadcast.

Returns: FfxUInt32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 501, column 13)

ffxBroadcast4

FfxUInt32x4 ffxBroadcast4(FfxUInt32 value)

Broadcast a scalar value to a 4-dimensional unsigned integer vector.

Returns: A 4-dimensional unsigned integer vector with value in each component.

Parameters:

  • value (FfxUInt32) – [in] The value to to broadcast.

Returns: FfxUInt32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 514, column 13)

ffxBitfieldExtract

FfxUInt32 ffxBitfieldExtract(FfxUInt32 src, FfxUInt32 off, FfxUInt32 bits)

Parameters:

NameTypeDefault
srcFfxUInt32
offFfxUInt32
bitsFfxUInt32

Returns: FfxUInt32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 522, column 11)

ffxBitfieldInsert

FfxUInt32 ffxBitfieldInsert(FfxUInt32 src, FfxUInt32 ins, FfxUInt32 mask)

Parameters:

NameTypeDefault
srcFfxUInt32
insFfxUInt32
maskFfxUInt32

Returns: FfxUInt32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 530, column 11)

ffxBitfieldInsertMask

FfxUInt32 ffxBitfieldInsertMask(FfxUInt32 src, FfxUInt32 ins, FfxUInt32 bits)

Parameters:

NameTypeDefault
srcFfxUInt32
insFfxUInt32
bitsFfxUInt32

Returns: FfxUInt32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 539, column 11)

ffxLerp

FfxFloat32 ffxLerp(FfxFloat32 x, FfxFloat32 y, FfxFloat32 t)

Compute the linear interopation between two values.

Implemented by calling the GLSL mix instrinsic function. Implements the following math: (1 - t) * x + t * y

Returns: A linearly interpolated value between x and y according to t.

Parameters:

  • x (FfxFloat32) – [in] The first value to lerp between.
  • y (FfxFloat32) – [in] The second value to lerp between.
  • t (FfxFloat32) – [in] The value to determine how much of x and how much of y.

Returns: FfxFloat32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 559, column 12)

ffxLerp

FfxFloat32x2 ffxLerp(FfxFloat32x2 x, FfxFloat32x2 y, FfxFloat32 t)

Compute the linear interopation between two values.

Implemented by calling the GLSL mix instrinsic function. Implements the following math: (1 - t) * x + t * y

Returns: A linearly interpolated value between x and y according to t.

Parameters:

  • x (FfxFloat32x2) – [in] The first value to lerp between.
  • y (FfxFloat32x2) – [in] The second value to lerp between.
  • t (FfxFloat32) – [in] The value to determine how much of x and how much of y.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 579, column 14)

ffxLerp

FfxFloat32x2 ffxLerp(FfxFloat32x2 x, FfxFloat32x2 y, FfxFloat32x2 t)

Compute the linear interopation between two values.

Implemented by calling the GLSL mix instrinsic function. Implements the following math: (1 - t) * x + t * y

Returns: A linearly interpolated value between x and y according to t.

Parameters:

  • x (FfxFloat32x2) – [in] The first value to lerp between.
  • y (FfxFloat32x2) – [in] The second value to lerp between.
  • t (FfxFloat32x2) – [in] The value to determine how much of x and how much of y.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 599, column 14)

ffxLerp

FfxFloat32x3 ffxLerp(FfxFloat32x3 x, FfxFloat32x3 y, FfxFloat32 t)

Compute the linear interopation between two values.

Implemented by calling the GLSL mix instrinsic function. Implements the following math: (1 - t) * x + t * y

Returns: A linearly interpolated value between x and y according to t.

Parameters:

  • x (FfxFloat32x3) – [in] The first value to lerp between.
  • y (FfxFloat32x3) – [in] The second value to lerp between.
  • t (FfxFloat32) – [in] The value to determine how much of x and how much of y.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 619, column 14)

ffxLerp

FfxFloat32x3 ffxLerp(FfxFloat32x3 x, FfxFloat32x3 y, FfxFloat32x3 t)

Compute the linear interopation between two values.

Implemented by calling the GLSL mix instrinsic function. Implements the following math: (1 - t) * x + t * y

Returns: A linearly interpolated value between x and y according to t.

Parameters:

  • x (FfxFloat32x3) – [in] The first value to lerp between.
  • y (FfxFloat32x3) – [in] The second value to lerp between.
  • t (FfxFloat32x3) – [in] The value to determine how much of x and how much of y.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 639, column 14)

ffxLerp

FfxFloat32x4 ffxLerp(FfxFloat32x4 x, FfxFloat32x4 y, FfxFloat32 t)

Compute the linear interopation between two values.

Implemented by calling the GLSL mix instrinsic function. Implements the following math: (1 - t) * x + t * y

Returns: A linearly interpolated value between x and y according to t.

Parameters:

  • x (FfxFloat32x4) – [in] The first value to lerp between.
  • y (FfxFloat32x4) – [in] The second value to lerp between.
  • t (FfxFloat32) – [in] The value to determine how much of x and how much of y.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 659, column 14)

ffxLerp

FfxFloat32x4 ffxLerp(FfxFloat32x4 x, FfxFloat32x4 y, FfxFloat32x4 t)

Compute the linear interopation between two values.

Implemented by calling the GLSL mix instrinsic function. Implements the following math: (1 - t) * x + t * y

Returns: A linearly interpolated value between x and y according to t.

Parameters:

  • x (FfxFloat32x4) – [in] The first value to lerp between.
  • y (FfxFloat32x4) – [in] The second value to lerp between.
  • t (FfxFloat32x4) – [in] The value to determine how much of x and how much of y.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 679, column 14)

ffxMax3

FfxFloat32 ffxMax3(FfxFloat32 x, FfxFloat32 y, FfxFloat32 z)

Compute the maximum of three values.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN or RDNA hardware.

Returns: The maximum value of x, y, and z.

Parameters:

  • x (FfxFloat32) – [in] The first value to include in the max calculation.
  • y (FfxFloat32) – [in] The second value to include in the max calcuation.
  • z (FfxFloat32) – [in] The third value to include in the max calcuation.

Returns: FfxFloat32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 697, column 12)

ffxMax3

FfxFloat32x2 ffxMax3(FfxFloat32x2 x, FfxFloat32x2 y, FfxFloat32x2 z)

Compute the maximum of three values.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN or RDNA hardware.

Returns: The maximum value of x, y, and z.

Parameters:

  • x (FfxFloat32x2) – [in] The first value to include in the max calculation.
  • y (FfxFloat32x2) – [in] The second value to include in the max calcuation.
  • z (FfxFloat32x2) – [in] The third value to include in the max calcuation.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 715, column 14)

ffxMax3

FfxFloat32x3 ffxMax3(FfxFloat32x3 x, FfxFloat32x3 y, FfxFloat32x3 z)

Compute the maximum of three values.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN or RDNA hardware.

Returns: The maximum value of x, y, and z.

Parameters:

  • x (FfxFloat32x3) – [in] The first value to include in the max calculation.
  • y (FfxFloat32x3) – [in] The second value to include in the max calcuation.
  • z (FfxFloat32x3) – [in] The third value to include in the max calcuation.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 733, column 14)

ffxMax3

FfxFloat32x4 ffxMax3(FfxFloat32x4 x, FfxFloat32x4 y, FfxFloat32x4 z)

Compute the maximum of three values.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN or RDNA hardware.

Returns: The maximum value of x, y, and z.

Parameters:

  • x (FfxFloat32x4) – [in] The first value to include in the max calculation.
  • y (FfxFloat32x4) – [in] The second value to include in the max calcuation.
  • z (FfxFloat32x4) – [in] The third value to include in the max calcuation.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 751, column 14)

ffxMax3

FfxUInt32 ffxMax3(FfxUInt32 x, FfxUInt32 y, FfxUInt32 z)

Compute the maximum of three values.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN or RDNA hardware.

Returns: The maximum value of x, y, and z.

Parameters:

  • x (FfxUInt32) – [in] The first value to include in the max calculation.
  • y (FfxUInt32) – [in] The second value to include in the max calcuation.
  • z (FfxUInt32) – [in] The third value to include in the max calcuation.

Returns: FfxUInt32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 769, column 11)

ffxMax3

FfxUInt32x2 ffxMax3(FfxUInt32x2 x, FfxUInt32x2 y, FfxUInt32x2 z)

Compute the maximum of three values.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN or RDNA hardware.

Returns: The maximum value of x, y, and z.

Parameters:

  • x (FfxUInt32x2) – [in] The first value to include in the max calculation.
  • y (FfxUInt32x2) – [in] The second value to include in the max calcuation.
  • z (FfxUInt32x2) – [in] The third value to include in the max calcuation.

Returns: FfxUInt32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 787, column 13)

ffxMax3

FfxUInt32x3 ffxMax3(FfxUInt32x3 x, FfxUInt32x3 y, FfxUInt32x3 z)

Compute the maximum of three values.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN/RDNA hardware.

Returns: The maximum value of x, y, and z.

Parameters:

  • x (FfxUInt32x3) – [in] The first value to include in the max calculation.
  • y (FfxUInt32x3) – [in] The second value to include in the max calcuation.
  • z (FfxUInt32x3) – [in] The third value to include in the max calcuation.

Returns: FfxUInt32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 805, column 13)

ffxMax3

FfxUInt32x4 ffxMax3(FfxUInt32x4 x, FfxUInt32x4 y, FfxUInt32x4 z)

Compute the maximum of three values.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN/RDNA hardware.

Returns: The maximum value of x, y, and z.

Parameters:

  • x (FfxUInt32x4) – [in] The first value to include in the max calculation.
  • y (FfxUInt32x4) – [in] The second value to include in the max calcuation.
  • z (FfxUInt32x4) – [in] The third value to include in the max calcuation.

Returns: FfxUInt32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 823, column 13)

ffxMed3

FfxFloat32 ffxMed3(FfxFloat32 x, FfxFloat32 y, FfxFloat32 z)

Compute the median of three values.

NOTE: This function should compile down to a single V_MED3_F32 operation on GCN/RDNA hardware.

Returns: The median value of x, y, and z.

Parameters:

  • x (FfxFloat32) – [in] The first value to include in the median calculation.
  • y (FfxFloat32) – [in] The second value to include in the median calcuation.
  • z (FfxFloat32) – [in] The third value to include in the median calcuation.

Returns: FfxFloat32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 841, column 12)

ffxMed3

FfxFloat32x2 ffxMed3(FfxFloat32x2 x, FfxFloat32x2 y, FfxFloat32x2 z)

Compute the median of three values.

NOTE: This function should compile down to a single V_MED3_F32 operation on GCN/RDNA hardware.

Returns: The median value of x, y, and z.

Parameters:

  • x (FfxFloat32x2) – [in] The first value to include in the median calculation.
  • y (FfxFloat32x2) – [in] The second value to include in the median calcuation.
  • z (FfxFloat32x2) – [in] The third value to include in the median calcuation.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 859, column 14)

ffxMed3

FfxFloat32x3 ffxMed3(FfxFloat32x3 x, FfxFloat32x3 y, FfxFloat32x3 z)

Compute the median of three values.

NOTE: This function should compile down to a single V_MED3_F32 operation on GCN/RDNA hardware.

Returns: The median value of x, y, and z.

Parameters:

  • x (FfxFloat32x3) – [in] The first value to include in the median calculation.
  • y (FfxFloat32x3) – [in] The second value to include in the median calcuation.
  • z (FfxFloat32x3) – [in] The third value to include in the median calcuation.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 877, column 14)

ffxMed3

FfxFloat32x4 ffxMed3(FfxFloat32x4 x, FfxFloat32x4 y, FfxFloat32x4 z)

Compute the median of three values.

NOTE: This function should compile down to a single V_MED3_F32 operation on GCN/RDNA hardware.

Returns: The median value of x, y, and z.

Parameters:

  • x (FfxFloat32x4) – [in] The first value to include in the median calculation.
  • y (FfxFloat32x4) – [in] The second value to include in the median calcuation.
  • z (FfxFloat32x4) – [in] The third value to include in the median calcuation.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 895, column 14)

ffxMed3

FfxInt32 ffxMed3(FfxInt32 x, FfxInt32 y, FfxInt32 z)

Compute the median of three values.

NOTE: This function should compile down to a single V_MED3_I32 operation on GCN/RDNA hardware.

Returns: The median value of x, y, and z.

Parameters:

  • x (FfxInt32) – [in] The first value to include in the median calculation.
  • y (FfxInt32) – [in] The second value to include in the median calcuation.
  • z (FfxInt32) – [in] The third value to include in the median calcuation.

Returns: FfxInt32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 913, column 10)

ffxMed3

FfxInt32x2 ffxMed3(FfxInt32x2 x, FfxInt32x2 y, FfxInt32x2 z)

Compute the median of three values.

NOTE: This function should compile down to a single V_MED3_I32 operation on GCN/RDNA hardware.

Returns: The median value of x, y, and z.

Parameters:

  • x (FfxInt32x2) – [in] The first value to include in the median calculation.
  • y (FfxInt32x2) – [in] The second value to include in the median calcuation.
  • z (FfxInt32x2) – [in] The third value to include in the median calcuation.

Returns: FfxInt32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 931, column 12)

ffxMed3

FfxInt32x3 ffxMed3(FfxInt32x3 x, FfxInt32x3 y, FfxInt32x3 z)

Compute the median of three values.

NOTE: This function should compile down to a single V_MED3_I32 operation on GCN/RDNA hardware.

Returns: The median value of x, y, and z.

Parameters:

  • x (FfxInt32x3) – [in] The first value to include in the median calculation.
  • y (FfxInt32x3) – [in] The second value to include in the median calcuation.
  • z (FfxInt32x3) – [in] The third value to include in the median calcuation.

Returns: FfxInt32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 949, column 12)

ffxMed3

FfxInt32x4 ffxMed3(FfxInt32x4 x, FfxInt32x4 y, FfxInt32x4 z)

Compute the median of three values.

NOTE: This function should compile down to a single V_MED3_I32 operation on GCN/RDNA hardware.

Returns: The median value of x, y, and z.

Parameters:

  • x (FfxInt32x4) – [in] The first value to include in the median calculation.
  • y (FfxInt32x4) – [in] The second value to include in the median calcuation.
  • z (FfxInt32x4) – [in] The third value to include in the median calcuation.

Returns: FfxInt32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 967, column 12)

ffxMin3

FfxFloat32 ffxMin3(FfxFloat32 x, FfxFloat32 y, FfxFloat32 z)

Compute the minimum of three values.

NOTE: This function should compile down to a single V_MIN3_F32 operation on GCN and RDNA hardware.

Returns: The minimum value of x, y, and z.

Parameters:

  • x (FfxFloat32) – [in] The first value to include in the min calculation.
  • y (FfxFloat32) – [in] The second value to include in the min calcuation.
  • z (FfxFloat32) – [in] The third value to include in the min calcuation.

Returns: FfxFloat32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 986, column 12)

ffxMin3

FfxFloat32x2 ffxMin3(FfxFloat32x2 x, FfxFloat32x2 y, FfxFloat32x2 z)

Compute the minimum of three values.

NOTE: This function should compile down to a single V_MIN3_F32 operation on GCN/RDNA hardware.

Returns: The minimum value of x, y, and z.

Parameters:

  • x (FfxFloat32x2) – [in] The first value to include in the min calculation.
  • y (FfxFloat32x2) – [in] The second value to include in the min calcuation.
  • z (FfxFloat32x2) – [in] The third value to include in the min calcuation.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1004, column 14)

ffxMin3

FfxFloat32x3 ffxMin3(FfxFloat32x3 x, FfxFloat32x3 y, FfxFloat32x3 z)

Compute the minimum of three values.

NOTE: This function should compile down to a single V_MIN3_F32 operation on GCN/RDNA hardware.

Returns: The minimum value of x, y, and z.

Parameters:

  • x (FfxFloat32x3) – [in] The first value to include in the min calculation.
  • y (FfxFloat32x3) – [in] The second value to include in the min calcuation.
  • z (FfxFloat32x3) – [in] The third value to include in the min calcuation.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1022, column 14)

ffxMin3

FfxFloat32x4 ffxMin3(FfxFloat32x4 x, FfxFloat32x4 y, FfxFloat32x4 z)

Compute the minimum of three values.

NOTE: This function should compile down to a single V_MIN3_F32 operation on GCN/RDNA hardware.

Returns: The minimum value of x, y, and z.

Parameters:

  • x (FfxFloat32x4) – [in] The first value to include in the min calculation.
  • y (FfxFloat32x4) – [in] The second value to include in the min calcuation.
  • z (FfxFloat32x4) – [in] The third value to include in the min calcuation.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1040, column 14)

ffxMin3

FfxUInt32 ffxMin3(FfxUInt32 x, FfxUInt32 y, FfxUInt32 z)

Compute the minimum of three values.

NOTE: This function should compile down to a single V_MIN3_F32 operation on GCN/RDNA hardware.

Returns: The minimum value of x, y, and z.

Parameters:

  • x (FfxUInt32) – [in] The first value to include in the min calculation.
  • y (FfxUInt32) – [in] The second value to include in the min calcuation.
  • z (FfxUInt32) – [in] The third value to include in the min calcuation.

Returns: FfxUInt32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1058, column 11)

ffxMin3

FfxUInt32x2 ffxMin3(FfxUInt32x2 x, FfxUInt32x2 y, FfxUInt32x2 z)

Compute the minimum of three values.

NOTE: This function should compile down to a single V_MIN3_F32 operation on GCN/RDNA hardware.

Returns: The minimum value of x, y, and z.

Parameters:

  • x (FfxUInt32x2) – [in] The first value to include in the min calculation.
  • y (FfxUInt32x2) – [in] The second value to include in the min calcuation.
  • z (FfxUInt32x2) – [in] The third value to include in the min calcuation.

Returns: FfxUInt32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1076, column 13)

ffxMin3

FfxUInt32x3 ffxMin3(FfxUInt32x3 x, FfxUInt32x3 y, FfxUInt32x3 z)

Compute the minimum of three values.

NOTE: This function should compile down to a single V_MIN3_F32 operation on GCN/RDNA hardware.

Returns: The minimum value of x, y, and z.

Parameters:

  • x (FfxUInt32x3) – [in] The first value to include in the min calculation.
  • y (FfxUInt32x3) – [in] The second value to include in the min calcuation.
  • z (FfxUInt32x3) – [in] The third value to include in the min calcuation.

Returns: FfxUInt32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1094, column 13)

ffxMin3

FfxUInt32x4 ffxMin3(FfxUInt32x4 x, FfxUInt32x4 y, FfxUInt32x4 z)

Compute the minimum of three values.

NOTE: This function should compile down to a single V_MIN3_F32 operation on GCN/RDNA hardware.

Returns: The minimum value of x, y, and z.

Parameters:

  • x (FfxUInt32x4) – [in] The first value to include in the min calculation.
  • y (FfxUInt32x4) – [in] The second value to include in the min calcuation.
  • z (FfxUInt32x4) – [in] The third value to include in the min calcuation.

Returns: FfxUInt32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1112, column 13)

ffxReciprocal

FfxFloat32 ffxReciprocal(FfxFloat32 x)

Compute the reciprocal of a value.

NOTE: This function is only provided for GLSL. In HLSL the intrinsic function rcp can be used.

Returns: The reciprocal value of x.

Parameters:

  • x (FfxFloat32) – [in] The value to compute the reciprocal for.

Returns: FfxFloat32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1127, column 12)

ffxReciprocal

FfxFloat32x2 ffxReciprocal(FfxFloat32x2 x)

Compute the reciprocal of a value.

NOTE: This function is only provided for GLSL. In HLSL the intrinsic function rcp can be used.

Returns: The reciprocal value of x.

Parameters:

  • x (FfxFloat32x2) – [in] The value to compute the reciprocal for.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1142, column 14)

ffxReciprocal

FfxFloat32x3 ffxReciprocal(FfxFloat32x3 x)

Compute the reciprocal of a value.

NOTE: This function is only provided for GLSL. In HLSL the intrinsic function rcp can be used.

Returns: The reciprocal value of x.

Parameters:

  • x (FfxFloat32x3) – [in] The value to compute the reciprocal for.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1157, column 14)

ffxReciprocal

FfxFloat32x4 ffxReciprocal(FfxFloat32x4 x)

Compute the reciprocal of a value.

NOTE: This function is only provided for GLSL. In HLSL the intrinsic function rcp can be used.

Returns: The reciprocal value of x.

Parameters:

  • x (FfxFloat32x4) – [in] The value to compute the reciprocal for.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1172, column 14)

ffxRsqrt

FfxFloat32 ffxRsqrt(FfxFloat32 x)

Compute the reciprocal square root of a value.

NOTE: This function is only provided for GLSL. In HLSL the intrinsic function rsqrt can be used.

Returns: The reciprocal square root value of x.

Parameters:

  • x (FfxFloat32) – [in] The value to compute the reciprocal for.

Returns: FfxFloat32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1187, column 12)

ffxRsqrt

FfxFloat32x2 ffxRsqrt(FfxFloat32x2 x)

Compute the reciprocal square root of a value.

NOTE: This function is only provided for GLSL. In HLSL the intrinsic function rsqrt can be used.

Returns: The reciprocal square root value of x.

Parameters:

  • x (FfxFloat32x2) – [in] The value to compute the reciprocal for.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1202, column 14)

ffxRsqrt

FfxFloat32x3 ffxRsqrt(FfxFloat32x3 x)

Compute the reciprocal square root of a value.

NOTE: This function is only provided for GLSL. In HLSL the intrinsic function rsqrt can be used.

Returns: The reciprocal square root value of x.

Parameters:

  • x (FfxFloat32x3) – [in] The value to compute the reciprocal for.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1217, column 14)

rsqrt

FfxFloat32x4 rsqrt(FfxFloat32x4 x)

Compute the reciprocal square root of a value.

NOTE: This function is only provided for GLSL. In HLSL the intrinsic function rsqrt can be used.

Returns: The reciprocal square root value of x.

Parameters:

  • x (FfxFloat32x4) – [in] The value to compute the reciprocal for.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1232, column 14)

ffxSaturate

FfxFloat32 ffxSaturate(FfxFloat32 x)

Clamp a value to a [0..1] range.

Returns: The clamped version of x.

Parameters:

  • x (FfxFloat32) – [in] The value to clamp to [0..1] range.

Returns: FfxFloat32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1245, column 12)

ffxSaturate

FfxFloat32x2 ffxSaturate(FfxFloat32x2 x)

Clamp a value to a [0..1] range.

Returns: The clamped version of x.

Parameters:

  • x (FfxFloat32x2) – [in] The value to clamp to [0..1] range.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1258, column 14)

ffxSaturate

FfxFloat32x3 ffxSaturate(FfxFloat32x3 x)

Clamp a value to a [0..1] range.

Returns: The clamped version of x.

Parameters:

  • x (FfxFloat32x3) – [in] The value to clamp to [0..1] range.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1271, column 14)

ffxSaturate

FfxFloat32x4 ffxSaturate(FfxFloat32x4 x)

Clamp a value to a [0..1] range.

Returns: The clamped version of x.

Parameters:

  • x (FfxFloat32x4) – [in] The value to clamp to [0..1] range.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1284, column 14)

ffxFract

FfxFloat32 ffxFract(FfxFloat32 x)

Compute the factional part of a decimal value.

This function calculates x - floor(x). Where floor is the intrinsic HLSL function.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN/RDNA hardware. It is worth further noting that this function is intentionally distinct from the HLSL frac intrinsic function.

Returns: The fractional part of x.

Parameters:

  • x (FfxFloat32) – [in] The value to compute the fractional part from.

Returns: FfxFloat32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1303, column 12)

ffxFract

FfxFloat32x2 ffxFract(FfxFloat32x2 x)

Compute the factional part of a decimal value.

This function calculates x - floor(x). Where floor is the intrinsic HLSL function.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN/RDNA hardware. It is worth further noting that this function is intentionally distinct from the HLSL frac intrinsic function.

Returns: The fractional part of x.

Parameters:

  • x (FfxFloat32x2) – [in] The value to compute the fractional part from.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1322, column 14)

ffxFract

FfxFloat32x3 ffxFract(FfxFloat32x3 x)

Compute the factional part of a decimal value.

This function calculates x - floor(x). Where floor is the intrinsic HLSL function.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN/RDNA hardware. It is worth further noting that this function is intentionally distinct from the HLSL frac intrinsic function.

Returns: The fractional part of x.

Parameters:

  • x (FfxFloat32x3) – [in] The value to compute the fractional part from.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1341, column 14)

ffxFract

FfxFloat32x4 ffxFract(FfxFloat32x4 x)

Compute the factional part of a decimal value.

This function calculates x - floor(x). Where floor is the intrinsic HLSL function.

NOTE: This function should compile down to a single V_MAX3_F32 operation on GCN/RDNA hardware. It is worth further noting that this function is intentionally distinct from the HLSL frac intrinsic function.

Returns: The fractional part of x.

Parameters:

  • x (FfxFloat32x4) – [in] The value to compute the fractional part from.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1360, column 14)

ffxRound

FfxFloat32 ffxRound(FfxFloat32 x)

Rounds to the nearest integer. In case the fractional part is 0.5, it will round to the nearest even integer.

Returns: The nearest integer from x. The nearest even integer from x if equidistant from 2 integer.

Parameters:

  • x (FfxFloat32) – [in] The value to be rounded.

Returns: FfxFloat32

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1373, column 12)

ffxRound

FfxFloat32x2 ffxRound(FfxFloat32x2 x)

Rounds to the nearest integer. In case the fractional part is 0.5, it will round to the nearest even integer.

Returns: The nearest integer from x. The nearest even integer from x if equidistant from 2 integer.

Parameters:

  • x (FfxFloat32x2) – [in] The value to be rounded.

Returns: FfxFloat32x2

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1386, column 14)

ffxRound

FfxFloat32x3 ffxRound(FfxFloat32x3 x)

Rounds to the nearest integer. In case the fractional part is 0.5, it will round to the nearest even integer.

Returns: The nearest integer from x. The nearest even integer from x if equidistant from 2 integer.

Parameters:

  • x (FfxFloat32x3) – [in] The value to be rounded.

Returns: FfxFloat32x3

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1399, column 14)

ffxRound

FfxFloat32x4 ffxRound(FfxFloat32x4 x)

Rounds to the nearest integer. In case the fractional part is 0.5, it will round to the nearest even integer.

Returns: The nearest integer from x. The nearest even integer from x if equidistant from 2 integer.

Parameters:

  • x (FfxFloat32x4) – [in] The value to be rounded.

Returns: FfxFloat32x4

Source: sdk/include/FidelityFX/gpu/ffx_core_glsl.h (line 1412, column 14)