33 uint32 LODLightmapDataIndex,
41 uint32 LODLightmapDataIndex,
63 #if WITH_EDITORONLY_DATA
101 UE_DEPRECATED(5.5,
"SetColorOverrideStream is no longer used")
104 checkf(ColorVertexBuffer->IsInitialized(),
TEXT(
"Color Vertex buffer was not initialized! Name %s"), *ColorVertexBuffer->GetFriendlyName());
106 RHICmdList.SetStreamSource(ColorStreamIndex, ColorVertexBuffer->VertexBufferRHI, 0);
119 return GetPositionsSRV();
124 return Data.PositionComponentSRV;
129 return Data.PreSkinPositionComponentSRV ? Data.PreSkinPositionComponentSRV :
GNullColorVertexBuffer.VertexBufferSRV.GetReference();
134 return Data.TangentsSRV;
139 return Data.TextureCoordinatesSRV;
144 return Data.ColorComponentsSRV;
149 return Data.ColorIndexMask;
154 return Data.LightMapCoordinateIndex;
159 return Data.NumTexCoords;
167#if WITH_EDITORONLY_DATA
170 inline const class UStaticMesh* GetStaticMesh()
const {
return Data.StaticMesh; }
182 bool bSupportsManualVertexFetch,
193 bool bGPUSkinPassThrough =
false;
198#if !UE_BUILD_SHIPPING
203#if !UE_BUILD_SHIPPING
204 const char* DebugName;
#define checkf(expr, format,...)
Definition AssertionMacros.h:315
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
constexpr bool EnumHasAnyFlags(Enum Flags, Enum Contains)
Definition EnumClassFlags.h:35
TGlobalResource< FNullColorVertexBuffer, FRenderResource::EInitPhase::Pre > GNullColorVertexBuffer
Definition GlobalRenderResources.cpp:671
ENGINE_API void GetLocalVFUniformShaderParameters(FLocalVertexFactoryUniformShaderParameters &UniformParameters, const class FLocalVertexFactory *VertexFactory, uint32 LODLightmapDataIndex, class FColorVertexBuffer *OverrideColorVertexBuffer, int32 BaseVertexIndex, int32 PreSkinBaseVertexIndex)
ENGINE_API TUniformBufferRef< FLocalVertexFactoryUniformShaderParameters > CreateLocalVFUniformBuffer(const class FLocalVertexFactory *VertexFactory, uint32 LODLightmapDataIndex, class FColorVertexBuffer *OverrideColorVertexBuffer, int32 BaseVertexIndex, int32 PreSkinBaseVertexIndex)
#define LAYOUT_FIELD(T, Name,...)
Definition MemoryLayout.h:471
#define DECLARE_EXPORTED_TYPE_LAYOUT(T, RequiredAPI, Interface)
Definition MemoryLayout.h:559
#define END_GLOBAL_SHADER_PARAMETER_STRUCT
Definition ShaderParameterMacros.h:1669
#define SHADER_PARAMETER_SRV(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1720
#define BEGIN_GLOBAL_SHADER_PARAMETER_STRUCT
Definition ShaderParameterMacros.h:1663
#define SHADER_PARAMETER(MemberType, MemberName)
Definition ShaderParameterMacros.h:1684
EVertexInputStreamType
Definition VertexFactory.h:128
#define DECLARE_VERTEX_FACTORY_TYPE_API(FactoryClass, ModuleApi)
Definition VertexFactory.h:553
Definition ColorVertexBuffer.h:16
Definition LocalVertexFactory.h:213
ENGINE_API void GetElementShaderBindingsBase(const class FSceneInterface *Scene, const FSceneView *View, const FMeshMaterialShader *Shader, const EVertexInputStreamType InputStreamType, ERHIFeatureLevel::Type FeatureLevel, const FVertexFactory *VertexFactory, const FMeshBatchElement &BatchElement, FRHIUniformBuffer *VertexFactoryUniformBuffer, FMeshDrawSingleShaderBindings &ShaderBindings, FVertexInputStreamArray &VertexStreams) const
Definition LocalVertexFactory.cpp:137
FLocalVertexFactoryShaderParametersBase()
Definition LocalVertexFactory.h:231
LAYOUT_FIELD(bool, bAnySpeedTreeParamIsBound)
LAYOUT_FIELD(FShaderParameter, LODParameter)
ENGINE_API void Bind(const FShaderParameterMap &ParameterMap)
Definition LocalVertexFactory.cpp:63
Definition LocalVertexFactory.h:245
void GetElementShaderBindings(const FSceneInterface *Scene, const FSceneView *View, const FMeshMaterialShader *Shader, const EVertexInputStreamType InputStreamType, ERHIFeatureLevel::Type FeatureLevel, const FVertexFactory *VertexFactory, const FMeshBatchElement &BatchElement, FMeshDrawSingleShaderBindings &ShaderBindings, FVertexInputStreamArray &VertexStreams) const
Definition LocalVertexFactory.cpp:201
void Bind(const FShaderParameterMap &ParameterMap)
Definition LocalVertexFactory.cpp:195
Definition LocalVertexFactory.h:51
const int GetLightMapCoordinateIndex() const
Definition LocalVertexFactory.h:152
const int GetNumTexcoords() const
Definition LocalVertexFactory.h:157
FRHIShaderResourceView * GetTangentsSRV() const
Definition LocalVertexFactory.h:132
virtual ENGINE_API ~FLocalVertexFactory()
const uint32 GetColorIndexMask() const
Definition LocalVertexFactory.h:147
TUniformBufferRef< FLocalVertexFactoryUniformShaderParameters > UniformBuffer
Definition LocalVertexFactory.h:189
FRHIShaderResourceView * GetPositionsSRV() const
Definition LocalVertexFactory.h:122
int32 ColorStreamIndex
Definition LocalVertexFactory.h:191
FDataType Data
Definition LocalVertexFactory.h:188
void GetColorOverrideStream(const FVertexBuffer *ColorVertexBuffer, FVertexInputStreamArray &VertexStreams) const
Definition LocalVertexFactory.h:109
FRHIUniformBuffer * GetUniformBuffer() const
Definition LocalVertexFactory.h:162
virtual FShaderResourceViewRHIRef GetTriangleSortingPositionSRV() const override
Definition LocalVertexFactory.h:117
FRHIShaderResourceView * GetColorComponentsSRV() const
Definition LocalVertexFactory.h:142
FRHIShaderResourceView * GetPreSkinPositionSRV() const
Definition LocalVertexFactory.h:127
FRHIShaderResourceView * GetTextureCoordinatesSRV() const
Definition LocalVertexFactory.h:137
const FDataType & GetData() const
Definition LocalVertexFactory.h:177
Definition MaterialShared.h:2058
Definition MeshDrawShaderBindings.h:104
Definition MeshMaterialShader.h:68
Definition RHICommandList.h:455
Definition RHICommandList.h:3819
Definition RHIResources.h:3304
bool IsInitialized() const
Definition RenderResource.h:114
Definition SceneInterface.h:106
Definition SceneView.h:1425
Definition ShaderCore.h:323
Definition ShaderParameters.h:56
Definition SkeletalMeshSceneProxy.h:23
TEnumAsByte< ERHIFeatureLevel::Type > FeatureLevel
Definition SkeletalMeshSceneProxy.h:194
Definition RenderResource.h:474
FBufferRHIRef VertexBufferRHI
Definition RenderResource.h:489
virtual RENDERCORE_API FString GetFriendlyName() const override
Definition RenderResource.cpp:561
Definition VertexFactory.h:172
Definition VertexFactory.h:314
Definition VertexFactory.h:661
virtual RENDERCORE_API void ReleaseRHI()
Definition VertexFactory.cpp:340
UE_NODEBUG UE_FORCEINLINE_HINT SizeType Add(ElementType &&Item)
Definition Array.h:2696
Definition StaticMesh.h:593
GeometryCollection::Facades::FMuscleActivationData Data
Definition MuscleActivationConstraints.h:15
Type
Definition RHIFeatureLevel.h:20
@ false
Definition radaudio_common.h:23
Definition LocalVertexFactory.h:60
FVertexStreamComponent PreSkinPositionComponent
Definition LocalVertexFactory.h:61
Definition LocalVertexFactory.h:196
FDebugName(const char *InDebugName)
Definition LocalVertexFactory.h:197
Definition MeshBatch.h:232
uint32 BaseVertexIndex
Definition MeshBatch.h:281
Definition ShaderCore.h:544
Definition Components.h:38
Definition MeshMaterialShader.h:44
Definition VertexStreamComponent.h:22