568 void DestroyAdaptiveVolumetricShadowMapUniformBuffer(
592 void DestroyBeerShadowMapUniformBuffer(
@ ForceInit
Definition CoreMiscDefines.h:155
#define DECLARE_CYCLE_STAT(CounterName, StatId, GroupId)
Definition Stats.h:669
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
bool ShouldRenderHeterogeneousVolumesForView(const FViewInfo &View)
Definition HeterogeneousVolumes.cpp:427
void RenderTransmittanceWithVoxelGrid(FRDGBuilder &GraphBuilder, const FSceneTextures &SceneTextures, FScene *Scene, FViewInfo &View, const TRDGUniformBufferRef< FOrthoVoxelGridUniformBufferParameters > &OrthoGridUniformBuffer, const TRDGUniformBufferRef< FFrustumVoxelGridUniformBufferParameters > &FrustumGridUniformBuffer, FRDGTextureRef &HeterogeneousVolumeRadiance)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:2980
bool ShouldRenderVolumetricShadowMaskForLight(FRDGBuilder &GraphBuilder, const TConstArrayView< FViewInfo > &Views, const FLightSceneInfo *LightSceneInfo)
Definition HeterogeneousVolumesLiveShadingPipeline.cpp:3546
void RenderAdaptiveVolumetricShadowMapWithVoxelGrid(FRDGBuilder &GraphBuilder, const FSceneTextures &SceneTextures, FScene *Scene, FViewInfo &View, TArray< FVisibleLightInfo, SceneRenderingAllocator > &VisibleLightInfos, const FVirtualShadowMapArray &VirtualShadowMapArray, const TRDGUniformBufferRef< FOrthoVoxelGridUniformBufferParameters > &OrthoGridUniformBuffer, const TRDGUniformBufferRef< FFrustumVoxelGridUniformBufferParameters > &FrustumGridUniformBuffer)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:4246
EHeterogeneousVolumesShadowMode
Definition HeterogeneousVolumes.h:349
void VisualizeCascades(FRDGBuilder &GraphBuilder, const FSceneTextures &SceneTextures, const FScene *Scene, const FViewInfo &View, const FLightSceneInfo *LightSceneInfo, FRDGTextureRef &VisualizationTexture)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:4558
void RenderSingleScatteringWithVoxelGrid(FRDGBuilder &GraphBuilder, const FSceneTextures &SceneTextures, FScene *Scene, FViewInfo &View, TArray< FVisibleLightInfo, SceneRenderingAllocator > &VisibleLightInfos, const FVirtualShadowMapArray &VirtualShadowMapArray, const TRDGUniformBufferRef< FOrthoVoxelGridUniformBufferParameters > &OrthoGridUniformBuffer, const TRDGUniformBufferRef< FFrustumVoxelGridUniformBufferParameters > &FrustumGridUniformBuffer, FRDGTextureRef &HeterogeneousVolumeRadiance)
EHeterogeneousVolumesCompositionType GetHeterogeneousVolumesComposition()
Definition HeterogeneousVolumes.cpp:392
void ExtractFrustumVoxelGridUniformBuffer(FRDGBuilder &GraphBuilder, const TRDGUniformBufferRef< FFrustumVoxelGridUniformBufferParameters > &FrustumGridUniformBuffer, FAdaptiveFrustumGridParameterCache &AdaptiveFrustumGridParameterCache)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:1591
void ExtractOrthoVoxelGridUniformBuffer(FRDGBuilder &GraphBuilder, const TRDGUniformBufferRef< FOrthoVoxelGridUniformBufferParameters > &OrthoGridUniformBuffer, FAdaptiveOrthoGridParameterCache &AdaptiveOrthoGridParameterCache)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:2408
bool ShouldHeterogeneousVolumesCastShadows()
Definition HeterogeneousVolumes.cpp:354
void RenderWithLiveShading(FRDGBuilder &GraphBuilder, const FSceneTextures &SceneTextures, const FScene *Scene, const FViewInfo &View, int32 ViewIndex, TArray< FVisibleLightInfo, SceneRenderingAllocator > &VisibleLightInfos, const FVirtualShadowMapArray &VirtualShadowMapArray, const IHeterogeneousVolumeInterface *HeterogeneousVolumeInterface, const FMaterialRenderProxy *MaterialRenderProxy, const FPersistentPrimitiveIndex &PersistentPrimitiveIndex, const FBoxSphereBounds LocalBoxSphereBounds, FRDGTextureRef LightingCacheTexture, FRDGTextureRef &HeterogeneousVolumeRadiance, FRDGTextureRef &HeterogeneousVolumeVelocity, FRDGTextureRef &HeterogeneousVolumeHoldout, FRDGTextureRef &HeterogeneousVolumeBeerShadowMap)
Definition HeterogeneousVolumesLiveShadingPipeline.cpp:1759
void DilateExistenceMask(FRDGBuilder &GraphBuilder, const FScene *Scene, const FViewInfo &View, FRDGTextureRef ExistenceMaskTexture, FIntVector ExistenceMaskTextureResolution, FRDGTextureRef &DilatedExistenceTexture)
Definition HeterogeneousVolumesAmbientOcclusionPipeline.cpp:383
bool ShouldRenderHeterogeneousVolumes(const FScene *Scene)
Definition HeterogeneousVolumes.cpp:403
bool ShouldRenderMeshBatchWithHeterogeneousVolumes(const FMeshBatch *Mesh, const FPrimitiveSceneProxy *Proxy, ERHIFeatureLevel::Type FeatureLevel)
Definition HeterogeneousVolumes.cpp:533
void CreateBeerShadowMapUniformBufferParameters(FRDGBuilder &GraphBuilder, const FVector3f *TranslatedWorldOrigin, const FVector4f *TranslatedWorldPlane, const FMatrix44f *TranslatedWorldToShadow, const FVector4f *SplitDepths, FIntPoint VolumetricShadowMapResolution, float VolumetricShadowMapDownsampleFactor, int32 NumShadowMatrices, uint32 VolumetricShadowMapMaxSampleCount, bool bIsDirectionalLight, FRDGBufferRef VolumetricShadowMapLinkedListBuffer, FRDGBufferRef VolumetricShadowMapIndirectionBuffer, FRDGBufferRef VolumetricShadowMapSampleBuffer, FBeerShadowMapUniformBufferParameters *&BeerShadowMapUniformBufferParameters)
bool DoesMaterialShaderSupportHeterogeneousVolumes(const FMaterialShaderParameters &Parameters)
Definition HeterogeneousVolumes.cpp:521
EHeterogeneousVolumesCompositionType
Definition HeterogeneousVolumes.h:52
void GenerateSparseVoxels(FRDGBuilder &GraphBuilder, const FViewInfo &View, FRDGTextureRef VoxelMinTexture, FIntVector VolumeResolution, uint32 MipLevel, FRDGBufferRef &NumVoxelsBuffer, FRDGBufferRef &VoxelBuffer)
Definition HeterogeneousVolumesSparseVoxelPipeline.cpp:216
void RegisterExternalFrustumVoxelGridUniformBuffer(FRDGBuilder &GraphBuilder, const FAdaptiveFrustumGridParameterCache &AdaptiveFrustumGridParameterCache, TRDGUniformBufferRef< FFrustumVoxelGridUniformBufferParameters > &FrustumGridUniformBuffer)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:1627
void RenderExistenceMaskWithLiveShading(FRDGBuilder &GraphBuilder, const FScene *Scene, const FViewInfo &View, const FSceneTextures &SceneTextures, const IHeterogeneousVolumeInterface *HeterogeneousVolumeInterface, const FMaterialRenderProxy *DefaultMaterialRenderProxy, FPersistentPrimitiveIndex PersistentPrimitiveIndex, const FBoxSphereBounds LocalBoxSphereBounds, FIntVector ExistenceMaskTextureResolution, FRDGTextureRef &ExistenceMaskTexture)
Definition HeterogeneousVolumesAmbientOcclusionPipeline.cpp:233
void RenderAdaptiveVolumetricCameraMapWithLiveShading(FRDGBuilder &GraphBuilder, const FSceneTextures &SceneTextures, FScene *Scene, FViewInfo &View)
Definition HeterogeneousVolumesLiveShadingPipeline.cpp:3173
void CompressVolumetricShadowMap(FRDGBuilder &GraphBuilder, FViewInfo &View, FIntVector GroupCount, FIntPoint ShadowMapResolution, uint32 MaxSampleCount, FRDGBufferRef VolumetricShadowLinkedListBuffer, FRDGBufferRef &VolumetricShadowIndirectionBuffer, FRDGBufferRef &VolumetricShadowTransmittanceBuffer)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:3781
uint32 GetTypeHash(const FVolumetricMeshBatch &MeshBatch)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:579
void CreateBeerShadowMapUniformBuffer(FRDGBuilder &GraphBuilder, const FVector3f *TranslatedWorldOrigin, const FVector4f *TranslatedWorldPlane, const FMatrix44f *TranslatedWorldToShadow, const FVector4f *SplitDepths, FIntPoint VolumetricShadowMapResolution, float VolumetricShadowMapDownsampleFactor, int32 NumShadowMatrices, uint32 VolumetricShadowMapMaxSampleCount, bool bIsDirectionalLight, FRDGTextureRef BeerShadowMapTexture, TRDGUniformBufferRef< FBeerShadowMapUniformBufferParameters > &BeerShadowMapUniformBuffer)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:3559
EVoxelGridBuildMode
Definition HeterogeneousVolumes.h:355
void BuildOrthoVoxelGrid(FRDGBuilder &GraphBuilder, const FScene *Scene, TArray< FViewInfo > &Views, const TArray< FVisibleLightInfo, SceneRenderingAllocator > &VisibleLightInfos, const FVoxelGridBuildOptions &BuildOptions, TRDGUniformBufferRef< FOrthoVoxelGridUniformBufferParameters > &OrthoVoxelGridUniformBuffer)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:2827
bool ShouldRenderHeterogeneousVolumesForAnyView(const TArrayView< FViewInfo > &Views)
Definition HeterogeneousVolumes.cpp:412
void RenderWithPreshading(FRDGBuilder &GraphBuilder, const FSceneTextures &SceneTextures, FScene *Scene, FViewInfo &View, int32 ViewIndex, TArray< FVisibleLightInfo, SceneRenderingAllocator > &VisibleLightInfos, const FVirtualShadowMapArray &VirtualShadowMapArray, const IHeterogeneousVolumeInterface *HeterogeneousVolumeInterface, const FMaterialRenderProxy *MaterialRenderProxy, const FPersistentPrimitiveIndex &PersistentPrimitiveIndex, const FBoxSphereBounds LocalBoxSphereBounds, FRDGTextureRef LightingCacheTexture, FRDGTextureRef &HeterogeneousVolumeRadiance)
Definition HeterogeneousVolumesPreshadingPipeline.cpp:1603
void CreateAdaptiveVolumetricShadowMapUniformBuffer(FRDGBuilder &GraphBuilder, const FVector3f *TranslatedWorldOrigin, const FVector4f *TranslatedWorldPlane, const FMatrix44f *TranslatedWorldToShadow, const FVector4f *SplitDepths, FIntPoint VolumetricShadowMapResolution, float VolumetricShadowMapDownsampleFactor, int32 NumShadowMatrices, uint32 VolumetricShadowMapMaxSampleCount, bool bIsDirectionalLight, FRDGBufferRef VolumetricShadowMapLinkedListBuffer, FRDGBufferRef VolumetricShadowMapIndirectionBuffer, FRDGBufferRef VolumetricShadowMapSampleBuffer, TRDGUniformBufferRef< FAdaptiveVolumetricShadowMapUniformBufferParameters > &AdaptiveVolumetricShadowMapUniformBuffer)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:3485
void RegisterExternalOrthoVoxelGridUniformBuffer(FRDGBuilder &GraphBuilder, const FAdaptiveOrthoGridParameterCache &AdaptiveOrthoGridParameterCache, TRDGUniformBufferRef< FOrthoVoxelGridUniformBufferParameters > &OrthoGridUniformBuffer)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:2434
bool ShouldRenderHeterogeneousVolumesAsHoldoutForView(const FViewInfo &View)
Definition HeterogeneousVolumes.cpp:490
void ConvertVolumetricShadowMapToBeerLawShadowMap(FRDGBuilder &GraphBuilder, const FSceneTextures &SceneTextures, FViewInfo &View, const FString &ShadowMapName, FIntPoint ShadowMapResolution, FIntVector GroupCount, FRDGBufferRef VolumetricShadowLinkedListBuffer, FRDGTextureRef &BeerShadowMapTexture)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:3398
void ComputeHeterogeneousVolumeBakeMaterial(FRDGBuilder &GraphBuilder, const FScene *Scene, const FViewInfo &View, const IHeterogeneousVolumeInterface *HeterogeneousVolumeInterface, const FMaterialRenderProxy *MaterialRenderProxy, const FPersistentPrimitiveIndex &PersistentPrimitiveIndex, const FBoxSphereBounds LocalBoxSphereBounds, FIntVector VolumeResolution, FRDGTextureRef &HeterogeneousVolumeExtinctionTexture, FRDGTextureRef &HeterogeneousVolumeEmissionTexture, FRDGTextureRef &HeterogeneousVolumeAlbedoTexture)
Definition HeterogeneousVolumesMaterialBakingPipeline.cpp:103
void BuildFrustumVoxelGrid(FRDGBuilder &GraphBuilder, const FScene *Scene, const FViewInfo &View, const FVoxelGridBuildOptions &BuildOptions, TRDGUniformBufferRef< FFrustumVoxelGridUniformBufferParameters > &FrustumVoxelGridUniformBuffer)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:2236
TRDGUniformBufferRef< FAdaptiveVolumetricShadowMaps > CreateAdaptiveVolumetricShadowMapUniformBuffers(FRDGBuilder &GraphBuilder, FSceneViewState *ViewState, const FLightSceneInfo *LightSceneInfo)
Definition HeterogeneousVolumesLiveShadingPipeline.cpp:1026
void RenderAdaptiveVolumetricCameraMapWithVoxelGrid(FRDGBuilder &GraphBuilder, const FSceneTextures &SceneTextures, FScene *Scene, FViewInfo &View, const TRDGUniformBufferRef< FOrthoVoxelGridUniformBufferParameters > &OrthoGridUniformBuffer, const TRDGUniformBufferRef< FFrustumVoxelGridUniformBufferParameters > &FrustumGridUniformBuffer)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:4411
bool ShouldCompositeHeterogeneousVolumesWithTranslucency()
Definition HeterogeneousVolumes.cpp:359
void RenderAmbientOcclusionWithLiveShading(FRDGBuilder &GraphBuilder, const FScene *Scene, const FViewInfo &View, const FSceneTextures &SceneTextures, const IHeterogeneousVolumeInterface *HeterogeneousVolumeInterface, const FMaterialRenderProxy *DefaultMaterialRenderProxy, FPersistentPrimitiveIndex PersistentPrimitiveIndex, const FBoxSphereBounds LocalBoxSphereBounds, FRDGTextureRef &AmbientOcclusionTexture)
Definition HeterogeneousVolumesAmbientOcclusionPipeline.cpp:724
void CreateAdaptiveVolumetricShadowMapUniformBufferParameters(FRDGBuilder &GraphBuilder, const FVector3f *TranslatedWorldOrigin, const FVector4f *TranslatedWorldPlane, const FMatrix44f *TranslatedWorldToShadow, const FVector4f *SplitDepths, FIntPoint VolumetricShadowMapResolution, float VolumetricShadowMapDownsampleFactor, int32 NumShadowMatrices, uint32 VolumetricShadowMapMaxSampleCount, bool bIsDirectionalLight, FRDGBufferRef VolumetricShadowMapLinkedListBuffer, FRDGBufferRef VolumetricShadowMapIndirectionBuffer, FRDGBufferRef VolumetricShadowMapSampleBuffer, FAdaptiveVolumetricShadowMapUniformBufferParameters *&AdaptiveVolumetricShadowMapUniformBufferParameters)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:3444
void RenderAdaptiveVolumetricShadowMapWithLiveShading(FRDGBuilder &GraphBuilder, const FSceneTextures &SceneTextures, FScene *Scene, FViewInfo &View, TArray< FVisibleLightInfo, SceneRenderingAllocator > &VisibleLightInfos)
Definition HeterogeneousVolumesLiveShadingPipeline.cpp:2965
void RenderVolumetricShadowMaskForLight(FRDGBuilder &GraphBuilder, const FSceneTexturesConfig &Config, const TConstArrayView< FViewInfo > &Views, uint32 LightType, const FLightSceneInfo *LightSceneInfo, FRDGTextureRef &ScreenShadowMaskTexture)
Definition HeterogeneousVolumesLiveShadingPipeline.cpp:3566
void ConvertBeerLawShadowMapToVolumetricShadowMap(FRDGBuilder &GraphBuilder, FViewInfo &View, FIntPoint ShadowMapResolution, FRDGTextureRef BeerShadowMapTexture, FRDGBufferRef &VolumetricShadowIndirectionBuffer, FRDGBufferRef &VolumetricShadowTransmittanceBuffer)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:3287
void CopyTexture3D(FRDGBuilder &GraphBuilder, const FViewInfo &View, FRDGTextureRef Texture, uint32 InputMipLevel, FRDGTextureRef &OutputTexture)
Definition HeterogeneousVolumesSparseVoxelPipeline.cpp:49
void CombineVolumetricShadowMap(FRDGBuilder &GraphBuilder, FViewInfo &View, FIntVector GroupCount, uint32 LightType, FIntPoint ShadowMapResolution, uint32 MaxSampleCount, FRDGBufferRef VolumetricShadowLinkedListBuffer0, FRDGBufferRef VolumetricShadowLinkedListBuffer1, FRDGBufferRef &VolumetricShadowLinkedListBuffer)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:3839
FBoxSphereBounds3d FBoxSphereBounds
Definition MathFwd.h:142
#define SHADER_PARAMETER_RDG_BUFFER_SRV(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1800
#define SHADER_PARAMETER_RDG_TEXTURE(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1752
#define SHADER_PARAMETER_ARRAY(MemberType, MemberName, ArrayDecl)
Definition ShaderParameterMacros.h:1696
#define SHADER_PARAMETER_SAMPLER(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1740
#define BEGIN_UNIFORM_BUFFER_STRUCT(StructTypeName, DllStorage)
Definition ShaderParameterMacros.h:1512
#define BEGIN_SHADER_PARAMETER_STRUCT(StructTypeName, DllStorage)
Definition ShaderParameterMacros.h:1482
#define END_UNIFORM_BUFFER_STRUCT()
Definition ShaderParameterMacros.h:1520
#define END_SHADER_PARAMETER_STRUCT()
Definition ShaderParameterMacros.h:1485
#define SHADER_PARAMETER_STRUCT(StructType, MemberName)
Definition ShaderParameterMacros.h:1847
#define SHADER_PARAMETER_RDG_TEXTURE_SRV(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1764
#define SHADER_PARAMETER(MemberType, MemberName)
Definition ShaderParameterMacros.h:1684
#define PI
Definition UnrealMathUtility.h:65
Definition LightSceneInfo.h:208
Definition MaterialRenderProxy.h:102
Definition MaterialShared.h:2058
Definition PrimitiveSceneProxy.h:296
Definition ShadowRendering.h:279
Definition RenderGraphResources.h:1321
Definition RenderGraphBuilder.h:49
Definition RenderGraphResources.h:571
Definition ScenePrivate.h:746
Definition SceneView.h:1425
Definition ScenePrivate.h:2875
Definition SceneRendering.h:1132
Definition VirtualShadowMapArray.h:291
Definition SceneRendering.h:211
Definition HeterogeneousVolumeInterface.h:12
Definition ArrayView.h:139
Definition RefCounting.h:454
Type
Definition RHIFeatureLevel.h:20
Definition HeterogeneousVolumes.cpp:365
EStochasticFilteringMode GetStochasticFilteringMode()
Definition HeterogeneousVolumes.cpp:650
int32 GetDebugMode()
Definition HeterogeneousVolumes.cpp:639
bool UseLightingCacheForTransmittance()
Definition HeterogeneousVolumes.cpp:694
EScalabilityMode GetScalabilityMode()
Definition HeterogeneousVolumesLiveShadingPipeline.cpp:127
int32 GetMipLevel()
Definition HeterogeneousVolumes.cpp:628
FIntPoint GetShadowMapResolution()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:461
int GetVoxelCount(FIntVector VolumeResolution)
Definition HeterogeneousVolumes.cpp:766
bool IsDynamicShadow(const FVisibleLightInfo *VisibleLightInfo)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:556
float GetShadingRateForShadows()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:496
bool ShouldRefineSparseVoxels()
Definition HeterogeneousVolumes.cpp:660
bool UseHardwareRayTracing()
Definition HeterogeneousVolumes.cpp:704
FIntVector GetLightingCacheResolution(const IHeterogeneousVolumeInterface *RenderInterface, FLODValue LODValue)
Definition HeterogeneousVolumes.cpp:878
bool UseIndirectLighting()
Definition HeterogeneousVolumes.cpp:710
EIndirectLightingMode GetIndirectLightingMode()
Definition HeterogeneousVolumes.cpp:720
bool ShouldApplyVolumetricFog()
Definition HeterogeneousVolumes.cpp:735
float GetShadowRelativeErrorThreshold()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:481
EIndirectLightingMode
Definition HeterogeneousVolumes.h:116
float GetOutOfFrustumShadingRateForShadows()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:501
float CalcLODFactor(float LODValue, float LODBias)
Definition HeterogeneousVolumes.cpp:858
float GetMaxShadowTraceDistance()
Definition HeterogeneousVolumes.cpp:613
bool EnableJitterForShadows()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:506
float GetShadingRateForOrthoGrid()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:370
bool UseAdaptiveVolumetricShadowMapForSelfShadowing(const FPrimitiveSceneProxy *PrimitiveSceneProxy)
Definition HeterogeneousVolumes.cpp:682
float GetShadowAbsoluteErrorThreshold()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:476
float GetIndirectLightingFactor()
Definition HeterogeneousVolumes.cpp:715
bool ShouldDepthSort()
Definition HeterogeneousVolumes.cpp:725
EShadowPipeline GetShadowPipeline()
Definition HeterogeneousVolumes.cpp:644
bool SupportsOverlappingVolumes()
Definition HeterogeneousVolumesLiveShadingPipeline.cpp:160
EShadowType
Definition HeterogeneousVolumes.h:92
@ AdaptiveVolumetricShadowMap
uint32 GetSparseVoxelMipBias()
Definition HeterogeneousVolumes.cpp:633
bool EnableIndirectionGrid()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:421
FIntPoint GetScaledViewRect(FIntRect ViewRect)
Definition HeterogeneousVolumes.cpp:578
float GetMaxTraceDistance()
Definition HeterogeneousVolumes.cpp:608
EShadowPipeline
Definition HeterogeneousVolumes.h:99
bool EnableLinearInterpolation()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:441
float GetStepSizeForShadows()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:466
float GetMinimumVoxelSizeInFrustum()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:385
bool ShouldWriteVelocity()
Definition HeterogeneousVolumes.cpp:750
bool IsHoldout(const IHeterogeneousVolumeInterface *HeterogeneousVolumeInterface)
Definition HeterogeneousVolumes.cpp:893
EShadowType GetShadowType()
Definition HeterogeneousVolumes.cpp:366
int32 GetDownsampleFactor()
Definition HeterogeneousVolumes.cpp:553
EShadowType GetTranslucencyCompositingMode()
Definition HeterogeneousVolumes.cpp:372
float GetShadowStepSize()
Definition HeterogeneousVolumes.cpp:603
int32 GetIndirectionGridResolution()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:436
bool UseAVSMCompression()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:486
ECascadeShadowMode
Definition HeterogeneousVolumes.h:162
EStochasticFilteringMode
Definition HeterogeneousVolumes.h:133
uint32 GetShadowMaxSampleCount()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:471
int32 GetCascadeShadowsQuantizationUnit()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:546
const FProjectedShadowInfo * GetProjectedShadowInfo(const FVisibleLightInfo *VisibleLightInfo, int32 ShadowIndex)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:567
bool UseExistenceMask()
Definition HeterogeneousVolumesLiveShadingPipeline.cpp:167
float GetShadingRateForFrustumGrid()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:340
FIntVector GetMipVolumeResolution(FIntVector VolumeResolution, uint32 MipLevel)
Definition HeterogeneousVolumes.cpp:776
float GetMaxStepCount()
Definition HeterogeneousVolumes.cpp:623
ECascadeShadowMode GetCascadeShadowMode()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:541
bool SupportsShadowForLightType(uint32 LightType)
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:511
float GetStepSize()
Definition HeterogeneousVolumes.cpp:618
float GetCameraDownsampleFactor()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:491
bool UseLightingCacheForInscattering()
Definition HeterogeneousVolumes.cpp:689
EFogMode GetFogInscatteringMode()
Definition HeterogeneousVolumes.cpp:740
float GetMinimumVoxelSizeOutsideFrustum()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:390
bool UseSparseVoxelPipeline()
Definition HeterogeneousVolumes.cpp:655
bool UseAnalyticDerivatives()
Definition HeterogeneousVolumes.cpp:745
bool SupportsLightType(uint32 LightType)
Definition HeterogeneousVolumesLiveShadingPipeline.cpp:133
FIntVector GetVolumeResolution(const IHeterogeneousVolumeInterface *Interface)
Definition HeterogeneousVolumes.cpp:583
FIntPoint GetDownsampledResolution(FIntPoint Resolution, int32 DownsampleFactor)
Definition HeterogeneousVolumes.cpp:573
bool SupportsCascadeShadowsForDirectionalLight()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:531
int32 GetBottomLevelGridResolution()
Definition HeterogeneousVolumesVoxelGridPipeline.cpp:431
EScalabilityMode
Definition HeterogeneousVolumes.h:81
bool ShouldApplyHeightFog()
Definition HeterogeneousVolumes.cpp:730
FIntVector GetAmbientOcclusionResolution(const IHeterogeneousVolumeInterface *, FLODValue LODValue)
Definition HeterogeneousVolumesAmbientOcclusionPipeline.cpp:92
FLODValue CalcLOD(const HeterogeneousVolumes::FLODInfo &LODInfo, const IHeterogeneousVolumeInterface *HeterogeneousVolume)
Definition HeterogeneousVolumes.cpp:790
bool EnableAmbientOcclusion()
Definition HeterogeneousVolumesAmbientOcclusionPipeline.cpp:64
EFogMode
Definition HeterogeneousVolumes.h:172
float CalcLODBias(const IHeterogeneousVolumeInterface *HeterogeneousVolume)
Definition HeterogeneousVolumes.cpp:785
bool ShouldJitter()
Definition HeterogeneousVolumes.cpp:699
bool UseSparseVoxelPerTileCulling()
Definition HeterogeneousVolumes.cpp:665
int32 GetLightingCacheMode()
Definition HeterogeneousVolumes.cpp:670
Definition HeterogeneousVolumes.h:469
uint32 Data[4]
Definition HeterogeneousVolumes.h:470
Definition HeterogeneousVolumes.h:464
uint32 Data[2]
Definition HeterogeneousVolumes.h:465
Definition HeterogeneousVolumes.h:474
uint32 Data
Definition HeterogeneousVolumes.h:475
Definition HeterogeneousVolumes.h:390
FVector3f TopLevelGridWorldBoundsMax
Definition HeterogeneousVolumes.h:401
float TanHalfFOV
Definition HeterogeneousVolumes.h:409
TRefCountPtr< FRDGPooledBuffer > EmissionGridBuffer
Definition HeterogeneousVolumes.h:415
FIntVector TopLevelGridResolution
Definition HeterogeneousVolumes.h:402
FMatrix44f WorldToView
Definition HeterogeneousVolumes.h:394
FIntVector VoxelDimensions
Definition HeterogeneousVolumes.h:403
FMatrix44f ClipToView
Definition HeterogeneousVolumes.h:398
FMatrix44f WorldToClip
Definition HeterogeneousVolumes.h:391
FVector4f ViewFrustumPlanes[6]
Definition HeterogeneousVolumes.h:411
int32 bUseFrustumGrid
Definition HeterogeneousVolumes.h:405
FMatrix44f ViewToClip
Definition HeterogeneousVolumes.h:397
TRefCountPtr< FRDGPooledBuffer > TopLevelGridBuffer
Definition HeterogeneousVolumes.h:413
float FarPlaneDepth
Definition HeterogeneousVolumes.h:408
FVector3f TopLevelGridWorldBoundsMin
Definition HeterogeneousVolumes.h:400
float NearPlaneDepth
Definition HeterogeneousVolumes.h:407
TRefCountPtr< FRDGPooledBuffer > ExtinctionGridBuffer
Definition HeterogeneousVolumes.h:414
FMatrix44f ViewToWorld
Definition HeterogeneousVolumes.h:395
FMatrix44f ClipToWorld
Definition HeterogeneousVolumes.h:392
TRefCountPtr< FRDGPooledBuffer > ScatteringGridBuffer
Definition HeterogeneousVolumes.h:416
Definition HeterogeneousVolumes.h:420
int32 bEnableIndirectionGrid
Definition HeterogeneousVolumes.h:426
TRefCountPtr< FRDGPooledBuffer > TopLevelGridBitmaskBuffer
Definition HeterogeneousVolumes.h:428
int32 bUseOrthoGrid
Definition HeterogeneousVolumes.h:424
TRefCountPtr< FRDGPooledBuffer > IndirectionGridBuffer
Definition HeterogeneousVolumes.h:430
FVector3f TopLevelGridWorldBoundsMin
Definition HeterogeneousVolumes.h:421
TRefCountPtr< FRDGPooledBuffer > ScatteringGridBuffer
Definition HeterogeneousVolumes.h:434
FVector3f TopLevelGridWorldBoundsMax
Definition HeterogeneousVolumes.h:422
TRefCountPtr< FRDGPooledBuffer > EmissionGridBuffer
Definition HeterogeneousVolumes.h:433
int32 bUseMajorantGrid
Definition HeterogeneousVolumes.h:425
TRefCountPtr< FRDGPooledBuffer > TopLevelGridBuffer
Definition HeterogeneousVolumes.h:429
TRefCountPtr< FRDGPooledBuffer > ExtinctionGridBuffer
Definition HeterogeneousVolumes.h:432
TRefCountPtr< FRDGPooledBuffer > MajorantGridBuffer
Definition HeterogeneousVolumes.h:436
FIntVector TopLevelGridResolution
Definition HeterogeneousVolumes.h:423
Definition ConvexVolume.h:44
Definition MaterialShared.h:1181
Definition MeshBatch.h:371
Definition MeshPassProcessor.h:1559
Definition RenderGraphDefinitions.h:627
Definition HeterogeneousVolumes.h:289
uint32 PackedData[2]
Definition HeterogeneousVolumes.h:290
Definition SceneTexturesConfig.h:114
Definition SceneTextures.h:110
Definition HeterogeneousVolumes.h:279
Definition HeterogeneousVolumes.h:284
uint32 PackedData[1]
Definition HeterogeneousVolumes.h:285
Definition HeterogeneousVolumes.h:294
uint32 PackedData[2]
Definition HeterogeneousVolumes.h:295
Definition SceneRendering.h:771
const FPrimitiveSceneProxy * Proxy
Definition SceneRendering.h:773
Definition HeterogeneousVolumes.h:231
uint32 MipLevel
Definition HeterogeneousVolumes.h:233
uint32 LinearIndex
Definition HeterogeneousVolumes.h:232
Definition HeterogeneousVolumes.h:361
float ShadingRateInFrustum
Definition HeterogeneousVolumes.h:363
bool bBuildOrthoGrid
Definition HeterogeneousVolumes.h:366
float ShadingRateOutOfFrustum
Definition HeterogeneousVolumes.h:364
bool bUseProjectedPixelSizeForOrthoGrid
Definition HeterogeneousVolumes.h:368
bool bBuildFrustumGrid
Definition HeterogeneousVolumes.h:367
bool bJitter
Definition HeterogeneousVolumes.h:369
EVoxelGridBuildMode VoxelGridBuildMode
Definition HeterogeneousVolumes.h:362
Definition HeterogeneousVolumes.h:189
FBoxSphereBounds WorldSceneBounds
Definition HeterogeneousVolumes.h:191
FVector WorldOrigin
Definition HeterogeneousVolumes.h:194
bool bIsPerspective
Definition HeterogeneousVolumes.h:203
float FOV
Definition HeterogeneousVolumes.h:198
FConvexVolume WorldShadowFrustum
Definition HeterogeneousVolumes.h:197
float DownsampleFactor
Definition HeterogeneousVolumes.h:200
float NearClippingDistance
Definition HeterogeneousVolumes.h:199
FIntRect ViewRect
Definition HeterogeneousVolumes.h:195
Definition HeterogeneousVolumes.h:207
float LOD
Definition HeterogeneousVolumes.h:208
float Bias
Definition HeterogeneousVolumes.h:209
Definition BoxSphereBounds.h:25
static CORE_API const TVector< double > ZeroVector
Definition Vector.h:79