XII Release 0.1.0
Loading...
Searching...
No Matches
xiiGALShaderManager Class Reference

Static Public Member Functions

static void Configure (xiiStringView sActivePlatform, bool bEnableRuntimeCompilation, xiiStringView sShaderCacheDirectory=":shadercache/ShaderCache"_xiisv, xiiStringView sPermutationVariableSubDirectory="Shaders/PermutationVariables"_xiisv)
 
static const xiiStringGetPermutationVarSubDirectory ()
 
static const xiiStringGetActivePlatform ()
 
static const xiiStringGetCacheDirectory ()
 
static bool IsRuntimeCompilationEnabled ()
 
static void ReloadPermutationVarConfig (xiiStringView sName, const xiiTempHashedString &sHashedName)
 
static bool IsPermutationValueAllowed (xiiStringView sName, const xiiTempHashedString &sHashedName, const xiiTempHashedString &sValue, xiiHashedString &out_sName, xiiHashedString &out_sValue)
 
static bool IsPermutationValueAllowed (const xiiHashedString &sName, const xiiHashedString &sValue)
 
static xiiArrayPtr< const xiiGALShaderParser::EnumValueGetPermutationEnumValues (const xiiHashedString &sName)
 If the given permutation variable is an enum variable, this returns the possible values. Returns an empty array for other types of permutation variables.
 
static void GetPermutationValues (const xiiHashedString &sName, xiiDynamicArray< xiiHashedString > &out_values)
 Same as GetPermutationEnumValues() but also returns values for other types of variables. E.g. returns TRUE and FALSE for boolean variables.
 
static xiiUInt32 FilterPermutationVariables (xiiArrayPtr< const xiiHashedString > usedVariables, const xiiHashTable< xiiHashedString, xiiHashedString > &permutationVariables, xiiDynamicArray< xiiGALPermutationVariable > &out_FilteredPermutationVariables)
 

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