You can control render states in your shaders using this syntax anywhere outside of functions.

RenderState( BlendEnable, true );
Name Description Values
FillMode Determines how polygons are rendered (solid faces or wireframe edges). WIREFRAME, SOLID
CullMode Specifies which faces (front, back, or none) are culled from rendering. NONE, BACK, FRONT
DepthBias Enables or disables depth bias to adjust depth values for rendering order. true, false
DepthBiasClamp Enables or disables clamping of depth bias to a set range. true, false
SlopeScaleDepthBias Enables or disables slope-scaled depth bias for polygons. true, false
DepthClipEnable Enables or disables clipping of geometry against the near/far depth planes. true, false
MultisampleEnable Enables or disables multisample anti-aliasing. true, false
SampleMask Controls which samples in a multisample target are updated. true, false
DepthEnable Enables or disables depth testing. true, false
DepthWriteEnable Enables or disables writing to the depth buffer. true, false
DepthFunc Comparison function for depth testing. NEVER, LESS, EQUAL, LESS_EQUAL, GREATER, NOT_EQUAL, GREATER_EQUAL, ALWAYS
StencilEnable Enables or disables stencil testing. true, false
StencilReadMask Mask for reading stencil buffer values. 0 → 255
StencilWriteMask Mask for writing stencil buffer values. 0 → 255
StencilFailOp Action when stencil test fails. KEEP, ZERO, REPLACE, INCR_SAT, DECR_SAT, INVERT, INCR, DECR
StencilDepthFailOp Action when stencil test passes but depth test fails. KEEP, ZERO, REPLACE, INCR_SAT, DECR_SAT, INVERT, INCR, DECR
StencilPassOp Action when both stencil and depth tests pass. KEEP, ZERO, REPLACE, INCR_SAT, DECR_SAT, INVERT, INCR, DECR
StencilFunc Comparison function for front-face stencil test. NEVER, LESS, EQUAL, LESS_EQUAL, GREATER, NOT_EQUAL, GREATER_EQUAL, ALWAYS
BackStencilFailOp Action for back-facing polygons when stencil test fails. KEEP, ZERO, REPLACE, INCR_SAT, DECR_SAT, INVERT, INCR, DECR
BackStencilDepthFailOp Action for back-facing polygons when depth test fails. KEEP, ZERO, REPLACE, INCR_SAT, DECR_SAT, INVERT, INCR, DECR
BackStencilPassOp Action for back-facing polygons when both tests pass. KEEP, ZERO, REPLACE, INCR_SAT, DECR_SAT, INVERT, INCR, DECR
BackStencilFunc Comparison function for back-face stencil test. NEVER, LESS, EQUAL, LESS_EQUAL, GREATER, NOT_EQUAL, GREATER_EQUAL, ALWAYS
StencilRef Reference value used in stencil tests. 0 → 255
AlphaToCoverageEnable Enables alpha-to-coverage for multisampling. true, false
BlendEnable Enables or disables blending. true, false
IndependentBlendEnable Allows blending settings to differ between render targets. true, false
SrcBlend Source factor for RGB blend. ZERO, ONE, SRC_COLOR, INV_SRC_COLOR, SRC_ALPHA, INV_SRC_ALPHA, DEST_ALPHA, INV_DEST_ALPHA, DEST_COLOR, INV_DEST_COLOR, SRC_ALPHA_SAT, BLEND_FACTOR, SRC1_COLOR, INV_SRC1_COLOR, SRC1_ALPHA, INV_SRC1_ALPHA
DstBlend Destination factor for RGB blend. ZERO, ONE, SRC_COLOR, INV_SRC_COLOR, SRC_ALPHA, INV_SRC_ALPHA, DEST_ALPHA, INV_DEST_ALPHA, DEST_COLOR, INV_DEST_COLOR, SRC_ALPHA_SAT, BLEND_FACTOR, SRC1_COLOR, INV_SRC1_COLOR, SRC1_ALPHA, INV_SRC1_ALPHA
BlendOp Operation applied to RGB blend factors. ADD, SUBTRACT, REV_SUBTRACT, MIN, MAX
SrcBlendAlpha Source factor for alpha blending. ZERO, ONE, SRC_COLOR, INV_SRC_COLOR, SRC_ALPHA, INV_SRC_ALPHA, DEST_ALPHA, INV_DEST_ALPHA, DEST_COLOR, INV_DEST_COLOR, SRC_ALPHA_SAT, BLEND_FACTOR, SRC1_COLOR, INV_SRC1_COLOR, SRC1_ALPHA, INV_SRC1_ALPHA
DstBlendAlpha Destination factor for alpha blending. ZERO, ONE, SRC_COLOR, INV_SRC_COLOR, SRC_ALPHA, INV_SRC_ALPHA, DEST_ALPHA, INV_DEST_ALPHA, DEST_COLOR, INV_DEST_COLOR, SRC_ALPHA_SAT, BLEND_FACTOR, SRC1_COLOR, INV_SRC1_COLOR, SRC1_ALPHA, INV_SRC1_ALPHA
BlendOpAlpha Operation applied to alpha blend factors. ADD, SUBTRACT, REV_SUBTRACT, MIN, MAX
ColorWriteEnable0 Channels to write for render target 0. false, R, G, B, A, RG, RB, RA, GB, GA, BA, GBA, RBA, RGA, RGB, RGBA
ColorWriteEnable1 Channels to write for render target 1. false, R, G, B, A, RG, RB, RA, GB, GA, BA, GBA, RBA, RGA, RGB, RGBA
ColorWriteEnable2 Channels to write for render target 2. false, R, G, B, A, RG, RB, RA, GB, GA, BA, GBA, RBA, RGA, RGB, RGBA
ColorWriteEnable3 Channels to write for render target 3. false, R, G, B, A, RG, RB, RA, GB, GA, BA, GBA, RBA, RGA, RGB, RGBA
SrgbWriteEnable0 Enables sRGB write conversion for render target 0. true, false
SrgbWriteEnable1 Enables sRGB write conversion for render target 1. true, false
SrgbWriteEnable2 Enables sRGB write conversion for render target 2. true, false
SrgbWriteEnable3 Enables sRGB write conversion for render target 3. true, false
BlendFactor Enables use of a constant blend factor. true, false
HighPrecisionBlendEnable Enables high-precision blending. true, false
AlphaTestEnable Enables alpha testing. true, false
AlphaTestRef Reference value for alpha testing. true, false (likely meant to be a numeric range instead)
AlphaTestFunc Comparison function for alpha testing. NEVER, LESS, EQUAL, LESS_EQUAL, GREATER, NOT_EQUAL, GREATER_EQUAL, ALWAYS





Created 11 Aug 2025
Updated 11 Aug 2025