Namespace ValveResourceFormat.CompiledShader ​
Classes ​
| Name | Description |
|---|---|
| ChannelMapping | Channel mapping definition used in shaders. |
| ComboConfigMapping | Maps shader configuration states to combo IDs. |
| ConstantBufferDescription | Describes an external constant buffer and its variables. |
| FeaturesHeaderBlock | Header block for shader features files. |
| PrintStaticComboSummary | Prints a summary of shader static combo data. |
| ShaderCollection | Collection of related shader programs. |
| ShaderDataBlock | Base class for shader data blocks. |
| ShaderParserException | Exception thrown during shader parsing. |
| ShaderSpirvReflection | Provides SPIR-V reflection and decompilation utilities for shaders. |
| ShaderUtilHelpers | Provides utility helper methods for shader processing and manipulation. |
| StaticComboCache | Size-limited cache for shader static combo data, evicting entries in insertion order (FIFO). |
| VfxCombo | Contains a definition for a shader combo, whether static, dynamic, or feature-specific. |
| VfxProgramData | Represents a compiled VFX shader program with all its associated data. |
| VfxRenderStateInfo | Contains render state information for a shader variant. |
| VfxRenderStateInfoHullShader | Render state information specific to hull shaders. |
| VfxRenderStateInfoPixelShader | Render state information specific to pixel shaders, including rasterizer, depth/stencil, and blend states. |
| VfxRule | Represents a constraint rule for shader combos. |
| VfxShaderAttribute | Shader attribute with name, type, and value or expression. |
| VfxShaderFile | Base class for platform-specific shader bytecode. |
| VfxShaderFileDXBC | DirectX Bytecode (DXBC) shader file. The DXBC sources only have one header, the offset (which happens to be equal to their source size). |
| VfxShaderFileDXIL | DirectX Intermediate Language (DXIL) shader file. |
| VfxShaderFileGL | OpenGL GLSL shader file. |
| VfxShaderFileVulkan | Vulkan SPIR-V shader bytecode. |
| VfxShaderFileVulkan. | |
| VfxStaticComboData | Represents data for a static shader combination. |
| VfxStaticComboVcsEntry | Directory entry for a static combo, holding what is needed to locate and lazily unserialize it. |
| VfxStaticComboVcsEntry. | Resource entry for KeyValues-based files. |
| VfxTextureChannelProcessor | Processes texture channels for shader inputs. |
| VfxVariableDescription | Represents a variable description in a VFX shader program. |
| VfxVariableIndexArray | A variable write sequence: the ordered list of variable indices and register offsets a combo writes its variables with, split into evaluated, render state, and constant segments. |
| VsInputSignature | Vertex shader input signature. |
Structs ​
| Name | Description |
|---|---|
| ChannelMapping. | Channel constants. |
| ConstantBufferDescription. | Represents a variable within a constant buffer. The offset is in 4-byte scalars, vector size is the component count, row count is greater than one for matrices, and element count for arrays. |
| PerRenderTarget<T> | Indexes one fixed-width value per render target, read out of a single packed word. |
| PerRenderTargetFlags | Indexes one bit per render target, read out of a shared word at a fixed offset. |
| RsBlendStateDesc | Blend state for all render targets, packed into VCS words with 4 bits per render target in each word. |
| RsDepthStencilStateDesc | Describes the depth and stencil state configuration. The stencil reference value is not part of the descriptor; D3D and Vulkan set it at bind time. |
| RsRasterizerStateDesc | Describes the rasterizer state configuration. |
| UiGroup | Organizes shader parameters into UI groups and sections. |
| VfxShaderFileVulkan. | |
| VfxShaderFileVulkan. | |
| VfxShaderFileVulkan. | Maps a specialization constant, identified by the StringToken of its variable name, to its SPIR-V constant id. |
| VfxVariableIndexData | One write sequence entry: a variable index paired with the register offset it is written to. |
Enums ​
| Name | Description |
|---|---|
| D3DVertexUsage | Vertex attribute usage, as packed into VfxShaderFileVulkan.AttribMap to identify vertex shader inputs. These follow the legacy D3DDECLUSAGE values, except that the fixed function only POSITIONT is absent, which shifts everything from D3DVertexUsage.Color onwards down by one. Only the usages up to and including D3DVertexUsage.Color have been observed in shipped shaders. |
| ImageFormat | GPU Image formats available in shader version 66. |
| LegacyImageFormat | GPU Image formats available in shader version 62, 64, 65. |
| RsBlendMode | Specifies blend modes. |
| RsBlendOp | Specifies blend operations. |
| RsColorWriteEnableBits | Specifies color write enable flags. |
| RsComparison | Specifies comparison functions. |
| RsCullMode | Specifies the cull mode for rendering. |
| RsFillMode | Specifies the fill mode for rendering. |
| RsFilter | Specifies sampler filtering. |
| RsStencilOp | Specifies stencil operations. |
| RsTextureAddressMode | Specifies texture addressing modes. |
| UiType | UI control types for shader parameters. |
| VariableFlags | Flags for shader variables, describing which binding state the variable affects. Stored in bits 8-15 of VfxVariableDescription.ContextStateAffectedByVariable; the rasterizer state bit sits below this range in bit 7. |
| VcsAdditionalFileFlags | Flags indicating additional shader files present. |
| VcsPlatformType | Shader target platforms. |
| VcsProgramType | Shader program types. |
| VcsShaderModelType | Shader model versions. |
| VfxComboType | Shader combo types. |
| VfxDynamicComboSourceType | Dynamic combo source types. |
| VfxRegisterType | Shader register types. |
| VfxRuleMethod | Methods for shader combo rules. |
| VfxRuleType | Shader rule types for combo constraints. |
| VfxStaticComboSourceType | Static combo source types. |
| VfxVariableSourceType | Variable source types for shader parameters. |
| VfxVariableType | Shader variable data types. |

