Default pass startup state shader configurations

The state shaders are not necessarily needed in your shading pipeline, as the engine has default implemented behaviours.

Here are the default behaviours applied at the startup of each rendering pass in the engine. Blended materials passes startup state is identical to master passes startup state:

Pass IDBlending modeDepth mode
RED::MTL_PRELITNo blending:
ONE * SRC_COLOR + ZERO * DEST_COLOR
Depth test = ON
Depth write = ON
Depth equation = LEQUAL
RED::MTL_LITAdditive blending:
ONE * SRC_COLOR + ONE * DEST_COLOR
Depth test = ON
Depth write = OFF
Depth equation = LEQUAL
RED::MTL_POSTLITAdditive blending:
ONE * SRC_COLOR + ONE * DEST_COLOR
Depth test = ON
Depth write = OFF
Depth equation = LEQUAL
RED::MTL_RAYTRACEN/AN/A
RED::MTL_INDIRECT_PRELITNo blending:
ONE * SRC_COLOR + ZERO * DEST_COLOR
N/A
RED::MTL_INDIRECT_LITAdditive blending:
ONE * SRC_COLOR + ONE * DEST_COLOR
N/A
RED::MTL_INDIRECT_POSTLITAdditive blending:
ONE * SRC_COLOR + ONE * DEST_COLOR
N/A

When handling true transparent objects (RED::StateShader::SORTED_TRANSPARENCY setup) all depth functions must be replaced by EQUAL instead of LEQUAL. All other state default values are given by the RED::StateShader default class creation values and do not rely on the current pass being rendered.