Navigation
API > API/Runtime > API/Runtime/RenderCore
Inheritance Hierarchy
- FShader
- FGlobalShader
- FARGB16BigConvertPS
- FAYUVConvertPS
- FBinkDrawICtCpPS
- FBinkDrawVS
- FBinkDrawYCbCrPS
- FBMPConvertPS
- FCopyRectPS
- FCopyRectSrvPS
- FCopyResidentBricksCS
- FCopyResidentBrickSHCoefficientsCS
- FCopyTextureCS
- TCopyResourceCS
- FCubemapTexturePropertiesPS
- FCubemapTexturePropertiesVS
- FDispatchShaderBundleCS
- FDispatchShaderBundleWorkGraph
- FFillTextureCS
- FIESLightProfilePS
- FImagePreTransformVS
- FLongGPUTaskPS
- FMediaShadersVS
- FModifyAlphaSwizzleRgbaPS
- FMoveWholeIndirectionTextureCS
- FNiagaraCopySVTToDenseBufferCS
- FNiagaraDispatchIndirectArgsGenCS
- FNiagaraDrawIndirectArgsGenCS
- FNiagaraDrawIndirectResetCountsCS
- FNiagaraGPURayTracingTransformsCS
- FNiagaraInstanceCountsInitCS
- FNiagaraRibbonSortPhase2CS
- FNiagaraRibbonVertexReductionPropagateCS
- FNiagaraSortKeyGenCS
- FNULLPS
- FNV12ConvertAsBytesPS
- FNV12ConvertPS
- FNV21ConvertPS
- FOculusAlphaInverseShader
- FOculusBlackShader
- FOculusCubemapPS
- FOculusVertexShader
- FOculusWhiteShader
- FOneColorPS
- TOneColorPixelShaderMRT
- FP010_2101010ConvertPS
- FP010ConvertAsUINT16sPS
- FP010ConvertPS
- FPatchIndirectionTextureCS
- FPixelShaderUtils::FRasterizeToRectsVS
- FReadTextureExternalPS
- FRemoveSubLevelBricksCS
- FResolveDepthPS
- FResolveDepth2XPS
- FResolveDepth4XPS
- FResolveDepth8XPS
- FResolveDepthArray2XPS
- FResolveDepthArray4XPS
- FResolveDepthArray8XPS
- FResolveSingleSamplePS
- FResolveVS
- FResolveArrayVS
- FRGB10BitToRGBA10CS
- FRGB10toYUVv210ConvertPS
- FRGB12BitToRGBA12CS
- FRGB16fBitToRGBA16fCS
- FRGB8BitToRGBA8CS
- FRGB8toUYVY8ConvertPS
- FRGB8toY8ConvertPS
- FRGBConvertPS
- FRGBToRGB10BitCS
- FRGBToRGB12BitCS
- FRGBToRGB16fCS
- FRGBToRGB8BitCS
- FRGBToYUV10Bit422LittleEndianCS
- FRGBToYUV8Bit422CS
- FScreenPS
- FScreenFromSlice0PS
- FScreenUnwrapSlicesPS
- FScreenPS_OSE
- FScreenPSInvertAlpha
- FScreenPSMipLevel
- FScreenPSsRGBSource
- FScreenPSsRGBSourceMipLevel
- FScreenVertexShaderVS
- FInstancedScreenVertexShaderVS
- FMobileMultiViewVertexShaderVS
- FScreenVS
- FSimpleElementColorChannelMaskPS
- FSimpleElementHitProxyPS
- FSimpleElementPS
- FSimpleElementAlphaOnlyPS
- FSimpleElementGammaBasePS
- FSimpleElementGammaAlphaOnlyPS
- FSimpleElementGammaPS
- FSimpleElementMaskedGammaBasePS
- FSimpleElementDistanceFieldGammaPS
- FSimpleElementMaskedGammaPS
- FSimpleElementVS
- FStereoLayerPS_Base
- FStereoLayerPS
- FStereoLayerPS_External
- FStereoLayerVS
- FUpdateDescriptorHandleCS
- FUpdateTextureShaderBase
- FUpdateTexture2DSubresourceCS
- TUpdateTexture2DSubresourceCS
- FUpdateTexture3DSubresourceCS
- TCopyDataCS
- FUYVYConvertPS
- FVYUConvertPS
- FYCbCrConvertPS
- FYCbCrConvertPS_4x4Matrix
- FYCoCgConvertPS
- FYUV10Bit422ToRGBACS
- FYUV8Bit422ToRGBACS
- FYUVConvertPS
- FYUVv210ConvertPS
- FYUVv216ConvertPS
- FYUVY416ConvertPS
- FYUY2ConvertPS
- FYVYUConvertPS
- TClearReplacementBase
- TOneColorVS
- FNiagaraShader
References
Module | RenderCore |
Header | /Engine/Source/Runtime/RenderCore/Public/Shader.h |
Include | #include "Shader.h" |
Syntax
class FShader
Remarks
A compiled shader and its parameter bindings.
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
FShader () |
Used to construct a shader for deserialization. | |
![]() |
FShader
(
const CompiledShaderInitializerType& Initializer |
Construct a shader from shader compiler output. |
Destructors
Type | Name | Description | |
---|---|---|---|
![]() |
~FShader () |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
void | DumpDebugInfo
(
const FShaderMapPointerTable& InPtrTable |
|
![]() |
void | Finalize
(
const FShaderMapResourceCode* Code |
|
![]() ![]() |
const FShaderParametersMetadata * | FindAutomaticallyBoundUniformBufferStruct
(
int32 BaseIndex |
|
![]() ![]() |
uint32 | GetCodeSize () |
|
![]() ![]() |
EShaderFrequency | GetFrequency () |
|
![]() ![]() |
const FSHAHash & | GetHash () |
Returns the hash of the shader file that this shader was compiled with. |
![]() ![]() |
uint32 | ||
![]() ![]() |
uint32 | ||
![]() ![]() |
const FSHAHash & | ||
![]() ![]() |
ERayTracingPayloadType | GetRayTracingPayloadType
(
const int32 PermutationId |
Can be overriden by FShader subclasses to specify which raytracing payload should be used. |
![]() ![]() |
int32 | ||
![]() ![]() |
const FShaderParametersMetadata * | Returns the meta data for the root shader parameter struct. | |
![]() ![]() |
const FShaderBindingLayout * | Get shader binding layout used by the shader | |
![]() ![]() |
EShaderPlatform | ||
![]() ![]() |
const FShaderStatisticMap & | ||
![]() ![]() |
uint32 | GetSortKey () |
Returns an identifier suitable for deterministic sorting of shaders between sessions. |
![]() ![]() |
const FShaderTarget | GetTarget () |
|
![]() ![]() |
FShaderType * | GetType
(
const FShaderMapPointerTable& InPointerTable |
Accessors. |
![]() ![]() |
FShaderType * | GetType
(
const FPointerTableBase* InPointerTable |
|
![]() ![]() |
FShaderType * | ||
![]() ![]() |
FORCEINLINE_DEBUGGABLE const FShaderUniformBufferParameter & | GetUniformBufferParameter
(
const FHashedName SearchName |
Finds an automatically bound uniform buffer matching the HashedName if one exists, or returns an unbound parameter. |
![]() ![]() |
FORCEINLINE_DEBUGGABLE const TShaderUniformBufferParameter< UniformBufferStructType > & | Finds an automatically bound uniform buffer matching the given uniform buffer type if one exists, or returns an unbound parameter. | |
![]() ![]() |
FORCEINLINE_DEBUGGABLE const FShaderUniformBufferParameter & | GetUniformBufferParameter
(
const FShaderParametersMetadata* SearchStruct |
Finds an automatically bound uniform buffer matching the given uniform buffer struct if one exists, or returns an unbound parameter. |
![]() ![]() |
const FSHAHash & | ||
![]() ![]() |
FVertexFactoryType * | GetVertexFactoryType
(
const FPointerTableBase* InPointerTable |
|
![]() ![]() |
FVertexFactoryType * | GetVertexFactoryType
(
const FShaderMapPointerTable& InPointerTable |
|
![]() ![]() |
bool | IsFrozen () |
|
![]() |
LAYOUT_FIELD
(
TMemoryImageArray< FShaderUniformBufferParameter >, |
||
![]() |
LAYOUT_FIELD
(
TMemoryImageArray< FHashedName >, |
||
![]() |
LAYOUT_FIELD
(
FShaderParameterMapInfo, |
||
![]() |
LAYOUT_FIELD
(
FShaderParameterBindings, |
||
![]() |
LAYOUT_FIELD_EDITORONLY
(
FSHAHash, |
Hash of the compiled output from this shader and the resulting parameter map. | |
![]() |
LAYOUT_FIELD_EDITORONLY
(
FSHAHash, |
Hash of this shader's source files generated at compile time, and stored to allow creating an FShaderId. | |
![]() |
LAYOUT_FIELD_EDITORONLY
(
FSHAHash, |
Vertex factory source hash, stored so that an FShaderId can be constructed from this shader. | |
![]() ![]() |
void | Can be overridden by FShader subclasses to modify their compile environment just before compilation occurs. | |
![]() |
void | SaveShaderStableKeys
(
const FShaderMapPointerTable& InPtrTable, |
|
![]() |
void | SetNumInstructions
(
uint32 Value |
|
![]() ![]() |
bool | Can be overridden by FShader subclasses to determine whether a specific permutation should be compiled. | |
![]() ![]() |
EShaderPermutationPrecacheRequest | ShouldPrecachePermutation
(
const FShaderPermutationParameters& Parameters |
Can be overridden by FShader subclasses to determine whether a specific permutation should be precached. |
![]() ![]() |
bool | ValidateCompiledResult
(
EShaderPlatform InPlatform, |
Can be overridden by FShader subclasses to determine whether compilation is valid. |