13template<
typename TParameterStruct>
63template<
typename TMember>
87#define DECLARE_SCENE_UB_STRUCT(StructType, FieldName, PrefixKeywords) \
89 PrefixKeywords extern TSceneUniformBufferMemberRegistration<StructType> FieldName; \
92#define IMPLEMENT_SCENE_UB_STRUCT(StructType, FieldName, DefaultValueFactoryType) \
93 TSceneUniformBufferMemberRegistration<StructType> SceneUB::FieldName { TEXT(#FieldName), DefaultValueFactoryType }
104 static constexpr int32 NumRows = 1;
105 static constexpr int32 NumColumns = 1;
106 static constexpr int32 NumElements = 0;
108 static constexpr bool bIsStoredInConstantBuffer =
true;
111 using TAlignedType = FSceneUniformParameters;
115 const void* GetContents()
const
120 FSceneUniformParameters();
128 static constexpr size_t MaxSize = 4096;
149 template<
typename TMember>
152 return Set(Registration.
MemberId, &
Value, TMember::FTypeInfo::GetStructMetadata()->GetSize());
159 template<
typename TMember>
162 const void* Ptr =
Get(Registration.MemberId, TMember::FTypeInfo::GetStructMetadata()->GetSize());
163 checkf(Ptr,
TEXT(
"SceneUB::%s has not been set yet"), *Registration.Name);
164 return *
reinterpret_cast<const TMember*
>(Ptr);
171 template<
typename TMember>
174 return *
reinterpret_cast<const TMember*
>(
GetOrDefault(Registration.MemberId, TMember::FTypeInfo::GetStructMetadata()->GetSize(), GraphBuilder));
181#if !UE_BUILD_SHIPPING
192 template<
typename TMember>
217 bool bAnyMemberDirty;
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#define check(expr)
Definition AssertionMacros.h:314
#define checkf(expr, format,...)
Definition AssertionMacros.h:315
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UE_LOG_SOURCE_FILE(File)
Definition LogMacros.h:114
#define SHADER_PARAMETER_STRUCT_ALIGNMENT
Definition RHIDefinitions.h:25
#define DECLARE_UNIFORM_BUFFER_STRUCT(StructTypeName, PrefixKeywords)
Definition ShaderParameterStructDeclaration.h:10
Definition RenderGraphBuilder.h:49
Definition ShaderParameterMacros.h:1347