Properties used to generate the macros. See toData.
Optionalon: stringAny further macro hooks specifier; if given, both
the hook key and this specifier are checked (e.g: key and key_on).
The GLSL preprocessor macros defining the minimal
sampling of textures, to suit how states are stored (array of textures, or
all merged into one texture) and supported GLSL language features.
sampler array index must be a literal expressionsampler2DArraysampler3D
Defines the samples of textures per-pass, as
GLSLpreprocessor macros.The macros define the minimal sampling of textures for the data the active pass's values derive from; creates a
datalist containing the samples; thesampleslist variable names are required as created bymacroSamples.Handles sampling states in a flat array of textures, or merged in one texture (in both
sampler2D, andsampler3D/sampler2DArraywhere supported). Merging allows shaders to access past steps by non-constant lookups; e.g: attributes causesampler array index must be a literal expressiononGLSL3spec and other platforms (e.g:D3D); note these need texture repeat wrapping.They're set up as function-like macros that may be called from the shader to initialise the mappings arrays with a given name. Caches the result if
macrosgeneration is enabled, to help reuse shaders.