UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FSceneInterface Class Referenceabstract

#include <SceneInterface.h>

+ Inheritance diagram for FSceneInterface:

Classes

struct  FCustomRenderPassRendererInput
 
class  FPrimitiveTransformUpdateScope
 
class  IPrimitiveTransformUpdater
 

Public Member Functions

ENGINE_API FSceneInterface (ERHIFeatureLevel::Type InFeatureLevel)
 
virtual void AddPrimitive (UPrimitiveComponent *Primitive)=0
 
virtual void RemovePrimitive (UPrimitiveComponent *Primitive)=0
 
virtual void ReleasePrimitive (UPrimitiveComponent *Primitive)=0
 
virtual void BatchAddPrimitives (TArrayView< UPrimitiveComponent * > InPrimitives)=0
 
virtual void BatchRemovePrimitives (TArrayView< UPrimitiveComponent * > InPrimitives)=0
 
virtual void BatchReleasePrimitives (TArrayView< UPrimitiveComponent * > InPrimitives)=0
 
virtual void UpdateAllPrimitiveSceneInfos (FRDGBuilder &GraphBuilder, EUpdateAllPrimitiveSceneInfosAsyncOps AsyncOps=EUpdateAllPrimitiveSceneInfosAsyncOps::None)=0
 
ENGINE_API void UpdateAllPrimitiveSceneInfos (FRHICommandListImmediate &RHICmdList)
 
virtual void UpdatePrimitiveTransform (UPrimitiveComponent *Primitive)=0
 
virtual void UpdatePrimitiveOcclusionBoundsSlack (UPrimitiveComponent *Primitive, float NewSlack)=0
 
virtual void UpdatePrimitiveDrawDistance (UPrimitiveComponent *Primitive, float MinDrawDistance, float MaxDrawDistance, float VirtualTextureMaxDrawDistance)=0
 
virtual void UpdateInstanceCullDistance (UPrimitiveComponent *Primitive, float StartCullDistance, float EndCullDistance)=0
 
virtual void UpdatePrimitiveAttachment (UPrimitiveComponent *Primitive)=0
 
virtual void UpdatePrimitiveInstances (UPrimitiveComponent *Primitive)=0
 
virtual void UpdateCustomPrimitiveData (UPrimitiveComponent *Primitive)=0
 
virtual void UpdatePrimitiveDistanceFieldSceneData_GameThread (UPrimitiveComponent *Primitive)
 
virtual FPrimitiveSceneInfoGetPrimitiveSceneInfo (int32 PrimitiveIndex) const =0
 
virtual FPrimitiveSceneInfoGetPrimitiveSceneInfo (FPrimitiveComponentId PrimitiveId) const =0
 
virtual FPrimitiveSceneInfoGetPrimitiveSceneInfo (const FPersistentPrimitiveIndex &PersistentPrimitiveIndex) const =0
 
virtual bool GetPreviousLocalToWorld (const FPrimitiveSceneInfo *PrimitiveSceneInfo, FMatrix &OutPreviousLocalToWorld) const
 
virtual void AddLight (ULightComponent *Light)=0
 
virtual void RemoveLight (ULightComponent *Light)=0
 
virtual void AddInvisibleLight (ULightComponent *Light)=0
 
virtual void SetSkyLight (FSkyLightSceneProxy *Light)=0
 
virtual void DisableSkyLight (FSkyLightSceneProxy *Light)=0
 
virtual bool HasSkyLightRequiringLightingBuild () const =0
 
virtual bool HasAtmosphereLightRequiringLightingBuild () const =0
 
virtual void AddDecal (UDecalComponent *Component)=0
 
virtual void RemoveDecal (UDecalComponent *Component)=0
 
virtual void UpdateDecalTransform (UDecalComponent *Component)=0
 
virtual void UpdateDecalFadeOutTime (UDecalComponent *Component)=0
 
virtual void UpdateDecalFadeInTime (UDecalComponent *Component)=0
 
virtual void BatchUpdateDecals (TArray< FDeferredDecalUpdateParams > &&UpdateParams)=0
 
virtual void AddReflectionCapture (class UReflectionCaptureComponent *Component)
 
virtual void RemoveReflectionCapture (class UReflectionCaptureComponent *Component)
 
virtual void GetReflectionCaptureData (UReflectionCaptureComponent *Component, class FReflectionCaptureData &OutCaptureData)
 
virtual void UpdateReflectionCaptureTransform (class UReflectionCaptureComponent *Component)
 
virtual void AllocateReflectionCaptures (const TArray< UReflectionCaptureComponent * > &NewCaptures, const TCHAR *CaptureReason, bool bVerifyOnlyCapturing, bool bCapturingForMobile, bool bInsideTick)
 
virtual void ReleaseReflectionCubemap (UReflectionCaptureComponent *CaptureComponent)
 
virtual void ResetReflectionCaptures (bool bOnlyIfOOM)
 
void AllocateReflectionCaptures (const TArray< UReflectionCaptureComponent * > &NewCaptures, const TCHAR *CaptureReason, bool bVerifyOnlyCapturing, bool bCapturingForMobile)
 
virtual void UpdateSkyCaptureContents (const USkyLightComponent *CaptureComponent, bool bCaptureEmissiveOnly, UTextureCube *SourceCubemap, FTexture *OutProcessedTexture, float &OutAverageBrightness, FSHVectorRGB3 &OutIrradianceEnvironmentMap, TArray< FFloat16Color > *OutRadianceMap, FLinearColor *SpecifiedCubemapColorScale)
 
virtual void AllocateAndCaptureFrameSkyEnvMap (FRDGBuilder &GraphBuilder, FSceneRenderer &SceneRenderer, FViewInfo &MainView, bool bShouldRenderSkyAtmosphere, bool bShouldRenderVolumetricCloud, FInstanceCullingManager &InstanceCullingManager)
 
virtual void AllocateAndCaptureFrameSkyEnvMap (FRDGBuilder &GraphBuilder, FSceneRenderer &SceneRenderer, FViewInfo &MainView, bool bShouldRenderSkyAtmosphere, bool bShouldRenderVolumetricCloud, FInstanceCullingManager &InstanceCullingManager, FRDGExternalAccessQueue &ExternalAccessQueue)
 
virtual void ValidateSkyLightRealTimeCapture (FRDGBuilder &GraphBuilder, const FViewInfo &View, FRDGTextureRef SceneColorTexture)
 
virtual ENGINE_API void ProcessAndRenderIlluminanceMeter (FRDGBuilder &GraphBuilder, TArrayView< FViewInfo > Views, FRDGTextureRef SceneColorTexture)
 
virtual void AddPlanarReflection (class UPlanarReflectionComponent *Component)
 
virtual void RemovePlanarReflection (class UPlanarReflectionComponent *Component)
 
virtual void UpdatePlanarReflectionTransform (UPlanarReflectionComponent *Component)
 
virtual void UpdateSceneCaptureContents (class USceneCaptureComponent2D *CaptureComponent, class ISceneRenderBuilder &SceneRenderBuilder)
 
virtual void UpdateSceneCaptureContents (class USceneCaptureComponentCube *CaptureComponent, class ISceneRenderBuilder &SceneRenderBuilder)
 
virtual void UpdatePlanarReflectionContents (class UPlanarReflectionComponent *CaptureComponent, class FSceneRenderer &MainSceneRenderer, class ISceneRenderBuilder &SceneRenderBuilder)
 
virtual void AddPrecomputedLightVolume (const class FPrecomputedLightVolume *Volume)
 
virtual void RemovePrecomputedLightVolume (const class FPrecomputedLightVolume *Volume)
 
virtual bool HasPrecomputedVolumetricLightmap_RenderThread () const
 
virtual void AddPrecomputedVolumetricLightmap (const class FPrecomputedVolumetricLightmap *Volume, bool bIsPersistentLevel)
 
virtual void RemovePrecomputedVolumetricLightmap (const class FPrecomputedVolumetricLightmap *Volume)
 
virtual void AddRuntimeVirtualTexture (URuntimeVirtualTextureComponent *Component)
 
virtual void RemoveRuntimeVirtualTexture (URuntimeVirtualTextureComponent *Component)
 
virtual void GetRuntimeVirtualTextureHidePrimitiveMask (uint8 &bHideMaskEditor, uint8 &bHideMaskGame) const
 
virtual void InvalidateRuntimeVirtualTexture (URuntimeVirtualTextureComponent *Component, FBoxSphereBounds const &WorldBounds, EVTInvalidatePriority InvalidatePriority)
 
virtual void InvalidateRuntimeVirtualTexture (URuntimeVirtualTextureComponent *Component, FBoxSphereBounds const &WorldBounds)
 
virtual void RequestPreloadRuntimeVirtualTexture (class URuntimeVirtualTextureComponent *Component, FBoxSphereBounds const &WorldBounds, int32 Level)
 
virtual void InvalidatePathTracedOutput (PathTracing::EInvalidateReason InvalidateReason=PathTracing::EInvalidateReason::Uncategorized)
 
virtual void InvalidateLumenSurfaceCache_GameThread (UPrimitiveComponent *Component)
 
virtual void GetPrimitiveUniformShaderParameters_RenderThread (const FPrimitiveSceneInfo *PrimitiveSceneInfo, bool &bHasPrecomputedVolumetricLightmap, FMatrix &PreviousLocalToWorld, int32 &SingleCaptureIndex, bool &OutputVelocity) const
 
virtual void UpdateLightTransform (ULightComponent *Light)=0
 
virtual void UpdateLightColorAndBrightness (ULightComponent *Light)=0
 
virtual void UpdateLightProxy (ULightComponent *Light, TFunction< void(FLightSceneProxy *)> &&Func)=0
 
virtual void SetPrecomputedVisibility (const class FPrecomputedVisibilityHandler *PrecomputedVisibilityHandler)
 
virtual void SetPrecomputedVolumeDistanceField (const class FPrecomputedVolumeDistanceField *PrecomputedVolumeDistanceField)
 
virtual void UpdateStaticDrawLists ()
 
virtual void UpdateCachedRenderStates (class FPrimitiveSceneProxy *SceneProxy)
 
virtual void UpdatePrimitiveSelectedState_RenderThread (const FPrimitiveSceneInfo *PrimitiveSceneInfo, bool bIsSelected)
 
virtual void UpdatePrimitiveVelocityState_RenderThread (FPrimitiveSceneInfo *PrimitiveSceneInfo, bool bIsBeingMoved)
 
virtual void AddExponentialHeightFog (uint64 Id, const FExponentialHeightFogDynamicState &State)=0
 
virtual void RemoveExponentialHeightFog (uint64 Id)=0
 
virtual bool HasAnyExponentialHeightFog () const =0
 
virtual void AddLocalFogVolume (class FLocalFogVolumeSceneProxy *FogProxy)=0
 
virtual void RemoveLocalFogVolume (class FLocalFogVolumeSceneProxy *FogProxy)=0
 
virtual bool HasAnyLocalFogVolume () const =0
 
virtual void AddSkyAtmosphere (FSkyAtmosphereSceneProxy *SkyAtmosphereSceneProxy, bool bStaticLightingBuilt)=0
 
virtual void RemoveSkyAtmosphere (FSkyAtmosphereSceneProxy *SkyAtmosphereSceneProxy)=0
 
virtual FSkyAtmosphereRenderSceneInfoGetSkyAtmosphereSceneInfo ()=0
 
virtual const FSkyAtmosphereRenderSceneInfoGetSkyAtmosphereSceneInfo () const =0
 
virtual void AddSparseVolumeTextureViewer (FSparseVolumeTextureViewerSceneProxy *SVTV)=0
 
virtual void RemoveSparseVolumeTextureViewer (FSparseVolumeTextureViewerSceneProxy *SVTV)=0
 
virtual TArray< FAnimBankRecordHandleRegisterAnimBank (const TConstArrayView< FAnimBankDesc > Descs)=0
 
virtual void UnregisterAnimBank (const TConstArrayView< FAnimBankRecordHandle > Handles)=0
 
virtual void AddVolumetricCloud (FVolumetricCloudSceneProxy *VolumetricCloudSceneProxy)=0
 
virtual void RemoveVolumetricCloud (FVolumetricCloudSceneProxy *VolumetricCloudSceneProxy)=0
 
virtual void AddHairStrands (FHairStrandsInstance *Proxy)=0
 
virtual void RemoveHairStrands (FHairStrandsInstance *Proxy)=0
 
virtual void GetLightIESAtlasSlot (const FLightSceneProxy *Proxy, FLightRenderParameters *Out)=0
 
virtual void GetRectLightAtlasSlot (const FRectLightSceneProxy *Proxy, FLightRenderParameters *Out)=0
 
virtual void SetPhysicsField (class FPhysicsFieldSceneProxy *PhysicsFieldSceneProxy)=0
 
virtual void ResetPhysicsField ()=0
 
virtual void ShowPhysicsField ()=0
 
virtual void UpdatePhysicsField (FRDGBuilder &GraphBuilder, FViewInfo &View)=0
 
virtual void UpdatePhysicsField (FRHICommandListImmediate &RHICmdList, FViewInfo &View)
 
virtual FVolumetricCloudRenderSceneInfoGetVolumetricCloudSceneInfo ()=0
 
virtual const FVolumetricCloudRenderSceneInfoGetVolumetricCloudSceneInfo () const =0
 
virtual void AddWindSource (class UWindDirectionalSourceComponent *WindComponent)=0
 
virtual void RemoveWindSource (class UWindDirectionalSourceComponent *WindComponent)=0
 
virtual void UpdateWindSource (class UWindDirectionalSourceComponent *WindComponent)=0
 
virtual const TArray< class FWindSourceSceneProxy * > & GetWindSources_RenderThread () const =0
 
virtual void GetWindParameters (const FVector &Position, FVector &OutDirection, float &OutSpeed, float &OutMinGustAmt, float &OutMaxGustAmt) const =0
 
virtual void GetWindParameters_GameThread (const FVector &Position, FVector &OutDirection, float &OutSpeed, float &OutMinGustAmt, float &OutMaxGustAmt) const =0
 
virtual void GetDirectionalWindParameters (FVector &OutDirection, float &OutSpeed, float &OutMinGustAmt, float &OutMaxGustAmt) const =0
 
virtual void AddSpeedTreeWind (class FVertexFactory *VertexFactory, const class UStaticMesh *StaticMesh)=0
 
virtual void RemoveSpeedTreeWind_RenderThread (class FVertexFactory *VertexFactory, const class UStaticMesh *StaticMesh)=0
 
virtual void UpdateSpeedTreeWind (double CurrentTime)=0
 
virtual FRHIUniformBufferGetSpeedTreeUniformBuffer (const FVertexFactory *VertexFactory) const =0
 
virtual void AddLumenSceneCard (class ULumenSceneCardComponent *LumenSceneCardComponent)
 
virtual void UpdateLumenSceneCardTransform (class ULumenSceneCardComponent *LumenSceneCardComponent)
 
virtual void RemoveLumenSceneCard (class ULumenSceneCardComponent *LumenSceneCardComponent)
 
virtual void AddPrimitive (FPrimitiveSceneDesc *Primitive)=0
 
virtual void RemovePrimitive (FPrimitiveSceneDesc *Primitive)=0
 
virtual void ReleasePrimitive (FPrimitiveSceneDesc *Primitive)=0
 
virtual void UpdatePrimitiveTransform (FPrimitiveSceneDesc *Primitive)=0
 
virtual void BatchAddPrimitives (TArrayView< FPrimitiveSceneDesc * > InPrimitives)=0
 
virtual void BatchRemovePrimitives (TArrayView< FPrimitiveSceneDesc * > InPrimitives)=0
 
virtual void BatchReleasePrimitives (TArrayView< FPrimitiveSceneDesc * > InPrimitives)=0
 
virtual void BatchRemovePrimitives (TArray< FPrimitiveSceneProxy * > &&InPrimitives)=0
 
virtual void UpdateCustomPrimitiveData (FPrimitiveSceneDesc *Primitive, const FCustomPrimitiveData &CustomPrimitiveData)=0
 
virtual void UpdatePrimitiveInstances (FPrimitiveSceneDesc *Primitive)=0
 
virtual void UpdatePrimitiveInstancesFromCompute (FPrimitiveSceneDesc *Primitive, FGPUSceneWriteDelegate &&DataWriterGPU)=0
 
virtual void UpdatePrimitiveInstances (FInstancedStaticMeshSceneDesc *Primitive)=0
 
virtual void UpdatePrimitivesDrawnInGame_RenderThread (TArrayView< FPrimitiveSceneProxy * > PrimitiveSceneProxies, bool bDrawnInGame)=0
 
virtual void Release ()=0
 
virtual void GetRelevantLights (UPrimitiveComponent *Primitive, TArray< const ULightComponent * > *RelevantLights) const =0
 
virtual bool RequiresHitProxies () const =0
 
virtual class UWorldGetWorld () const =0
 
virtual FSceneGetRenderScene ()=0
 
virtual const FSceneGetRenderScene () const =0
 
virtual void OnWorldCleanup ()
 
virtual void UpdateSceneSettings (AWorldSettings *WorldSettings)
 
virtual IPrimitiveTransformUpdaterCreatePrimitiveTransformUpdater (int32 MaxPrimitives)
 
virtual void UpdatePrimitiveTransforms (IPrimitiveTransformUpdater *Updater)
 
virtual void StartUpdatePrimitiveTransform (int32 NumPrimitives)
 
virtual void FinishUpdatePrimitiveTransform ()
 
virtual class FGPUSkinCacheGetGPUSkinCache ()
 
virtual class FSkeletalMeshUpdaterGetSkeletalMeshUpdater ()
 
virtual void GetComputeTaskWorkers (TArray< class IComputeTaskWorker * > &OutWorkers) const
 
virtual void SetFXSystem (class FFXSystemInterface *InFXSystem)=0
 
virtual class FFXSystemInterfaceGetFXSystem ()=0
 
virtual void DumpUnbuiltLightInteractions (FOutputDevice &Ar) const
 
virtual void UpdateParameterCollections (const TArray< class FMaterialParameterCollectionInstanceResource * > &InParameterCollections)
 
virtual void Export (FArchive &Ar) const
 
virtual void ApplyWorldOffset (const FVector &InOffset)
 
virtual void OnLevelAddedToWorld (const FName &InLevelName, UWorld *InWorld, bool bIsLightingScenario)
 
virtual void OnLevelRemovedFromWorld (const FName &InLevelName, UWorld *InWorld, bool bIsLightingScenario)
 
virtual bool HasAnyLights () const =0
 
virtual bool IsEditorScene () const
 
virtual void UpdateEarlyZPassMode ()
 
ERHIFeatureLevel::Type GetFeatureLevel () const
 
ENGINE_API EShaderPlatform GetShaderPlatform () const
 
EShadingPath GetShadingPath () const
 
virtual TConstArrayView< FPrimitiveSceneProxy * > GetPrimitiveSceneProxies () const =0
 
virtual TConstArrayView< FPrimitiveComponentIdGetScenePrimitiveComponentIds () const =0
 
virtual void StartFrame ()
 
virtual void EndFrame (FRHICommandListImmediate &RHICmdList)
 
virtual uint32 GetFrameNumber () const
 
virtual void IncrementFrameNumber ()
 
virtual void UpdateCachedRayTracingState (class FPrimitiveSceneProxy *SceneProxy)
 
virtual class FRayTracingDynamicGeometryCollectionGetRayTracingDynamicGeometryCollection ()
 
virtual class FRayTracingSkinnedGeometryUpdateQueueGetRayTracingSkinnedGeometryUpdateQueue ()
 
virtual bool RequestGPUSceneUpdate (FPrimitiveSceneInfo &PrimitiveSceneInfo, EPrimitiveDirtyState PrimitiveDirtyState)
 
virtual bool RequestUniformBufferUpdate (FPrimitiveSceneInfo &PrimitiveSceneInfo)
 
virtual void RefreshNaniteRasterBins (FPrimitiveSceneInfo &PrimitiveSceneInfo)
 
virtual void ReloadNaniteFixedFunctionBins ()
 
virtual bool AddCustomRenderPass (const FSceneViewFamily *ViewFamily, const FCustomRenderPassRendererInput &CustomRenderPassInput)
 

Static Public Member Functions

static ENGINE_API EShadingPath GetShadingPath (ERHIFeatureLevel::Type InFeatureLevel)
 

Protected Member Functions

virtual ~FSceneInterface ()
 

Protected Attributes

ERHIFeatureLevel::Type FeatureLevel
 

Friends

class FSceneViewStateReference
 

Detailed Description

An interface to the private scene manager implementation of a scene. Use GetRendererModule().AllocateScene to create. The scene

Constructor & Destructor Documentation

◆ FSceneInterface()

FSceneInterface::FSceneInterface ( ERHIFeatureLevel::Type  InFeatureLevel)

◆ ~FSceneInterface()

virtual FSceneInterface::~FSceneInterface ( )
inlineprotectedvirtual

Member Function Documentation

◆ AddCustomRenderPass()

virtual bool FSceneInterface::AddCustomRenderPass ( const FSceneViewFamily ViewFamily,
const FCustomRenderPassRendererInput CustomRenderPassInput 
)
inlinevirtual

Enqueues a new custom render pass to execute the next time this scene is rendered by ANY scene renderer. It will be immediately removed from the scene afterwards.

Reimplemented in FScene.

◆ AddDecal()

virtual void FSceneInterface::AddDecal ( UDecalComponent Component)
pure virtual

Adds a new decal component to the scene

Parameters
Component- component to add

Implemented in FNULLSceneInterface, and FScene.

◆ AddExponentialHeightFog()

virtual void FSceneInterface::AddExponentialHeightFog ( uint64  Id,
const FExponentialHeightFogDynamicState State 
)
pure virtual

Adds a new exponential height fog component to the scene

Parameters
FogComponent- fog component to add

Implemented in FNULLSceneInterface, and FScene.

◆ AddHairStrands()

virtual void FSceneInterface::AddHairStrands ( FHairStrandsInstance Proxy)
pure virtual

Adds a hair strands proxy to the scene

Parameters
Proxy- the hair strands proxy

Implemented in FNULLSceneInterface, and FScene.

◆ AddInvisibleLight()

virtual void FSceneInterface::AddInvisibleLight ( ULightComponent Light)
pure virtual

Adds a new light component to the scene which is currently invisible, but needed for editor previewing

Parameters
Light- light component to add

Implemented in FNULLSceneInterface, and FScene.

◆ AddLight()

virtual void FSceneInterface::AddLight ( ULightComponent Light)
pure virtual

Adds a new light component to the scene

Parameters
Light- light component to add

Implemented in FNULLSceneInterface, and FScene.

◆ AddLocalFogVolume()

virtual void FSceneInterface::AddLocalFogVolume ( class FLocalFogVolumeSceneProxy FogProxy)
pure virtual

Adds a new local height fog component to the scene

Parameters
FogProxy- fog proxy to add

Implemented in FNULLSceneInterface, and FScene.

◆ AddLumenSceneCard()

virtual void FSceneInterface::AddLumenSceneCard ( class ULumenSceneCardComponent LumenSceneCardComponent)
inlinevirtual

◆ AddPlanarReflection()

virtual void FSceneInterface::AddPlanarReflection ( class UPlanarReflectionComponent Component)
inlinevirtual

Reimplemented in FScene.

◆ AddPrecomputedLightVolume()

virtual void FSceneInterface::AddPrecomputedLightVolume ( const class FPrecomputedLightVolume Volume)
inlinevirtual

Reimplemented in FScene.

◆ AddPrecomputedVolumetricLightmap()

virtual void FSceneInterface::AddPrecomputedVolumetricLightmap ( const class FPrecomputedVolumetricLightmap Volume,
bool  bIsPersistentLevel 
)
inlinevirtual

Reimplemented in FScene.

◆ AddPrimitive() [1/2]

virtual void FSceneInterface::AddPrimitive ( FPrimitiveSceneDesc Primitive)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ AddPrimitive() [2/2]

virtual void FSceneInterface::AddPrimitive ( UPrimitiveComponent *  Primitive)
pure virtual

Adds a new primitive component to the scene

Parameters
Primitive- primitive component to add

Implemented in FNULLSceneInterface, and FScene.

◆ AddReflectionCapture()

virtual void FSceneInterface::AddReflectionCapture ( class UReflectionCaptureComponent Component)
inlinevirtual

Adds a reflection capture to the scene.

Reimplemented in FScene.

◆ AddRuntimeVirtualTexture()

virtual void FSceneInterface::AddRuntimeVirtualTexture ( URuntimeVirtualTextureComponent Component)
inlinevirtual

Add a runtime virtual texture object to the scene.

Reimplemented in FScene.

◆ AddSkyAtmosphere()

virtual void FSceneInterface::AddSkyAtmosphere ( FSkyAtmosphereSceneProxy SkyAtmosphereSceneProxy,
bool  bStaticLightingBuilt 
)
pure virtual

Adds the unique volumetric cloud component to the scene

Parameters
SkyAtmosphereSceneProxy- the sky atmosphere proxy

Implemented in FNULLSceneInterface, and FScene.

◆ AddSparseVolumeTextureViewer()

virtual void FSceneInterface::AddSparseVolumeTextureViewer ( FSparseVolumeTextureViewerSceneProxy SVTV)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ AddSpeedTreeWind()

virtual void FSceneInterface::AddSpeedTreeWind ( class FVertexFactory VertexFactory,
const class UStaticMesh StaticMesh 
)
pure virtual

Adds a SpeedTree wind computation object to the scene.

Parameters
StaticMesh- The SpeedTree static mesh whose wind to add.

Implemented in FNULLSceneInterface.

◆ AddVolumetricCloud()

virtual void FSceneInterface::AddVolumetricCloud ( FVolumetricCloudSceneProxy VolumetricCloudSceneProxy)
pure virtual

Adds the unique volumetric cloud component to the scene

Parameters
VolumetricCloudSceneProxy- the sky atmosphere proxy

Implemented in FNULLSceneInterface, and FScene.

◆ AddWindSource()

virtual void FSceneInterface::AddWindSource ( class UWindDirectionalSourceComponent WindComponent)
pure virtual

Adds a wind source component to the scene.

Parameters
WindComponent- The component to add.

Implemented in FNULLSceneInterface, and FScene.

◆ AllocateAndCaptureFrameSkyEnvMap() [1/2]

virtual void FSceneInterface::AllocateAndCaptureFrameSkyEnvMap ( FRDGBuilder GraphBuilder,
FSceneRenderer SceneRenderer,
FViewInfo MainView,
bool  bShouldRenderSkyAtmosphere,
bool  bShouldRenderVolumetricCloud,
FInstanceCullingManager InstanceCullingManager 
)
inlinevirtual

◆ AllocateAndCaptureFrameSkyEnvMap() [2/2]

virtual void FSceneInterface::AllocateAndCaptureFrameSkyEnvMap ( FRDGBuilder GraphBuilder,
FSceneRenderer SceneRenderer,
FViewInfo MainView,
bool  bShouldRenderSkyAtmosphere,
bool  bShouldRenderVolumetricCloud,
FInstanceCullingManager InstanceCullingManager,
FRDGExternalAccessQueue ExternalAccessQueue 
)
inlinevirtual

Reimplemented in FScene.

◆ AllocateReflectionCaptures() [1/2]

void FSceneInterface::AllocateReflectionCaptures ( const TArray< UReflectionCaptureComponent * > &  NewCaptures,
const TCHAR CaptureReason,
bool  bVerifyOnlyCapturing,
bool  bCapturingForMobile 
)
inline

◆ AllocateReflectionCaptures() [2/2]

virtual void FSceneInterface::AllocateReflectionCaptures ( const TArray< UReflectionCaptureComponent * > &  NewCaptures,
const TCHAR CaptureReason,
bool  bVerifyOnlyCapturing,
bool  bCapturingForMobile,
bool  bInsideTick 
)
inlinevirtual

Allocates reflection captures in the scene's reflection cubemap array and updates them by recapturing the scene. Existing captures will only be updated. Must be called from the game thread.

Reimplemented in FScene.

◆ ApplyWorldOffset()

virtual void FSceneInterface::ApplyWorldOffset ( const FVector InOffset)
inlinevirtual

Shifts scene data by provided delta Called on world origin changes

Parameters
InOffsetDelta to shift scene by

Reimplemented in FScene.

◆ BatchAddPrimitives() [1/2]

virtual void FSceneInterface::BatchAddPrimitives ( TArrayView< FPrimitiveSceneDesc * >  InPrimitives)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ BatchAddPrimitives() [2/2]

virtual void FSceneInterface::BatchAddPrimitives ( TArrayView< UPrimitiveComponent * >  InPrimitives)
pure virtual

Batched versions of Add / Remove / ReleasePrimitive, for improved CPU performance

Implemented in FNULLSceneInterface, and FScene.

◆ BatchReleasePrimitives() [1/2]

virtual void FSceneInterface::BatchReleasePrimitives ( TArrayView< FPrimitiveSceneDesc * >  InPrimitives)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ BatchReleasePrimitives() [2/2]

virtual void FSceneInterface::BatchReleasePrimitives ( TArrayView< UPrimitiveComponent * >  InPrimitives)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ BatchRemovePrimitives() [1/3]

virtual void FSceneInterface::BatchRemovePrimitives ( TArray< FPrimitiveSceneProxy * > &&  InPrimitives)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ BatchRemovePrimitives() [2/3]

virtual void FSceneInterface::BatchRemovePrimitives ( TArrayView< FPrimitiveSceneDesc * >  InPrimitives)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ BatchRemovePrimitives() [3/3]

virtual void FSceneInterface::BatchRemovePrimitives ( TArrayView< UPrimitiveComponent * >  InPrimitives)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ BatchUpdateDecals()

virtual void FSceneInterface::BatchUpdateDecals ( TArray< FDeferredDecalUpdateParams > &&  UpdateParams)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ CreatePrimitiveTransformUpdater()

virtual IPrimitiveTransformUpdater * FSceneInterface::CreatePrimitiveTransformUpdater ( int32  MaxPrimitives)
inlinevirtual

◆ DisableSkyLight()

virtual void FSceneInterface::DisableSkyLight ( FSkyLightSceneProxy Light)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ DumpUnbuiltLightInteractions()

virtual void FSceneInterface::DumpUnbuiltLightInteractions ( FOutputDevice Ar) const
inlinevirtual

Reimplemented in FScene.

◆ EndFrame()

virtual void FSceneInterface::EndFrame ( FRHICommandListImmediate RHICmdList)
inlinevirtual

Reimplemented in FScene.

◆ Export()

virtual void FSceneInterface::Export ( FArchive Ar) const
inlinevirtual

Exports the scene.

Parameters
ArThe Archive used for exporting.

Reimplemented in FScene.

◆ FinishUpdatePrimitiveTransform()

virtual void FSceneInterface::FinishUpdatePrimitiveTransform ( )
inlinevirtual

◆ GetComputeTaskWorkers()

virtual void FSceneInterface::GetComputeTaskWorkers ( TArray< class IComputeTaskWorker * > &  OutWorkers) const
inlinevirtual

Gets the compute work scheduler objects associated with the scene.

Reimplemented in FScene.

◆ GetDirectionalWindParameters()

virtual void FSceneInterface::GetDirectionalWindParameters ( FVector OutDirection,
float OutSpeed,
float OutMinGustAmt,
float OutMaxGustAmt 
) const
pure virtual

Same as GetWindParameters, but ignores point wind sources.

Implemented in FNULLSceneInterface, and FScene.

◆ GetFeatureLevel()

ERHIFeatureLevel::Type FSceneInterface::GetFeatureLevel ( ) const
inline

◆ GetFrameNumber()

virtual uint32 FSceneInterface::GetFrameNumber ( ) const
inlinevirtual

Reimplemented in FScene.

◆ GetFXSystem()

virtual class FFXSystemInterface * FSceneInterface::GetFXSystem ( )
pure virtual

Get the FX system associated with the scene.

Implemented in FNULLSceneInterface, and FScene.

◆ GetGPUSkinCache()

virtual class FGPUSkinCache * FSceneInterface::GetGPUSkinCache ( )
inlinevirtual

Gets the GPU Skin Cache system associated with the scene.

Reimplemented in FScene.

◆ GetLightIESAtlasSlot()

virtual void FSceneInterface::GetLightIESAtlasSlot ( const FLightSceneProxy Proxy,
FLightRenderParameters Out 
)
pure virtual

Return the IES profile index corresponding to the local light proxy

Parameters
Proxy- the local light proxy
Out- the light parameters which will be filled with the IES profile index information

Implemented in FNULLSceneInterface, and FScene.

◆ GetPreviousLocalToWorld()

virtual bool FSceneInterface::GetPreviousLocalToWorld ( const FPrimitiveSceneInfo PrimitiveSceneInfo,
FMatrix OutPreviousLocalToWorld 
) const
inlinevirtual

Get the primitive previous local to world (used for motion blur). Returns true if the matrix was set.

Reimplemented in FScene.

◆ GetPrimitiveSceneInfo() [1/3]

virtual FPrimitiveSceneInfo * FSceneInterface::GetPrimitiveSceneInfo ( const FPersistentPrimitiveIndex PersistentPrimitiveIndex) const
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ GetPrimitiveSceneInfo() [2/3]

virtual FPrimitiveSceneInfo * FSceneInterface::GetPrimitiveSceneInfo ( FPrimitiveComponentId  PrimitiveId) const
pure virtual

Finds the primitive with the associated component id.

Implemented in FNULLSceneInterface, and FScene.

◆ GetPrimitiveSceneInfo() [3/3]

virtual FPrimitiveSceneInfo * FSceneInterface::GetPrimitiveSceneInfo ( int32  PrimitiveIndex) const
pure virtual

Finds the primitive with the associated index into the primitive array.

Implemented in FNULLSceneInterface, and FScene.

◆ GetPrimitiveSceneProxies()

virtual TConstArrayView< FPrimitiveSceneProxy * > FSceneInterface::GetPrimitiveSceneProxies ( ) const
pure virtual

Implemented in FScene, and FNULLSceneInterface.

◆ GetPrimitiveUniformShaderParameters_RenderThread()

virtual void FSceneInterface::GetPrimitiveUniformShaderParameters_RenderThread ( const FPrimitiveSceneInfo PrimitiveSceneInfo,
bool bHasPrecomputedVolumetricLightmap,
FMatrix PreviousLocalToWorld,
int32 SingleCaptureIndex,
bool OutputVelocity 
) const
inlinevirtual

Retrieves primitive uniform shader parameters that are internal to the renderer.

Reimplemented in FScene.

◆ GetRayTracingDynamicGeometryCollection()

virtual class FRayTracingDynamicGeometryCollection * FSceneInterface::GetRayTracingDynamicGeometryCollection ( )
inlinevirtual

◆ GetRayTracingSkinnedGeometryUpdateQueue()

virtual class FRayTracingSkinnedGeometryUpdateQueue * FSceneInterface::GetRayTracingSkinnedGeometryUpdateQueue ( )
inlinevirtual

◆ GetRectLightAtlasSlot()

virtual void FSceneInterface::GetRectLightAtlasSlot ( const FRectLightSceneProxy Proxy,
FLightRenderParameters Out 
)
pure virtual

Return the rect. light atlas slot information corresponding to the rect light proxy

Parameters
Proxy- the rect light proxy
Out- the light parameters which will be filled with the rect light atlas information

Implemented in FNULLSceneInterface, and FScene.

◆ GetReflectionCaptureData()

virtual void FSceneInterface::GetReflectionCaptureData ( UReflectionCaptureComponent Component,
class FReflectionCaptureData OutCaptureData 
)
inlinevirtual

Reads back reflection capture data from the GPU. Very slow operation that blocks the GPU and rendering thread many times.

Reimplemented in FScene.

◆ GetRelevantLights()

virtual void FSceneInterface::GetRelevantLights ( UPrimitiveComponent *  Primitive,
TArray< const ULightComponent * > *  RelevantLights 
) const
pure virtual

Retrieves the lights interacting with the passed in primitive and adds them to the out array.

Parameters
PrimitivePrimitive to retrieve interacting lights for
RelevantLights[out] Array of lights interacting with primitive

Implemented in FNULLSceneInterface, and FScene.

◆ GetRenderScene() [1/2]

virtual const FScene * FSceneInterface::GetRenderScene ( ) const
pure virtual

Implemented in FScene, and FNULLSceneInterface.

◆ GetRenderScene() [2/2]

virtual FScene * FSceneInterface::GetRenderScene ( )
pure virtual

Return the scene to be used for rendering. Note that this can return null if rendering has been disabled!

Implemented in FScene, and FNULLSceneInterface.

◆ GetRuntimeVirtualTextureHidePrimitiveMask()

virtual void FSceneInterface::GetRuntimeVirtualTextureHidePrimitiveMask ( uint8 bHideMaskEditor,
uint8 bHideMaskGame 
) const
inlinevirtual

Reimplemented in FScene.

◆ GetScenePrimitiveComponentIds()

virtual TConstArrayView< FPrimitiveComponentId > FSceneInterface::GetScenePrimitiveComponentIds ( ) const
pure virtual

Returns the FPrimitiveComponentId for all primitives in the scene

Implemented in FNULLSceneInterface, and FScene.

◆ GetShaderPlatform()

EShaderPlatform FSceneInterface::GetShaderPlatform ( ) const

◆ GetShadingPath() [1/2]

EShadingPath FSceneInterface::GetShadingPath ( ) const
inline

◆ GetShadingPath() [2/2]

EShadingPath FSceneInterface::GetShadingPath ( ERHIFeatureLevel::Type  InFeatureLevel)
static

◆ GetSkeletalMeshUpdater()

virtual class FSkeletalMeshUpdater * FSceneInterface::GetSkeletalMeshUpdater ( )
inlinevirtual

Reimplemented in FScene.

◆ GetSkyAtmosphereSceneInfo() [1/2]

virtual const FSkyAtmosphereRenderSceneInfo * FSceneInterface::GetSkyAtmosphereSceneInfo ( ) const
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ GetSkyAtmosphereSceneInfo() [2/2]

virtual FSkyAtmosphereRenderSceneInfo * FSceneInterface::GetSkyAtmosphereSceneInfo ( )
pure virtual

Returns the scene's unique info if it exists

Implemented in FNULLSceneInterface, and FScene.

◆ GetSpeedTreeUniformBuffer()

virtual FRHIUniformBuffer * FSceneInterface::GetSpeedTreeUniformBuffer ( const FVertexFactory VertexFactory) const
pure virtual

Looks up the SpeedTree uniform buffer for the passed in vertex factory.

Parameters
VertexFactory- The vertex factory registered for SpeedTree.

Implemented in FNULLSceneInterface, and FScene.

◆ GetVolumetricCloudSceneInfo() [1/2]

virtual const FVolumetricCloudRenderSceneInfo * FSceneInterface::GetVolumetricCloudSceneInfo ( ) const
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ GetVolumetricCloudSceneInfo() [2/2]

virtual FVolumetricCloudRenderSceneInfo * FSceneInterface::GetVolumetricCloudSceneInfo ( )
pure virtual

Returns the scene's unique info if it exists

Implemented in FNULLSceneInterface, and FScene.

◆ GetWindParameters()

virtual void FSceneInterface::GetWindParameters ( const FVector Position,
FVector OutDirection,
float OutSpeed,
float OutMinGustAmt,
float OutMaxGustAmt 
) const
pure virtual

Accesses wind parameters. XYZ will contain wind direction * Strength, W contains wind speed.

Implemented in FNULLSceneInterface, and FScene.

◆ GetWindParameters_GameThread()

virtual void FSceneInterface::GetWindParameters_GameThread ( const FVector Position,
FVector OutDirection,
float OutSpeed,
float OutMinGustAmt,
float OutMaxGustAmt 
) const
pure virtual

Accesses wind parameters safely for game thread applications

Implemented in FNULLSceneInterface, and FScene.

◆ GetWindSources_RenderThread()

virtual const TArray< class FWindSourceSceneProxy * > & FSceneInterface::GetWindSources_RenderThread ( ) const
pure virtual

Accesses the wind source list. Must be called in the rendering thread.

Returns
The list of wind sources in the scene.

Implemented in FNULLSceneInterface, and FScene.

◆ GetWorld()

virtual class UWorld * FSceneInterface::GetWorld ( ) const
pure virtual

Get the optional UWorld that is associated with this scene

Returns
UWorld instance used by this scene

Implemented in FNULLSceneInterface, and FScene.

◆ HasAnyExponentialHeightFog()

virtual bool FSceneInterface::HasAnyExponentialHeightFog ( ) const
pure virtual
Returns
True if there are any exponential height fog potentially enabled in the scene

Implemented in FNULLSceneInterface, and FScene.

◆ HasAnyLights()

virtual bool FSceneInterface::HasAnyLights ( ) const
pure virtual
Returns
True if there are any lights in the scene

Implemented in FNULLSceneInterface, and FScene.

◆ HasAnyLocalFogVolume()

virtual bool FSceneInterface::HasAnyLocalFogVolume ( ) const
pure virtual
Returns
True if there are any local height fog potentially enabled in the scene

Implemented in FNULLSceneInterface, and FScene.

◆ HasAtmosphereLightRequiringLightingBuild()

virtual bool FSceneInterface::HasAtmosphereLightRequiringLightingBuild ( ) const
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ HasPrecomputedVolumetricLightmap_RenderThread()

virtual bool FSceneInterface::HasPrecomputedVolumetricLightmap_RenderThread ( ) const
inlinevirtual

Reimplemented in FScene.

◆ HasSkyLightRequiringLightingBuild()

virtual bool FSceneInterface::HasSkyLightRequiringLightingBuild ( ) const
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ IncrementFrameNumber()

virtual void FSceneInterface::IncrementFrameNumber ( )
inlinevirtual

Reimplemented in FScene.

◆ InvalidateLumenSurfaceCache_GameThread()

virtual void FSceneInterface::InvalidateLumenSurfaceCache_GameThread ( UPrimitiveComponent *  Component)
inlinevirtual

Invalidates Lumen surface cache and forces it to be refreshed. Useful to make material updates more responsive.

Reimplemented in FScene.

◆ InvalidatePathTracedOutput()

virtual void FSceneInterface::InvalidatePathTracedOutput ( PathTracing::EInvalidateReason  InvalidateReason = PathTracing::EInvalidateReason::Uncategorized)
inlinevirtual

Mark scene as needing to restart path tracer accumulation.

Reimplemented in FScene.

◆ InvalidateRuntimeVirtualTexture() [1/2]

virtual void FSceneInterface::InvalidateRuntimeVirtualTexture ( URuntimeVirtualTextureComponent Component,
FBoxSphereBounds const &  WorldBounds 
)
inlinevirtual

◆ InvalidateRuntimeVirtualTexture() [2/2]

virtual void FSceneInterface::InvalidateRuntimeVirtualTexture ( URuntimeVirtualTextureComponent Component,
FBoxSphereBounds const &  WorldBounds,
EVTInvalidatePriority  InvalidatePriority 
)
inlinevirtual

Invalidates pages in a runtime virtual texture object.

Parameters
ComponentRVT component containing the runtime virtual texture to invalidate
WorldBoundsWorld-space bounds of the area of the runtime virtual texture to invalidate
InvalidatePriorityEnsures the corresponding pages get processed in priority. This allows increased responsiveness when there are more pages being updated than can be handled in a given frame (when throttling)

Reimplemented in FScene.

◆ IsEditorScene()

virtual bool FSceneInterface::IsEditorScene ( ) const
inlinevirtual

Reimplemented in FScene.

◆ OnLevelAddedToWorld()

virtual void FSceneInterface::OnLevelAddedToWorld ( const FName InLevelName,
UWorld InWorld,
bool  bIsLightingScenario 
)
inlinevirtual

Notification that level was added to a world

Parameters
InLevelNameLevel name

Reimplemented in FScene.

◆ OnLevelRemovedFromWorld()

virtual void FSceneInterface::OnLevelRemovedFromWorld ( const FName InLevelName,
UWorld InWorld,
bool  bIsLightingScenario 
)
inlinevirtual

Reimplemented in FScene.

◆ OnWorldCleanup()

virtual void FSceneInterface::OnWorldCleanup ( )
inlinevirtual

Reimplemented in FScene.

◆ ProcessAndRenderIlluminanceMeter()

void FSceneInterface::ProcessAndRenderIlluminanceMeter ( FRDGBuilder GraphBuilder,
TArrayView< FViewInfo Views,
FRDGTextureRef  SceneColorTexture 
)
virtual

Reimplemented in FScene.

◆ RefreshNaniteRasterBins()

virtual void FSceneInterface::RefreshNaniteRasterBins ( FPrimitiveSceneInfo PrimitiveSceneInfo)
inlinevirtual

Reimplemented in FScene.

◆ RegisterAnimBank()

virtual TArray< FAnimBankRecordHandle > FSceneInterface::RegisterAnimBank ( const TConstArrayView< FAnimBankDesc Descs)
pure virtual

Implemented in FNULLSceneInterface.

◆ Release()

virtual void FSceneInterface::Release ( )
pure virtual

Release this scene and remove it from the rendering thread

Implemented in FNULLSceneInterface, and FScene.

◆ ReleasePrimitive() [1/2]

virtual void FSceneInterface::ReleasePrimitive ( FPrimitiveSceneDesc Primitive)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ ReleasePrimitive() [2/2]

virtual void FSceneInterface::ReleasePrimitive ( UPrimitiveComponent *  Primitive)
pure virtual

Called when a primitive is being unregistered and will not be immediately re-registered.

Implemented in FNULLSceneInterface, and FScene.

◆ ReleaseReflectionCubemap()

virtual void FSceneInterface::ReleaseReflectionCubemap ( UReflectionCaptureComponent CaptureComponent)
inlinevirtual

Reimplemented in FScene.

◆ ReloadNaniteFixedFunctionBins()

virtual void FSceneInterface::ReloadNaniteFixedFunctionBins ( )
inlinevirtual

Reimplemented in FScene.

◆ RemoveDecal()

virtual void FSceneInterface::RemoveDecal ( UDecalComponent Component)
pure virtual

Removes a decal component from the scene

Parameters
Component- component to remove

Implemented in FNULLSceneInterface, and FScene.

◆ RemoveExponentialHeightFog()

virtual void FSceneInterface::RemoveExponentialHeightFog ( uint64  Id)
pure virtual

Removes a exponential height fog component from the scene

Parameters
FogComponent- fog component to remove

Implemented in FNULLSceneInterface, and FScene.

◆ RemoveHairStrands()

virtual void FSceneInterface::RemoveHairStrands ( FHairStrandsInstance Proxy)
pure virtual

Removes a hair strands proxy to the scene

Parameters
Proxy- the hair strands proxy

Implemented in FNULLSceneInterface, and FScene.

◆ RemoveLight()

virtual void FSceneInterface::RemoveLight ( ULightComponent Light)
pure virtual

Removes a light component from the scene

Parameters
Light- light component to remove

Implemented in FNULLSceneInterface, and FScene.

◆ RemoveLocalFogVolume()

virtual void FSceneInterface::RemoveLocalFogVolume ( class FLocalFogVolumeSceneProxy FogProxy)
pure virtual

Removes a local height fog component from the scene

Parameters
FogProxy- fog proxy to remove

Implemented in FNULLSceneInterface, and FScene.

◆ RemoveLumenSceneCard()

virtual void FSceneInterface::RemoveLumenSceneCard ( class ULumenSceneCardComponent LumenSceneCardComponent)
inlinevirtual

◆ RemovePlanarReflection()

virtual void FSceneInterface::RemovePlanarReflection ( class UPlanarReflectionComponent Component)
inlinevirtual

Reimplemented in FScene.

◆ RemovePrecomputedLightVolume()

virtual void FSceneInterface::RemovePrecomputedLightVolume ( const class FPrecomputedLightVolume Volume)
inlinevirtual

Reimplemented in FScene.

◆ RemovePrecomputedVolumetricLightmap()

virtual void FSceneInterface::RemovePrecomputedVolumetricLightmap ( const class FPrecomputedVolumetricLightmap Volume)
inlinevirtual

Reimplemented in FScene.

◆ RemovePrimitive() [1/2]

virtual void FSceneInterface::RemovePrimitive ( FPrimitiveSceneDesc Primitive)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ RemovePrimitive() [2/2]

virtual void FSceneInterface::RemovePrimitive ( UPrimitiveComponent *  Primitive)
pure virtual

Removes a primitive component from the scene

Parameters
Primitive- primitive component to remove

Implemented in FNULLSceneInterface, and FScene.

◆ RemoveReflectionCapture()

virtual void FSceneInterface::RemoveReflectionCapture ( class UReflectionCaptureComponent Component)
inlinevirtual

Removes a reflection capture from the scene.

Reimplemented in FScene.

◆ RemoveRuntimeVirtualTexture()

virtual void FSceneInterface::RemoveRuntimeVirtualTexture ( URuntimeVirtualTextureComponent Component)
inlinevirtual

Removes a runtime virtual texture object from the scene.

Reimplemented in FScene.

◆ RemoveSkyAtmosphere()

virtual void FSceneInterface::RemoveSkyAtmosphere ( FSkyAtmosphereSceneProxy SkyAtmosphereSceneProxy)
pure virtual

Removes the unique volumetric cloud component to the scene

Parameters
SkyAtmosphereSceneProxy- the sky atmosphere proxy

Implemented in FNULLSceneInterface, and FScene.

◆ RemoveSparseVolumeTextureViewer()

virtual void FSceneInterface::RemoveSparseVolumeTextureViewer ( FSparseVolumeTextureViewerSceneProxy SVTV)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ RemoveSpeedTreeWind_RenderThread()

virtual void FSceneInterface::RemoveSpeedTreeWind_RenderThread ( class FVertexFactory VertexFactory,
const class UStaticMesh StaticMesh 
)
pure virtual

Removes a SpeedTree wind computation object to the scene.

Parameters
StaticMesh- The SpeedTree static mesh whose wind to remove.

Implemented in FNULLSceneInterface.

◆ RemoveVolumetricCloud()

virtual void FSceneInterface::RemoveVolumetricCloud ( FVolumetricCloudSceneProxy VolumetricCloudSceneProxy)
pure virtual

Removes the unique volumetric cloud component to the scene

Parameters
VolumetricCloudSceneProxy- the sky atmosphere proxy

Implemented in FNULLSceneInterface, and FScene.

◆ RemoveWindSource()

virtual void FSceneInterface::RemoveWindSource ( class UWindDirectionalSourceComponent WindComponent)
pure virtual

Removes a wind source component from the scene.

Parameters
WindComponent- The component to remove.

Implemented in FNULLSceneInterface, and FScene.

◆ RequestGPUSceneUpdate()

virtual bool FSceneInterface::RequestGPUSceneUpdate ( FPrimitiveSceneInfo PrimitiveSceneInfo,
EPrimitiveDirtyState  PrimitiveDirtyState 
)
inlinevirtual

Reimplemented in FScene.

◆ RequestPreloadRuntimeVirtualTexture()

virtual void FSceneInterface::RequestPreloadRuntimeVirtualTexture ( class URuntimeVirtualTextureComponent Component,
FBoxSphereBounds const &  WorldBounds,
int32  Level 
)
inlinevirtual

Request preload of an area of a runtime virtual texture at a given mip level.

Reimplemented in FScene.

◆ RequestUniformBufferUpdate()

virtual bool FSceneInterface::RequestUniformBufferUpdate ( FPrimitiveSceneInfo PrimitiveSceneInfo)
inlinevirtual

Reimplemented in FScene.

◆ RequiresHitProxies()

virtual bool FSceneInterface::RequiresHitProxies ( ) const
pure virtual

Indicates if hit proxies should be processed by this scene

Returns
true if hit proxies should be rendered in this scene.

Implemented in FNULLSceneInterface, and FScene.

◆ ResetPhysicsField()

virtual void FSceneInterface::ResetPhysicsField ( )
pure virtual

Reset the physics field scene proxy

Implemented in FNULLSceneInterface, and FScene.

◆ ResetReflectionCaptures()

virtual void FSceneInterface::ResetReflectionCaptures ( bool  bOnlyIfOOM)
inlinevirtual

Resets reflection capture data to allow it to be rebuilt from scratch. Allows shrinking of the number of items in the capture array, which otherwise only grows. This can allow the user to solve cases where an out of memory (OOM) condition prevented captures from being generated. The user can remove some items or reduce the capture resolution to fix the issue, and run "Build Reflection Captures" (which calls this function), instead of needing to restart the editor. The flag "bOnlyIfOOM" only does the reset if an OOM had occurred.

Reimplemented in FScene.

◆ SetFXSystem()

virtual void FSceneInterface::SetFXSystem ( class FFXSystemInterface InFXSystem)
pure virtual

Sets the FX system associated with the scene.

Implemented in FNULLSceneInterface, and FScene.

◆ SetPhysicsField()

virtual void FSceneInterface::SetPhysicsField ( class FPhysicsFieldSceneProxy PhysicsFieldSceneProxy)
pure virtual

Set the physics field scene proxy to the scene

Parameters
PhysicsFieldSceneProxy- the physics field scene proxy

Implemented in FScene, and FNULLSceneInterface.

◆ SetPrecomputedVisibility()

virtual void FSceneInterface::SetPrecomputedVisibility ( const class FPrecomputedVisibilityHandler PrecomputedVisibilityHandler)
inlinevirtual

Sets the precomputed visibility handler for the scene, or NULL to clear the current one.

◆ SetPrecomputedVolumeDistanceField()

virtual void FSceneInterface::SetPrecomputedVolumeDistanceField ( const class FPrecomputedVolumeDistanceField PrecomputedVolumeDistanceField)
inlinevirtual

Sets the precomputed volume distance field for the scene, or NULL to clear the current one.

◆ SetSkyLight()

virtual void FSceneInterface::SetSkyLight ( FSkyLightSceneProxy Light)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ ShowPhysicsField()

virtual void FSceneInterface::ShowPhysicsField ( )
pure virtual

Set the shader print/debug cvars to be able to show the fields

Implemented in FNULLSceneInterface, and FScene.

◆ StartFrame()

virtual void FSceneInterface::StartFrame ( )
inlinevirtual

Reimplemented in FScene.

◆ StartUpdatePrimitiveTransform()

virtual void FSceneInterface::StartUpdatePrimitiveTransform ( int32  NumPrimitives)
inlinevirtual

◆ UnregisterAnimBank()

virtual void FSceneInterface::UnregisterAnimBank ( const TConstArrayView< FAnimBankRecordHandle Handles)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdateAllPrimitiveSceneInfos() [1/2]

virtual void FSceneInterface::UpdateAllPrimitiveSceneInfos ( FRDGBuilder GraphBuilder,
EUpdateAllPrimitiveSceneInfosAsyncOps  AsyncOps = EUpdateAllPrimitiveSceneInfosAsyncOps::None 
)
pure virtual

Updates all primitive scene info additions, remobals and translation changes

Implemented in FScene, FScene, and FNULLSceneInterface.

◆ UpdateAllPrimitiveSceneInfos() [2/2]

void FSceneInterface::UpdateAllPrimitiveSceneInfos ( FRHICommandListImmediate RHICmdList)

◆ UpdateCachedRayTracingState()

virtual void FSceneInterface::UpdateCachedRayTracingState ( class FPrimitiveSceneProxy SceneProxy)
inlinevirtual

◆ UpdateCachedRenderStates()

virtual void FSceneInterface::UpdateCachedRenderStates ( class FPrimitiveSceneProxy SceneProxy)
inlinevirtual

Update render states that possibly cached inside renderer, like mesh draw commands. More lightweight than re-registering the scene proxy.

Reimplemented in FScene.

◆ UpdateCustomPrimitiveData() [1/2]

virtual void FSceneInterface::UpdateCustomPrimitiveData ( FPrimitiveSceneDesc Primitive,
const FCustomPrimitiveData CustomPrimitiveData 
)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdateCustomPrimitiveData() [2/2]

virtual void FSceneInterface::UpdateCustomPrimitiveData ( UPrimitiveComponent *  Primitive)
pure virtual

Updates the custom primitive data of a primitive component which has already been added to the scene.

Parameters
Primitive- Primitive component to update

Implemented in FNULLSceneInterface, and FScene.

◆ UpdateDecalFadeInTime()

virtual void FSceneInterface::UpdateDecalFadeInTime ( UDecalComponent Component)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdateDecalFadeOutTime()

virtual void FSceneInterface::UpdateDecalFadeOutTime ( UDecalComponent Component)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdateDecalTransform()

virtual void FSceneInterface::UpdateDecalTransform ( UDecalComponent Component)
pure virtual

Updates the transform of a decal which has already been added to the scene.

Parameters
Decal- Decal component to update

Implemented in FNULLSceneInterface, and FScene.

◆ UpdateEarlyZPassMode()

virtual void FSceneInterface::UpdateEarlyZPassMode ( )
inlinevirtual

Reimplemented in FScene.

◆ UpdateInstanceCullDistance()

virtual void FSceneInterface::UpdateInstanceCullDistance ( UPrimitiveComponent *  Primitive,
float  StartCullDistance,
float  EndCullDistance 
)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdateLightColorAndBrightness()

virtual void FSceneInterface::UpdateLightColorAndBrightness ( ULightComponent Light)
pure virtual

Updates the color and brightness of a light which has already been added to the scene.

Parameters
Light- light component to update

Implemented in FNULLSceneInterface, and FScene.

◆ UpdateLightProxy()

virtual void FSceneInterface::UpdateLightProxy ( ULightComponent Light,
TFunction< void(FLightSceneProxy *)> &&  Func 
)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdateLightTransform()

virtual void FSceneInterface::UpdateLightTransform ( ULightComponent Light)
pure virtual

Updates the transform of a light which has already been added to the scene.

Parameters
Light- light component to update

Implemented in FNULLSceneInterface, and FScene.

◆ UpdateLumenSceneCardTransform()

virtual void FSceneInterface::UpdateLumenSceneCardTransform ( class ULumenSceneCardComponent LumenSceneCardComponent)
inlinevirtual

◆ UpdateParameterCollections()

virtual void FSceneInterface::UpdateParameterCollections ( const TArray< class FMaterialParameterCollectionInstanceResource * > &  InParameterCollections)
inlinevirtual

Updates the scene's list of parameter collection id's and their uniform buffers.

Reimplemented in FScene.

◆ UpdatePhysicsField() [1/2]

virtual void FSceneInterface::UpdatePhysicsField ( FRDGBuilder GraphBuilder,
FViewInfo View 
)
pure virtual

Reset the physics field scene proxy

Implemented in FNULLSceneInterface, and FScene.

◆ UpdatePhysicsField() [2/2]

virtual void FSceneInterface::UpdatePhysicsField ( FRHICommandListImmediate RHICmdList,
FViewInfo View 
)
inlinevirtual

◆ UpdatePlanarReflectionContents()

virtual void FSceneInterface::UpdatePlanarReflectionContents ( class UPlanarReflectionComponent CaptureComponent,
class FSceneRenderer MainSceneRenderer,
class ISceneRenderBuilder SceneRenderBuilder 
)
inlinevirtual

Reimplemented in FScene.

◆ UpdatePlanarReflectionTransform()

virtual void FSceneInterface::UpdatePlanarReflectionTransform ( UPlanarReflectionComponent Component)
inlinevirtual

Reimplemented in FScene.

◆ UpdatePrimitiveAttachment()

virtual void FSceneInterface::UpdatePrimitiveAttachment ( UPrimitiveComponent *  Primitive)
pure virtual

Updates primitive attachment state.

Implemented in FNULLSceneInterface, and FScene.

◆ UpdatePrimitiveDistanceFieldSceneData_GameThread()

virtual void FSceneInterface::UpdatePrimitiveDistanceFieldSceneData_GameThread ( UPrimitiveComponent *  Primitive)
inlinevirtual

Updates distance field scene data (transforms, uv scale, self-shadow bias, etc.) but doesn't change allocation in the atlas

Reimplemented in FScene.

◆ UpdatePrimitiveDrawDistance()

virtual void FSceneInterface::UpdatePrimitiveDrawDistance ( UPrimitiveComponent *  Primitive,
float  MinDrawDistance,
float  MaxDrawDistance,
float  VirtualTextureMaxDrawDistance 
)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdatePrimitiveInstances() [1/3]

virtual void FSceneInterface::UpdatePrimitiveInstances ( FInstancedStaticMeshSceneDesc Primitive)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdatePrimitiveInstances() [2/3]

virtual void FSceneInterface::UpdatePrimitiveInstances ( FPrimitiveSceneDesc Primitive)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdatePrimitiveInstances() [3/3]

virtual void FSceneInterface::UpdatePrimitiveInstances ( UPrimitiveComponent *  Primitive)
pure virtual

Call to notify that an instace proxy update has been queued for the primitive.

Parameters
Primitive- primitive component to update

Implemented in FNULLSceneInterface, and FScene.

◆ UpdatePrimitiveInstancesFromCompute()

virtual void FSceneInterface::UpdatePrimitiveInstancesFromCompute ( FPrimitiveSceneDesc Primitive,
FGPUSceneWriteDelegate &&  DataWriterGPU 
)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdatePrimitiveOcclusionBoundsSlack()

virtual void FSceneInterface::UpdatePrimitiveOcclusionBoundsSlack ( UPrimitiveComponent *  Primitive,
float  NewSlack 
)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdatePrimitivesDrawnInGame_RenderThread()

virtual void FSceneInterface::UpdatePrimitivesDrawnInGame_RenderThread ( TArrayView< FPrimitiveSceneProxy * >  PrimitiveSceneProxies,
bool  bDrawnInGame 
)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdatePrimitiveSelectedState_RenderThread()

virtual void FSceneInterface::UpdatePrimitiveSelectedState_RenderThread ( const FPrimitiveSceneInfo PrimitiveSceneInfo,
bool  bIsSelected 
)
inlinevirtual

Updates the selected state values that might be cached inside the renderer

Reimplemented in FScene.

◆ UpdatePrimitiveTransform() [1/2]

virtual void FSceneInterface::UpdatePrimitiveTransform ( FPrimitiveSceneDesc Primitive)
pure virtual

Implemented in FNULLSceneInterface, and FScene.

◆ UpdatePrimitiveTransform() [2/2]

virtual void FSceneInterface::UpdatePrimitiveTransform ( UPrimitiveComponent *  Primitive)
pure virtual

Updates the transform of a primitive which has already been added to the scene.

Parameters
Primitive- primitive component to update

Implemented in FNULLSceneInterface, and FScene.

◆ UpdatePrimitiveTransforms()

virtual void FSceneInterface::UpdatePrimitiveTransforms ( IPrimitiveTransformUpdater Updater)
inlinevirtual

◆ UpdatePrimitiveVelocityState_RenderThread()

virtual void FSceneInterface::UpdatePrimitiveVelocityState_RenderThread ( FPrimitiveSceneInfo PrimitiveSceneInfo,
bool  bIsBeingMoved 
)
inlinevirtual

Updates the velocity state values that might be cached inside the renderer

Reimplemented in FScene.

◆ UpdateReflectionCaptureTransform()

virtual void FSceneInterface::UpdateReflectionCaptureTransform ( class UReflectionCaptureComponent Component)
inlinevirtual

Updates a reflection capture's transform, and then re-captures the scene.

Reimplemented in FScene.

◆ UpdateSceneCaptureContents() [1/2]

virtual void FSceneInterface::UpdateSceneCaptureContents ( class USceneCaptureComponent2D CaptureComponent,
class ISceneRenderBuilder SceneRenderBuilder 
)
inlinevirtual

Updates the contents of the given scene capture by rendering the scene. This must be called on the game thread.

Reimplemented in FScene.

◆ UpdateSceneCaptureContents() [2/2]

virtual void FSceneInterface::UpdateSceneCaptureContents ( class USceneCaptureComponentCube CaptureComponent,
class ISceneRenderBuilder SceneRenderBuilder 
)
inlinevirtual

Reimplemented in FScene.

◆ UpdateSceneSettings()

virtual void FSceneInterface::UpdateSceneSettings ( AWorldSettings WorldSettings)
inlinevirtual

Reimplemented in FScene.

◆ UpdateSkyCaptureContents()

virtual void FSceneInterface::UpdateSkyCaptureContents ( const USkyLightComponent CaptureComponent,
bool  bCaptureEmissiveOnly,
UTextureCube SourceCubemap,
FTexture OutProcessedTexture,
float OutAverageBrightness,
FSHVectorRGB3 OutIrradianceEnvironmentMap,
TArray< FFloat16Color > *  OutRadianceMap,
FLinearColor SpecifiedCubemapColorScale 
)
inlinevirtual

Updates the contents of the given sky capture by rendering the scene. This must be called on the game thread.

Reimplemented in FScene.

◆ UpdateSpeedTreeWind()

virtual void FSceneInterface::UpdateSpeedTreeWind ( double  CurrentTime)
pure virtual

Ticks the SpeedTree wind object and updates the uniform buffer.

Implemented in FNULLSceneInterface, and FScene.

◆ UpdateStaticDrawLists()

virtual void FSceneInterface::UpdateStaticDrawLists ( )
inlinevirtual

Updates all static draw lists.

Reimplemented in FScene.

◆ UpdateWindSource()

virtual void FSceneInterface::UpdateWindSource ( class UWindDirectionalSourceComponent WindComponent)
pure virtual

Update a wind source component from the scene.

Parameters
WindComponent- The component to update.

Implemented in FNULLSceneInterface, and FScene.

◆ ValidateSkyLightRealTimeCapture()

virtual void FSceneInterface::ValidateSkyLightRealTimeCapture ( FRDGBuilder GraphBuilder,
const FViewInfo View,
FRDGTextureRef  SceneColorTexture 
)
inlinevirtual

Reimplemented in FScene.

Friends And Related Symbol Documentation

◆ FSceneViewStateReference

Member Data Documentation

◆ FeatureLevel

ERHIFeatureLevel::Type FSceneInterface::FeatureLevel
protected

This scene's feature level


The documentation for this class was generated from the following files: