![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
Go to the source code of this file.
Typedefs | |
| using | FShaderPermutationNone = TShaderPermutationDomain<> |
Enumerations | |
| enum class | EShaderPermutationFlags : uint32 { None = 0u , HasEditorOnlyData = (1u << 0) , IsODSCOnly = (1u << 1) } |
Functions | |
| ENUM_CLASS_FLAGS (EShaderPermutationFlags) | |
Variables | |
| constexpr bool | bLogPermutations = false |
| #define DECLARE_SHADER_PERMUTATION_IMPL | ( | InDefineName, | |
| PermutationMetaType, | |||
| ... | |||
| ) |
| #define SHADER_PERMUTATION_BOOL | ( | InDefineName | ) |
Implements a boolean shader permutation dimensions. Meant to be used like so:
class FMyShaderDim : SHADER_PERMUTATION_BOOL("MY_SHADER_DEFINE_NAME");
| #define SHADER_PERMUTATION_ENUM_CLASS | ( | InDefineName, | |
| EnumName | |||
| ) | DECLARE_SHADER_PERMUTATION_IMPL(InDefineName, TShaderPermutationInt, EnumName, static_cast<int32>(EnumName::MAX)) |
Implements an shader permutation dimensions with an enum class assumed to have contiguous integer values. Meant to be used like so:
enum class EMyEnum { Hello, World, // [...] MAX };
class FMyShaderDim : SHADER_PERMUTATION_ENUM_CLASS("MY_SHADER_DEFINE_NAME", EMyEnum);
| #define SHADER_PERMUTATION_INT | ( | InDefineName, | |
| Count | |||
| ) | DECLARE_SHADER_PERMUTATION_IMPL(InDefineName, TShaderPermutationInt, int32, Count) |
Implements an integer shader permutation dimensions with N permutation values from [[0; N[[. Meant to be used like so:
class FMyShaderDim : SHADER_PERMUTATION_INT("MY_SHADER_DEFINE_NAME", N);
| #define SHADER_PERMUTATION_RANGE_INT | ( | InDefineName, | |
| Start, | |||
| Count | |||
| ) | DECLARE_SHADER_PERMUTATION_IMPL(InDefineName, TShaderPermutationInt, int32, Count, Start) |
Implements an integer shader permutation dimensions with N permutation values from [[X; X+N[[. Meant to be used like so:
class FMyShaderDim : SHADER_PERMUTATION_RANGE_INT("MY_SHADER_DEFINE_NAME", X, N);
| #define SHADER_PERMUTATION_SPARSE_INT | ( | InDefineName, | |
| ... | |||
| ) | DECLARE_SHADER_PERMUTATION_IMPL(InDefineName, TShaderPermutationSparseInt, __VA_ARGS__) |
Implements an integer shader permutation dimensions with non contiguous permutation values. Meant to be used like so:
class FMyShaderDim : SHADER_PERMUTATION_SPARSE_INT("MY_SHADER_DEFINE_NAME", 1, 2, 4, 8);
Global shader permutation domain with no dimension.
|
strong |
| ENUM_CLASS_FLAGS | ( | EShaderPermutationFlags | ) |