Module |
|
Header |
/Engine/Source/Developer/ShaderCompilerCommon/Public/ShaderConductorContext.h |
Include |
#include "ShaderConductorContext.h" |
class FShaderConductorContext
Wrapper class to handle interface between UE and ShaderConductor. Use to compile HLSL shaders to SPIR-V or high-level languages such as Metal.
Name | Description | |
---|---|---|
|
FShaderConductorContext() |
Initializes the context with internal buffers used for the conversion of input and option descriptors between UE and ShaderConductor. |
|
FShaderConductorContext ( |
Move constructor to take ownership of internal buffers from 'Rhs'. |
|
FShaderConductorContext ( |
Name | Description | |
---|---|---|
|
~FShaderConductorContext() |
Release the internal buffers. |
Name | Description | ||
---|---|---|---|
|
CompileHlslToSpirv ( |
Compiles the specified HLSL shader source code to SPIR-V. |
|
|
CompileSpirvToSource ( |
Compiles the specified SPIR-V shader binary code to high level source code (Metal or GLSL). |
|
|
CompileSpirvToSourceAnsi ( |
Compiles the specified SPIR-V shader binary code to high level source code (Metal or GLSL) stored as null terminated ANSI string. |
|
|
CompileSpirvToSourceBuffer ( |
Compiles the specified SPIR-V shader binary code to high level source code (Metal or GLSL) stored as byte buffer (without null terminator as it comes from ShaderConductor). |
|
|
ConvertCompileErrors ( |
Convert array of error string lines into array of |
|
|
Disassemble ( |
Disassembles the specified SPIR-V module and returns its assembly as text representation. |
|
|
FlushErrors ( |
Flushes the list of current compile errors and moves the ownership to the caller. |
|
|
const TArray... |
GetErrors() |
Returns the list of current compile errors. |
|
const FShade... |
GetIdentifierTable() |
Returns the table of special identifiers generated by ShaderConductor. |
|
const TCHAR ... |
GetShaderFileExt ( |
Returns a filename extension for the specified shading language and shader stage, e.g. "frag" for a GLSL pixel shader. |
|
GetSourceLength() |
Returns a length of the internal loaded sources (excluding the null terminator). |
|
|
const ANSICH... |
GetSourceString() |
Returns a pointer to a null terminated ANSI string of the internal loaded sources, or null if no source has been loaded yet. |
|
IsIntermediateSpirvOutputVariable ( |
Returns whether the specified variable name denotes an intermediate output variable. |
|
|
LoadSource ( |
Loads the shader source and converts the input descriptor to a format suitable for ShaderConductor. |
|
|
LoadSource ( |
Loads the shader source and converts the input descriptor to a format suitable for ShaderConductor. |
|
|
OptimizeSpirv |
Performs the specified optimization passes (e.g. "-O" or "--strip-reflect") on the SPIR-V module. |
|
|
RewriteHlsl ( |
Rewrites the specified HLSL shader source code. |
|
|
Shutdown() |
Explicitly shut down ShaderConductor and DXC shared libraries. |
Name | Description | ||
---|---|---|---|
|
FShaderCondu... |
operator= ( |
Move operator to take ownership of internal buffers from 'Rhs'. |
|
FShaderCondu... |
operator= ( |