|
| #define | IMPLEMENT_ALIGNED_TYPE(Alignment) |
| |
| #define | INTERNAL_BEGIN_UNIFORM_BUFFER_STRUCT(DllStorage) static DllStorage const FShaderParametersMetadata* GetStructMetadata(); |
| |
| #define | INTERNAL_UNIFORM_BUFFER_STRUCT_GET_STRUCT_METADATA(StructTypeName) { return StructTypeName::GetStructMetadata(); } |
| |
| #define | INTERNAL_SHADER_PARAMETER_GET_STRUCT_METADATA(StructTypeName) |
| |
| #define | INTERNAL_SHADER_PARAMETER_STRUCT_CREATE_UNIFORM_BUFFER return nullptr; |
| |
| #define | INTERNAL_UNIFORM_BUFFER_STRUCT_CREATE_UNIFORM_BUFFER return RHICreateUniformBuffer(&InContents, FTypeInfo::GetStructMetadata()->GetLayoutPtr(), InUsage); |
| |
| #define | INTERNAL_SHADER_PARAMETER_STRUCT_BEGIN(StructTypeName, DllStorage, ConstructorSuffix, GetStructMetadataScope, CreateUniformBufferImpl) |
| |
| #define | INTERNAL_SHADER_PARAMETER_EXPLICIT(BaseType, TypeInfo, MemberType, MemberName, ArrayDecl, DefaultValue, Precision, OptionalShaderType, IsMemberStruct) |
| |
| #define | BEGIN_SHADER_PARAMETER_STRUCT(StructTypeName, DllStorage) INTERNAL_SHADER_PARAMETER_STRUCT_BEGIN(StructTypeName,, {}, INTERNAL_SHADER_PARAMETER_GET_STRUCT_METADATA(StructTypeName), INTERNAL_SHADER_PARAMETER_STRUCT_CREATE_UNIFORM_BUFFER) |
| |
| #define | END_SHADER_PARAMETER_STRUCT() |
| |
| #define | BEGIN_UNIFORM_BUFFER_STRUCT(StructTypeName, DllStorage) |
| |
| #define | BEGIN_UNIFORM_BUFFER_STRUCT_WITH_CONSTRUCTOR(StructTypeName, DllStorage) |
| |
| #define | END_UNIFORM_BUFFER_STRUCT() END_SHADER_PARAMETER_STRUCT() |
| |
| #define | IMPLEMENT_UNIFORM_BUFFER_STRUCT_EX(StructTypeName, ShaderVariableName, UsageFlags) |
| |
| #define | IMPLEMENT_UNIFORM_BUFFER_STRUCT(StructTypeName, ShaderVariableName) IMPLEMENT_UNIFORM_BUFFER_STRUCT_EX(StructTypeName,ShaderVariableName,FShaderParametersMetadata::EUsageFlags::None) |
| |
| #define | IMPLEMENT_UNIFORM_BUFFER_ALIAS_STRUCT(StructTypeName, UniformBufferAlias) |
| |
| #define | IMPLEMENT_STATIC_UNIFORM_BUFFER_STRUCT_EX(StructTypeName, ShaderVariableName, StaticSlotName, BindingFlagsEnum) |
| |
| #define | IMPLEMENT_STATIC_UNIFORM_BUFFER_STRUCT_EX2(StructTypeName, ShaderVariableName, StaticSlotName, BindingFlagsEnum, UsageFlags) |
| |
| #define | IMPLEMENT_STATIC_AND_SHADER_UNIFORM_BUFFER_STRUCT(StructTypeName, ShaderVariableName, StaticSlotName) IMPLEMENT_STATIC_UNIFORM_BUFFER_STRUCT_EX(StructTypeName, ShaderVariableName, StaticSlotName, StaticAndShader) |
| |
| #define | IMPLEMENT_STATIC_AND_SHADER_UNIFORM_BUFFER_STRUCT_EX(StructTypeName, ShaderVariableName, StaticSlotName, UsageFlags) IMPLEMENT_STATIC_UNIFORM_BUFFER_STRUCT_EX2(StructTypeName, ShaderVariableName, StaticSlotName, StaticAndShader, UsageFlags) |
| |
| #define | IMPLEMENT_STATIC_UNIFORM_BUFFER_STRUCT(StructTypeName, ShaderVariableName, StaticSlotName) IMPLEMENT_STATIC_UNIFORM_BUFFER_STRUCT_EX(StructTypeName, ShaderVariableName, StaticSlotName, Static) |
| |
| #define | IMPLEMENT_STATIC_UNIFORM_BUFFER_SLOT(SlotName) static FUniformBufferStaticSlotRegistrar UniformBufferStaticSlot_##SlotName(TEXT(#SlotName)); |
| |
| #define | BEGIN_GLOBAL_SHADER_PARAMETER_STRUCT BEGIN_UNIFORM_BUFFER_STRUCT |
| |
| #define | BEGIN_GLOBAL_SHADER_PARAMETER_STRUCT_WITH_CONSTRUCTOR BEGIN_UNIFORM_BUFFER_STRUCT_WITH_CONSTRUCTOR |
| |
| #define | END_GLOBAL_SHADER_PARAMETER_STRUCT END_UNIFORM_BUFFER_STRUCT |
| |
| #define | IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT IMPLEMENT_UNIFORM_BUFFER_STRUCT |
| |
| #define | IMPLEMENT_GLOBAL_SHADER_PARAMETER_ALIAS_STRUCT IMPLEMENT_UNIFORM_BUFFER_ALIAS_STRUCT |
| |
| #define | SHADER_PARAMETER(MemberType, MemberName) SHADER_PARAMETER_EX(MemberType,MemberName,EShaderPrecisionModifier::Float) |
| |
| #define | SHADER_PARAMETER_EX(MemberType, MemberName, Precision) INTERNAL_SHADER_PARAMETER_EXPLICIT(TShaderParameterTypeInfo<MemberType>::BaseType, TShaderParameterTypeInfo<MemberType>, MemberType,MemberName,,,Precision,TEXT(""),false) |
| |
| #define | SHADER_PARAMETER_ARRAY(MemberType, MemberName, ArrayDecl) SHADER_PARAMETER_ARRAY_EX(MemberType,MemberName,ArrayDecl,EShaderPrecisionModifier::Float) |
| |
| #define | SHADER_PARAMETER_ARRAY_EX(MemberType, MemberName, ArrayDecl, Precision) INTERNAL_SHADER_PARAMETER_EXPLICIT(TShaderParameterTypeInfo<MemberType ArrayDecl>::BaseType, TShaderParameterTypeInfo<MemberType ArrayDecl>, MemberType,MemberName,ArrayDecl,,Precision,TEXT(""),false) |
| |
| #define | SHADER_PARAMETER_TEXTURE(ShaderType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_TEXTURE, TShaderResourceParameterTypeInfo<FRHITexture*>, FRHITexture*,MemberName,, = nullptr,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_TEXTURE_ARRAY(ShaderType, MemberName, ArrayDecl) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_TEXTURE, TShaderResourceParameterTypeInfo<FRHITexture* ArrayDecl>, FRHITexture*,MemberName,ArrayDecl,,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_SRV(ShaderType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_SRV, TShaderResourceParameterTypeInfo<FRHIShaderResourceView*>, FRHIShaderResourceView*,MemberName,, = nullptr,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_SRV_ARRAY(ShaderType, MemberName, ArrayDecl) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_SRV, TShaderResourceParameterTypeInfo<FRHIShaderResourceView* ArrayDecl>, FRHIShaderResourceView*,MemberName,ArrayDecl,,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_UAV(ShaderType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_UAV, TShaderResourceParameterTypeInfo<FRHIUnorderedAccessView*>, FRHIUnorderedAccessView*,MemberName,, = nullptr,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_SAMPLER(ShaderType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_SAMPLER, TShaderResourceParameterTypeInfo<FRHISamplerState*>, FRHISamplerState*,MemberName,, = nullptr,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_SAMPLER_ARRAY(ShaderType, MemberName, ArrayDecl) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_SAMPLER, TShaderResourceParameterTypeInfo<FRHISamplerState* ArrayDecl>, FRHISamplerState*,MemberName,ArrayDecl,,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_TEXTURE(ShaderType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_TEXTURE, TShaderResourceParameterTypeInfo<FRDGTexture*>, FRDGTexture*,MemberName,, = nullptr,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_TEXTURE_ARRAY(ShaderType, MemberName, ArrayDecl) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_TEXTURE, TShaderResourceParameterTypeInfo<FRDGTexture* ArrayDecl>, FRDGTexture*,MemberName,ArrayDecl,,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_TEXTURE_SRV(ShaderType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_TEXTURE_SRV, TShaderResourceParameterTypeInfo<FRDGTextureSRV*>, FRDGTextureSRV*,MemberName,, = nullptr,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_TEXTURE_SRV_ARRAY(ShaderType, MemberName, ArrayDecl) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_TEXTURE_SRV, TShaderResourceParameterTypeInfo<FRDGTextureSRV* ArrayDecl>, FRDGTextureSRV*,MemberName,ArrayDecl,,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_TEXTURE_NON_PIXEL_SRV(ShaderType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_TEXTURE_NON_PIXEL_SRV, TShaderResourceParameterTypeInfo<FRDGTextureSRV*>, FRDGTextureSRV*,MemberName,, = nullptr,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_TEXTURE_NON_PIXEL_SRV_ARRAY(ShaderType, MemberName, ArrayDecl) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_TEXTURE_NON_PIXEL_SRV, TShaderResourceParameterTypeInfo<FRDGTextureSRV* ArrayDecl>, FRDGTextureSRV*,MemberName,ArrayDecl,,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_TEXTURE_UAV(ShaderType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_TEXTURE_UAV, TShaderResourceParameterTypeInfo<FRDGTextureUAV*>, FRDGTextureUAV*,MemberName,, = nullptr,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_TEXTURE_UAV_ARRAY(ShaderType, MemberName, ArrayDecl) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_TEXTURE_UAV, TShaderResourceParameterTypeInfo<FRDGTextureUAV* ArrayDecl>, FRDGTextureUAV*,MemberName,ArrayDecl,,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_BUFFER_SRV(ShaderType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_BUFFER_SRV, TShaderResourceParameterTypeInfo<FRDGBufferSRV*>, FRDGBufferSRV*,MemberName,, = nullptr,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_BUFFER_SRV_ARRAY(ShaderType, MemberName, ArrayDecl) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_BUFFER_SRV, TShaderResourceParameterTypeInfo<FRDGBufferSRV* ArrayDecl>, FRDGBufferSRV*,MemberName,ArrayDecl,,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_BUFFER_UAV(ShaderType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_BUFFER_UAV, TShaderResourceParameterTypeInfo<FRDGBufferUAV*>, FRDGBufferUAV*,MemberName,, = nullptr,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_BUFFER_UAV_ARRAY(ShaderType, MemberName, ArrayDecl) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_BUFFER_UAV, TShaderResourceParameterTypeInfo<FRDGBufferUAV* ArrayDecl>, FRDGBufferUAV*,MemberName,ArrayDecl,,EShaderPrecisionModifier::Float,TEXT(#ShaderType),false) |
| |
| #define | SHADER_PARAMETER_RDG_UNIFORM_BUFFER(StructType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_UNIFORM_BUFFER, TShaderParameterTypeInfo<TRDGUniformBufferBinding<StructType>>, TRDGUniformBufferBinding<StructType>,MemberName,,,EShaderPrecisionModifier::Float,TEXT(#StructType),false) |
| |
| #define | SHADER_PARAMETER_STRUCT(StructType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_NESTED_STRUCT, StructType::FTypeInfo, StructType, MemberName,,,EShaderPrecisionModifier::Float,TEXT(#StructType),true) |
| |
| #define | SHADER_PARAMETER_STRUCT_ARRAY(StructType, MemberName, ArrayDecl) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_NESTED_STRUCT, TShaderParameterStructTypeInfo<StructType ArrayDecl>, StructType, MemberName,ArrayDecl,,EShaderPrecisionModifier::Float,TEXT(#StructType),true) |
| |
| #define | SHADER_PARAMETER_STRUCT_INCLUDE(StructType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_INCLUDED_STRUCT, StructType::FTypeInfo, StructType, MemberName,,,EShaderPrecisionModifier::Float,TEXT(#StructType),true) |
| |
| #define | SHADER_PARAMETER_STRUCT_REF(StructType, MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_REFERENCED_STRUCT, TShaderParameterTypeInfo<TUniformBufferBinding<StructType>>, TUniformBufferBinding<StructType>,MemberName,,,EShaderPrecisionModifier::Float,TEXT(#StructType),false) |
| |
| #define | RDG_BUFFER_ACCESS(MemberName, Access) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_BUFFER_ACCESS, TRDGResourceAccessTypeInfo<TRDGBufferAccess<Access>>, TRDGBufferAccess<Access>,MemberName,,,EShaderPrecisionModifier::Float,TEXT(""),false) |
| |
| #define | RDG_BUFFER_ACCESS_DYNAMIC(MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_BUFFER_ACCESS, TRDGResourceAccessTypeInfo<FRDGBufferAccess>, FRDGBufferAccess,MemberName,,,EShaderPrecisionModifier::Float,TEXT(""),false) |
| |
| #define | RDG_BUFFER_ACCESS_ARRAY(MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_BUFFER_ACCESS_ARRAY, TRDGResourceAccessTypeInfo<FRDGBufferAccessArray>, FRDGBufferAccessArray,MemberName,,,EShaderPrecisionModifier::Float,TEXT(""),false) |
| |
| #define | RDG_TEXTURE_ACCESS(MemberName, Access) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_TEXTURE_ACCESS, TRDGTextureAccessTypeInfo<TRDGTextureAccess<Access>>, TRDGTextureAccess<Access>,MemberName,,,EShaderPrecisionModifier::Float,TEXT(""),false) |
| |
| #define | RDG_TEXTURE_ACCESS_DYNAMIC(MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_TEXTURE_ACCESS, TRDGTextureAccessTypeInfo<FRDGTextureAccess>, FRDGTextureAccess,MemberName,,,EShaderPrecisionModifier::Float,TEXT(""),false) |
| |
| #define | RDG_TEXTURE_ACCESS_ARRAY(MemberName) INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RDG_TEXTURE_ACCESS_ARRAY, TRDGResourceAccessTypeInfo<FRDGTextureAccessArray>, FRDGTextureAccessArray,MemberName,,,EShaderPrecisionModifier::Float,TEXT(""),false) |
| |
| #define | RENDER_TARGET_BINDING_SLOTS() INTERNAL_SHADER_PARAMETER_EXPLICIT(UBMT_RENDER_TARGET_BINDING_SLOTS, FRenderTargetBindingSlots::FTypeInfo, FRenderTargetBindingSlots,RenderTargets,,,EShaderPrecisionModifier::Float,TEXT(""),false) |
| |
| #define | SHADER_PARAMETER_RDG_BUFFER_UPLOAD(MemberName) |
| |
| #define | SHADER_PARAMETER_RDG_BUFFER(ShaderType, MemberName) |
| |
| #define | SHADER_PARAMETER_RDG_BUFFER_ARRAY(ShaderType, MemberName, ArrayDecl) UE_DEPRECATED_MACRO(5.0, "SHADER_PARAMETER_RDG_BUFFER_ARRAY has been deprecated. Use RDG_BUFFER_ACCESS_ARRAY instead.") |
| |
| #define | SHADER_PARAMETER_SCALAR_ARRAY(MemberType, MemberName, ArrayDecl) SHADER_PARAMETER_ARRAY(TShaderParameterScalarArrayTypeInfo<MemberType>::PackedArrayType, MemberName, [CalcPackedArraySize(TShaderParameterTypeInfo<TShaderParameterScalarArrayTypeInfo<MemberType>::PackedArrayType ArrayDecl>::NumElements)]) |
| |
| #define | GET_SCALAR_ARRAY_ELEMENT(PackedArray, ElementIndex) PackedArray[CalcPackedArrayIndex(ElementIndex)][CalcPackedComponentIndex(ElementIndex)] |
| |