Navigation
Filters
Classes
| Type | Name | Description | |
|---|---|---|---|
| FBaseShaderFormat | |||
| FDebugShaderDataOptions | |||
| FDiagnosticMessage | |||
| FDiagnostics | |||
| FDllHandle | |||
| FDxcModuleWrapper | |||
| FHlslccHeader | |||
| FHlslccHeaderWriter | |||
| FHlslShaderModel | Shader model version for HLSL input language. | ||
| FMinifiedShader | |||
| FScopedDeclarations | Structure to hold forward declarations for a specific scope/namespace chain for the HlslParser. | ||
| FShaderConductorContext | Wrapper class to handle interface between UE and ShaderConductor. | ||
| FShaderConductorIdentifierTable | Container for all special case SPIR-V identifiers generated by ShaderConductor. | ||
| FShaderConductorModuleWrapper | |||
| FShaderConductorOptions | Wrapper structure to pass options descriptor to ShaderConductor. | ||
| FShaderConductorTarget | Shader conductor output target descriptor. | ||
| FSpirv | Base structure for SPIR-V modules in the shader backends. | ||
| FSpirvReflectBindings | Container structure for all SPIR-V reflection resources and in/out attributes. | ||
| TSpirvForwardIterator | Template forward iterator for SPIR-V instructions. |
Constants
| Name | Description |
|---|---|
| UE::ShaderCompilerCommon::kUniformBufferConstantBufferPrefix |
Typedefs
| Name | Description |
|---|---|
| FSpirvConstIterator | |
| FSpirvIterator |
Enums
| Type | Name | Description | |
|---|---|---|---|
| CrossCompiler::EShaderConductorIR | Intermediate representation languages for ShaderConductor disassembly output. | ||
| CrossCompiler::EShaderConductorLanguage | Target high level languages for ShaderConductor output. | ||
| EShaderConductorTarget | |||
| EShaderParameterStorageClass | Shader input/output parameter storage classes. Naming adopted from SPIR-V nomenclature. | ||
| UE::ShaderMinifier::EMinifyShaderFlags |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AddNoteToDisplayShaderParameterStructureOnCppSide
(
const FShaderParametersMetadata* ParametersStructure, |
Adds a note to CompilerOutput.Error about where the shader parameter structure is on C++ side. | |
| void | AddShaderValidationSRVType
(
uint16 BindPoint, |
||
| void | AddShaderValidationUAVType
(
uint16 BindPoint, |
||
| void | AddShaderValidationUBSize
(
uint16 BindPoint, |
||
| void | AddUnboundShaderParameterError
(
const FShaderCompilerInput& CompilerInput, |
Adds an error to CompilerOutput.Error about a shader parameters that could not be bound. | |
| bool | BuildResourceTableMapping
(
const FShaderResourceTableMap& ResourceTableMap, |
This function looks for resources specified in ResourceTableMap in the parameter map, adds them to the resource table, and removes them from the parameter map. | |
| PRAGMA_DISABLE_DEPRECATION_WARNINGS bool | BuildResourceTableMapping
(
const TMap< FString, FResourceTableEntry >& ResourceTableMap, |
||
| void | Builds a token stream out of the resource map. | ||
| void | CleanupUniformBufferCode
(
const FShaderCompilerEnvironment& Environment, |
Convert generated UniformBuffer code and references into something the shader compilers can use. | |
| void | CompileOfflineMali
(
const FShaderCompilerInput& Input, |
Calls 'Mali Offline Compiler' to compile the glsl source code and extract the generated instruction count | |
| bool | ConvertFromFP32ToFP16
(
FString& InOutSourceCode, |
||
| bool | CrossCompiler::Match
(
const TCHAR*& Str, |
||
| bool | CrossCompiler::Match
(
const TCHAR*& Str, |
||
| bool | CrossCompiler::Match
(
const ANSICHAR*& Str, |
||
| bool | CrossCompiler::Match
(
const ANSICHAR*& Str, |
||
| bool | CrossCompiler::ParseIdentifier
(
const ANSICHAR*& Str, |
||
| bool | CrossCompiler::ParseIdentifier
(
const TCHAR*& Str, |
||
| bool | CrossCompiler::ParseIntegerNumber
(
const ANSICHAR*& Str, |
||
| bool | CrossCompiler::ParseIntegerNumber
(
const TCHAR*& Str, |
||
| bool | CrossCompiler::ParseSignedNumber
(
const TCHAR*& Str, |
||
| bool | CrossCompiler::ParseSignedNumber
(
const ANSICHAR*& Str, |
||
| bool | CrossCompiler::ParseString
(
const TCHAR*& Str, |
||
| bool | CrossCompiler::ParseString
(
const ANSICHAR*& Str, |
||
| void | CullGlobalUniformBuffers
(
const TMap< FString, FUniformBufferEntry >& UniformBufferMap, |
Culls global uniform buffer entries from the parameter map. | |
| void | DumpDebugBlobDetail
(
IDxcBlob* Blob, |
||
| void | DumpDebugShaderBinary
(
const FShaderCompilerInput& Input, |
||
| void | DumpDebugShaderBinary
(
const FShaderCompilerInput& Input, |
||
| void | DumpDebugShaderDisassembledDxil
(
const FShaderCompilerInput& Input, |
||
| void | DumpDebugShaderDisassembledSpirv
(
const FShaderCompilerInput& Input, |
||
| void | DumpDebugShaderText
(
const FShaderCompilerInput& Input, |
||
| void | DumpDebugShaderText
(
const FShaderCompilerInput& Input, |
||
| void | DumpDebugShaderText
(
const FShaderCompilerInput& Input, |
||
| bool | FindEntryPointParameters
(
const FString& InSourceCode, |
Returns the semantic names of all individual entry point parameters (i.e. all structure fields are inlined) | |
| const CharType * | FindMatchingBlock
(
const CharType* OpeningCharPtr, |
||
| const CharType * | FindMatchingClosingBrace
(
const CharType* OpeningCharPtr |
||
| FStringView | FindNextHLSLDefinitionOfType
(
FStringView Typename, |
||
| void | FindOffsetToSpirvEntryPoint
(
const FSpirv& Spirv, |
Returns word offset to the entry point (OpEntryPoint) and name of the entry point (OpName). | |
| int16 | GetNumUniformBuffersUsed
(
const FShaderCompilerResourceTable& InSRT |
Finds the number of used uniform buffers in a resource map. | |
| void | HandleReflectedGlobalConstantBufferMember
(
const FString& MemberName, |
||
| void | HandleReflectedRootConstantBuffer
(
int32 ConstantBufferSize, |
||
| void | HandleReflectedRootConstantBufferMember
(
const FShaderCompilerInput& Input, |
||
| void | HandleReflectedShaderResource
(
const FString& ResourceName, |
||
| void | HandleReflectedShaderResource
(
const FString& ResourceName, |
||
| void | HandleReflectedShaderResource
(
const FString& ResourceName, |
||
| void | HandleReflectedShaderSampler
(
const FString& SamplerName, |
||
| void | HandleReflectedShaderSampler
(
const FString& SamplerName, |
||
| void | HandleReflectedShaderSampler
(
const FString& SamplerName, |
||
| void | HandleReflectedShaderUAV
(
const FString& UAVName, |
||
| void | HandleReflectedShaderUAV
(
const FString& UAVName, |
||
| void | HandleReflectedShaderUAV
(
const FString& UAVName, |
||
| void | HandleReflectedUniformBuffer
(
const FString& UniformBufferName, |
||
| void | HandleReflectedUniformBuffer
(
const FString& UniformBufferName, |
||
| void | HandleReflectedUniformBuffer
(
const FString& UniformBufferName, |
||
| void | HandleReflectedUniformBufferConstantBufferMember
(
int32 UniformBufferSlot, |
||
| const TCHAR * | ParseHLSLSymbolName
(
const TCHAR* SearchString, |
||
| void | ParseHLSLTypeName
(
const TCHAR* SearchString, |
||
| void | ParseSpirvGlobalVariables
(
const FSpirv& Spirv, |
Parse global variables (anything but function local variables) of specified storage class from the specified SPIR-V module. | |
| const ANSICHAR * | PatchSpirvEntryPointWithCRC
(
FSpirv& Spirv, |
Renames the fixed-size entry point name (which must be "main_00000000_00000000") to the formatted name including a CRC over the module. | |
| void | RemoveUniformBuffersFromSource
(
const FShaderCompilerEnvironment& Environment, |
||
| bool | RemoveUnusedInputs
(
FString& InOutSourceCode, |
||
| bool | |||
| bool | RemoveUnusedOutputs
(
FString& InOutSourceCode, |
||
| bool | |||
| HRESULT | RetrieveDebugNameAndBlob
(
TRefCountPtr< IDxcResult >& CompileResult, |
||
| const TCHAR * | SpirvBuiltinToString
(
const SpvBuiltIn BuiltIn |
Returns the string representation of the specified SPIR-V built-in variable, e.g. SpvBuiltInPosition to TEXT("gl_Position"). | |
| void | TransformStringIntoCharacterArray
(
FString& PreprocessedShaderSource, |
||
| void | UE::ShaderCompilerCommon::DumpDebugShaderData
(
const FShaderCompilerInput& Input, |
Dumps common debug information (preprocessed .usf as constructed by GetDebugShaderContents, and a directcompile.txt file containing the commandline for launching ShaderCompileWorker manually) for the given shader compile input and preprocessed source according to the options provided. | |
| FString | UE::ShaderCompilerCommon::GetDebugShaderContents
(
const FShaderCompilerInput& Input, |
||
| void | UE::ShaderCompilerCommon::ParseRayTracingEntryPoint
(
const FString& Input, |
||
| void | UE::ShaderCompilerCommon::ParseRayTracingEntryPoint
(
const FStringView& Input, |
Parses ray tracing shader entry point specification string in one of the following formats: 1) Verbatim single entry point name, e.g. "MainRGS" 2) Complex entry point for ray tracing hit group shaders: a) "closesthit=MainCHS" b) "closesthit=MainCHS anyhit=MainAHS" c) "closesthit=MainCHS anyhit=MainAHS intersection=MainIS" d) "closesthit=MainCHS intersection=MainIS" NOTE: closesthit attribute must always be provided for complex hit group entry points | |
| FStringView | |||
| FString | UE::ShaderCompilerCommon::RemoveConstantBufferPrefix
(
const FString& InName |
||
| bool | UE::ShaderCompilerCommon::RemoveDeadCode
(
FString& InOutPreprocessedShaderSource, |
||
| bool | UE::ShaderCompilerCommon::RemoveDeadCode
(
FShaderSource& InOutPreprocessedShaderSource, |
||
| bool | UE::ShaderCompilerCommon::RemoveDeadCode
(
FString& InOutPreprocessedShaderSource, |
||
| bool | UE::ShaderCompilerCommon::RemoveDeadCode
(
FString& InOutPreprocessedShaderSource, |
||
| bool | UE::ShaderCompilerCommon::RemoveDeadCode
(
FShaderSource& InOutPreprocessedShaderSource, |
Rewrites a fully preprocessed shader source code, removing any functions or structs that are not reachable from a given entry point or list of symbols. | |
| bool | UE::ShaderCompilerCommon::RemoveDeadCode
(
FShaderSource& InOutPreprocessedShaderSource, |
||
| bool | UE::ShaderCompilerCommon::ValidatePackedResourceCounts
(
FShaderCompilerOutput& Output, |
||
| FMinifiedShader | UE::ShaderMinifier::Minify
(
const FStringView PreprocessedShader, |
||
| FMinifiedShader | UE::ShaderMinifier::Minify
(
const FStringView PreprocessedShader, |
||
| bool | |||
| EMinifyShaderFlags | |||
| EMinifyShaderFlags & | |||
| EMinifyShaderFlags | |||
| EMinifyShaderFlags & | |||
| EMinifyShaderFlags | |||
| EMinifyShaderFlags & | |||
| EMinifyShaderFlags | |||
| void | UpdateStructuredBufferStride
(
const FShaderCompilerInput& Input, |
||
| void | WriteShaderConductorCommandLine
(
const FShaderCompilerInput& Input, |