UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FSceneView Class Reference

#include <SceneView.h>

+ Inheritance diagram for FSceneView:

Classes

struct  FWaterInfoTextureRenderingParams
 

Public Member Functions

ENGINE_API const FViewMatricesGetShadowViewMatrices () const
 
const FConvexVolumeGetCullingFrustum () const
 
ENGINE_API FSceneView (const FSceneViewInitOptions &InitOptions)
 
PRAGMA_DISABLE_DEPRECATION_WARNINGS FSceneView (const FSceneView &Other)=default
 
 FSceneView (FSceneView &&Other)=default
 
PRAGMA_ENABLE_DEPRECATION_WARNINGS virtual ENGINE_API ~FSceneView ()
 
bool AllowGPUParticleUpdate () const
 
ENGINE_API FVector4 WorldToScreen (const FVector &WorldPoint) const
 
ENGINE_API FVector ScreenToWorld (const FVector4 &ScreenPoint) const
 
ENGINE_API bool ScreenToPixel (const FVector4 &ScreenPoint, FVector2D &OutPixelLocation) const
 
ENGINE_API FVector4 PixelToScreen (float X, float Y, float Z) const
 
ENGINE_API FVector4 CursorToScreen (float X, float Y, float Z) const
 
ENGINE_API bool WorldToPixel (const FVector &WorldPoint, FVector2D &OutPixelLocation) const
 
ENGINE_API FVector4 PixelToWorld (float X, float Y, float Z) const
 
ENGINE_API FPlane Project (const FVector &WorldPoint) const
 
ENGINE_API FVector Deproject (const FPlane &ScreenPoint) const
 
ENGINE_API void DeprojectFVector2D (const FVector2D &ScreenPos, FVector &out_WorldOrigin, FVector &out_WorldDirection) const
 
FVector GetViewRight () const
 
FVector GetViewUp () const
 
FVector GetViewDirection () const
 
const FConvexVolumeGetDynamicMeshElementsShadowCullFrustum () const
 
void SetDynamicMeshElementsShadowCullFrustum (const FConvexVolume *InDynamicMeshElementsShadowCullFrustum)
 
const FVectorGetPreShadowTranslation () const
 
void SetPreShadowTranslation (const FVector &InPreShadowTranslation)
 
bool IsPerspectiveProjection () const
 
bool IsUnderwater () const
 
ENGINE_API FVector GetTemporalLODOrigin (int32 Index, bool bUseLaggedLODTransition=true) const
 
ENGINE_API float GetTemporalLODTransition () const
 
ENGINE_API uint32 GetDistanceFieldTemporalSampleIndex () const
 
ENGINE_API uint32 GetViewKey () const
 
ENGINE_API uint32 GetOcclusionFrameCounter () const
 
ENGINE_API void UpdateProjectionMatrix (const FMatrix &NewProjectionMatrix)
 
ENGINE_API void UpdateViewMatrix ()
 
ENGINE_API void UpdatePlanarReflectionViewMatrix (const FSceneView &SourceView, const FMirrorMatrix &MirrorMatrix)
 
ENGINE_API void StartFinalPostprocessSettings (FVector InViewLocation)
 
ENGINE_API void OverridePostProcessSettings (const FPostProcessSettings &Src, float Weight)
 
ENGINE_API void EndFinalPostprocessSettings (const FSceneViewInitOptions &ViewInitOptions)
 
ENGINE_API void SetupAntiAliasingMethod ()
 
ENGINE_API void ConfigureBufferVisualizationSettings ()
 
ENGINE_API void ConfigureVisualizeCalibrationSettings ()
 
ERHIFeatureLevel::Type GetFeatureLevel () const
 
ENGINE_API EShaderPlatform GetShaderPlatform () const
 
ENGINE_API bool IsInstancedStereoPass () const
 
int32 GetStereoPassInstanceFactor () const
 
ENGINE_API void SetupViewRectUniformBufferParameters (FViewUniformShaderParameters &ViewUniformShaderParameters, const FIntPoint &InBufferSize, const FIntRect &InEffectiveViewRect, const FViewMatrices &InViewMatrices, const FViewMatrices &InPrevViewMatrice) const
 
ENGINE_API void SetupCommonViewUniformBufferParameters (FViewUniformShaderParameters &ViewUniformShaderParameters, const FIntPoint &InBufferSize, int32 NumMSAASamples, const FIntRect &InEffectiveViewRect, const FViewMatrices &InViewMatrices, const FViewMatrices &InPrevViewMatrices) const
 
ENGINE_API bool HasValidEyeAdaptationBuffer () const
 
ENGINE_API FRDGPooledBufferGetEyeAdaptationBuffer () const
 
ENGINE_API float GetLastEyeAdaptationExposure () const
 
ENGINE_API float GetLastAverageSceneLuminance () const
 
ENGINE_API const FSceneViewGetPrimarySceneView () const
 
bool IsPrimarySceneView () const
 
ENGINE_API const FSceneViewGetInstancedSceneView () const
 
bool IsInstancedSceneView () const
 
ENGINE_API TArray< const FSceneView * > GetSecondaryViews () const
 
const TUniformBufferRef< FInstancedViewUniformShaderParameters > & GetInstancedViewUniformBuffer () const
 
ERenderTargetLoadAction GetOverwriteLoadAction () const
 
const FSceneViewGetSnapshotOriginView () const
 
bool IsRayTracingAllowedForView () const
 
bool HasEyeAdaptationViewState () const
 
- Public Member Functions inherited from FSceneViewFixLayout
virtual ~FSceneViewFixLayout ()=default
 

Static Public Member Functions

static ENGINE_API void DeprojectScreenToWorld (const FVector2D &ScreenPos, const FIntRect &ViewRect, const FMatrix &InvViewMatrix, const FMatrix &InvProjMatrix, FVector &out_WorldOrigin, FVector &out_WorldDirection)
 
static ENGINE_API void DeprojectScreenToWorld (const FVector2D &ScreenPos, const FIntRect &ViewRect, const FMatrix &InvViewProjMatrix, FVector &out_WorldOrigin, FVector &out_WorldDirection)
 
static ENGINE_API bool ProjectWorldToScreen (const FVector &WorldPosition, const FIntRect &ViewRect, const FMatrix &ViewProjectionMatrix, FVector2D &out_ScreenPos, bool bShouldCalcOutsideViewPosition=false)
 
static ENGINE_API FVector4f GetScreenPositionScaleBias (const FIntPoint &BufferSize, const FIntRect &ViewRect)
 

Public Attributes

const FSceneViewFamilyFamily
 
FSceneViewStateInterfaceState
 
TUniformBufferRef< FViewUniformShaderParametersViewUniformBuffer
 
FSceneViewInitOptions SceneViewInitOptions
 
FSceneViewOwner ViewActor
 
int32 PlayerIndex
 
FViewElementDrawerDrawer
 
const FIntRect UnscaledViewRect
 
FIntRect UnconstrainedViewRect
 
int32 MaxShadowCascades
 
FViewMatrices ViewMatrices
 
FVector ViewLocation
 
FRotator ViewRotation
 
FQuat BaseHmdOrientation
 
FVector BaseHmdLocation
 
float WorldToMetersScale
 
TOptional< FTransformPreviousViewTransform
 
uint8 ShadowViewMatrices
 
FMatrix ProjectionMatrixUnadjustedForRHI
 
FLinearColor BackgroundColor
 
FLinearColor OverlayColor
 
FLinearColor ColorScale
 
EStereoscopicPass StereoPass
 
int32 StereoViewIndex
 
int32 PrimaryViewIndex
 
bool bAllowCrossGPUTransfer
 
bool bOverrideGPUMask
 
FRHIGPUMask GPUMask
 
bool bRenderFirstInstanceOnly
 
bool bUseFieldOfViewForLOD
 
bool bHMDHiddenAreaMaskActive = false
 
float FOV
 
float DesiredFOV
 
EDrawDynamicFlags::Type DrawDynamicFlags
 
FName CurrentBufferVisualizationMode
 
FName CurrentNaniteVisualizationMode
 
FName CurrentLumenVisualizationMode
 
FName CurrentSubstrateVisualizationMode
 
FName CurrentGroomVisualizationMode
 
FName CurrentVirtualShadowMapVisualizationMode
 
FName CurrentVirtualTextureVisualizationMode
 
FName CurrentVisualizeCalibrationColorMaterialName
 
FName CurrentVisualizeCalibrationGrayscaleMaterialName
 
FName CurrentVisualizeCalibrationCustomMaterialName
 
FName CurrentGPUSkinCacheVisualizationMode
 
FVector4f DiffuseOverrideParameter
 
FVector4f SpecularOverrideParameter
 
FVector4f NormalOverrideParameter
 
FVector2f RoughnessOverrideParameter
 
FVector2f AmbientOcclusionOverrideParameter
 
float MaterialTextureMipBias
 
TSet< FPrimitiveComponentIdHiddenPrimitives
 
TOptional< TSet< FPrimitiveComponentId > > ShowOnlyPrimitives
 
bool bAllowTemporalJitter
 
FConvexVolume ViewFrustum
 
uint8 CullingFrustum
 
bool bHasNearClippingPlane
 
FPlane NearClippingPlane
 
float NearClippingDistance
 
FVector CullingOrigin
 
bool bReverseCulling
 
FVector4f InvDeviceZToWorldZTransform
 
FVector OriginOffsetThisFrame
 
float LODDistanceFactor
 
bool bCameraCut
 
FIntPoint CursorPos
 
bool bIsGameView
 
bool bIsViewInfo
 
class FCustomRenderPassBaseCustomRenderPass = nullptr
 
bool bIsSceneCapture
 
bool bIsSceneCaptureCube
 
bool bEyeAdaptationAllViewPixels
 
bool bSceneCaptureUsesRayTracing
 
bool bIsReflectionCapture
 
bool bIsPlanarReflection
 
bool bIsVirtualTexture
 
bool bIsOfflineRender
 
bool bRenderSceneTwoSided
 
bool bIsLocked
 
bool bStaticSceneOnly
 
bool bIsInstancedStereoEnabled
 
bool bIsMultiViewportEnabled
 
bool bIsMobileMultiViewEnabled
 
bool bShouldBindInstancedViewUB
 
bool bIsSinglePassStereo
 
bool bForceCameraVisibilityReset
 
bool bDisableDistanceBasedFadeTransitions
 
bool bExcludeFromSceneTextureExtents = false
 
bool bForcePathTracerReset
 
int32 PathTracerSeedOffset
 
float UnderwaterDepth
 
EViewWaterIntersection WaterIntersection = EViewWaterIntersection::OutsideWater
 
FPlane GlobalClippingPlane
 
FIntRect CameraConstrainedViewRect
 
FVector TranslucentSortAxis
 
TEnumAsByte< ETranslucentSortPolicy::TypeTranslucentSortPolicy
 
TOptional< uint32OverrideFrameIndexValue
 
TOptional< uint32OverrideOutputFrameIndexValue
 
FVector4f LensPrincipalPointOffsetScale
 
TOptional< boolbCameraMotionBlur
 
TOptional< FMatrixClipToPrevClipOverride
 
FFinalPostProcessSettings FinalPostProcessSettings
 
EAntiAliasingMethod AntiAliasingMethod
 
EPrimaryScreenPercentageMethod PrimaryScreenPercentageMethod
 
FTextureRHIRef AtmosphereTransmittanceTexture
 
FTextureRHIRef AtmosphereIrradianceTexture
 
FTextureRHIRef AtmosphereInscatterTexture
 
FShaderResourceViewRHIRef WaterIndirectionBuffer
 
FShaderResourceViewRHIRef WaterDataBuffer
 
int32 WaterInfoTextureViewIndex = INDEX_NONE
 
TArray< FWaterInfoTextureRenderingParamsWaterInfoTextureRenderingParams
 
FShaderResourceViewRHIRef LandscapeIndirectionBuffer
 
FShaderResourceViewRHIRef LandscapePerComponentDataBuffer
 
bool bEnableDynamicCocOffset = false
 
float InFocusDistance = 0.0
 
FTextureRHIRef DynamicCocOffsetLUT
 
const ERHIFeatureLevel::Type FeatureLevel
 
uint32 InstanceFactor = 1
 
bool bAllowRayTracing = true
 
uint8 ViewLightingChannelMask = FViewLightingChannels::GetMaskDefault()
 
UE::StereoRenderUtils::FStereoShaderAspects Aspects
 
FName CurrentRayTracingDebugVisualizationMode
 

Protected Attributes

const FSceneViewSnapshotOriginView = nullptr
 
FSceneViewStateInterfaceEyeAdaptationViewState = nullptr
 
TUniformBufferRef< FInstancedViewUniformShaderParametersInstancedViewUniformBuffer
 

Friends

class FSceneRenderer
 
class FViewSnapshotCache
 

Detailed Description

A projection from scene space into a 2D screen region.

Constructor & Destructor Documentation

◆ FSceneView() [1/3]

FSceneView::FSceneView ( const FSceneViewInitOptions InitOptions)

Initialization constructor.

◆ FSceneView() [2/3]

PRAGMA_DISABLE_DEPRECATION_WARNINGS FSceneView::FSceneView ( const FSceneView Other)
default

These are only needed because of deprecated members being accessed in them

◆ FSceneView() [3/3]

FSceneView::FSceneView ( FSceneView &&  Other)
default

◆ ~FSceneView()

FSceneView::~FSceneView ( )
virtualdefault

Default destructor

Member Function Documentation

◆ AllowGPUParticleUpdate()

bool FSceneView::AllowGPUParticleUpdate ( ) const
inline

◆ ConfigureBufferVisualizationSettings()

void FSceneView::ConfigureBufferVisualizationSettings ( )

Configure post process settings for the buffer visualization system

◆ ConfigureVisualizeCalibrationSettings()

void FSceneView::ConfigureVisualizeCalibrationSettings ( )

Configure post process settings for calibration material

◆ CursorToScreen()

FVector4 FSceneView::CursorToScreen ( float  X,
float  Y,
float  Z 
) const

Transforms a cursor location in render target pixel coordinates into the view's screen-space, taking into account the viewport rectangle.

◆ Deproject()

FVector FSceneView::Deproject ( const FPlane ScreenPoint) const

Transforms a point from the view's screen-space into world coordinates multiplies X, Y, Z by W before transforming.

◆ DeprojectFVector2D()

void FSceneView::DeprojectFVector2D ( const FVector2D ScreenPos,
FVector out_WorldOrigin,
FVector out_WorldDirection 
) const

Transforms 2D screen coordinates into a 3D world-space origin and direction

Parameters
ScreenPos- screen coordinates in pixels
out_WorldOrigin(out) - world-space origin vector
out_WorldDirection(out) - world-space direction vector

◆ DeprojectScreenToWorld() [1/2]

void FSceneView::DeprojectScreenToWorld ( const FVector2D ScreenPos,
const FIntRect ViewRect,
const FMatrix InvViewMatrix,
const FMatrix InvProjMatrix,
FVector out_WorldOrigin,
FVector out_WorldDirection 
)
static

Transforms 2D screen coordinates into a 3D world-space origin and direction

Parameters
ScreenPos- screen coordinates in pixels
ViewRect- view rectangle
InvViewMatrix- inverse view matrix
InvProjMatrix- inverse projection matrix
out_WorldOrigin(out) - world-space origin vector
out_WorldDirection(out) - world-space direction vector

◆ DeprojectScreenToWorld() [2/2]

void FSceneView::DeprojectScreenToWorld ( const FVector2D ScreenPos,
const FIntRect ViewRect,
const FMatrix InvViewProjMatrix,
FVector out_WorldOrigin,
FVector out_WorldDirection 
)
static

Overload to take a single combined view projection matrix.

◆ EndFinalPostprocessSettings()

void FSceneView::EndFinalPostprocessSettings ( const FSceneViewInitOptions ViewInitOptions)

applied global restrictions from show flags

◆ GetCullingFrustum()

const FConvexVolume & FSceneView::GetCullingFrustum ( ) const
inline

◆ GetDistanceFieldTemporalSampleIndex()

uint32 FSceneView::GetDistanceFieldTemporalSampleIndex ( ) const

returns the distance field temporal sample index or 0 if there is no view state

◆ GetDynamicMeshElementsShadowCullFrustum()

const FConvexVolume * FSceneView::GetDynamicMeshElementsShadowCullFrustum ( ) const
inline

◆ GetEyeAdaptationBuffer()

FRDGPooledBuffer * FSceneView::GetEyeAdaptationBuffer ( ) const

Returns the eye adaptation buffer or null if it doesn't exist.

◆ GetFeatureLevel()

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

Get the feature level for this view (cached from the scene so this is not different per view)

◆ GetInstancedSceneView()

const FSceneView * FSceneView::GetInstancedSceneView ( ) const

Get the first secondary view associated with the primary view.

◆ GetInstancedViewUniformBuffer()

const TUniformBufferRef< FInstancedViewUniformShaderParameters > & FSceneView::GetInstancedViewUniformBuffer ( ) const
inline

Returns uniform buffer that is used to access (first) instanced view's properties. Note: it is not the same as that view's ViewUniformBuffer, albeit it contains all relevant data from it.

◆ GetLastAverageSceneLuminance()

float FSceneView::GetLastAverageSceneLuminance ( ) const

Returns the average luminance or 0.0f if it doesn't exist.

Returns the eye adaptation luminance or 0.0f if it doesn't exist.

◆ GetLastEyeAdaptationExposure()

float FSceneView::GetLastEyeAdaptationExposure ( ) const

Returns the eye adaptation exposure or 0.0f if it doesn't exist.

◆ GetOcclusionFrameCounter()

uint32 FSceneView::GetOcclusionFrameCounter ( ) const

returns a the occlusion frame counter or MAX_uint32 if there is no view state

◆ GetOverwriteLoadAction()

ERenderTargetLoadAction FSceneView::GetOverwriteLoadAction ( ) const
inline

Returns the load action to use when overwriting all pixels of a target that you intend to read from. Takes into account the HMD hidden area mesh.

◆ GetPreShadowTranslation()

const FVector & FSceneView::GetPreShadowTranslation ( ) const
inline

◆ GetPrimarySceneView()

const FSceneView * FSceneView::GetPrimarySceneView ( ) const

Get the primary view associated with the secondary view.

◆ GetScreenPositionScaleBias()

FVector4f FSceneView::GetScreenPositionScaleBias ( const FIntPoint BufferSize,
const FIntRect ViewRect 
)
static

◆ GetSecondaryViews()

TArray< const FSceneView * > FSceneView::GetSecondaryViews ( ) const

Get all secondary views associated with the primary view.

◆ GetShaderPlatform()

EShaderPlatform FSceneView::GetShaderPlatform ( ) const

Get the feature level for this view

◆ GetShadowViewMatrices()

const FViewMatrices & FSceneView::GetShadowViewMatrices ( ) const

◆ GetSnapshotOriginView()

const FSceneView * FSceneView::GetSnapshotOriginView ( ) const
inline

◆ GetStereoPassInstanceFactor()

int32 FSceneView::GetStereoPassInstanceFactor ( ) const
inline

Instance factor for a stereo pass (normally 2 for ISR views, but see IStereoRendering::GetDesiredNumberOfViews()). Returns 1 for non-instanced stereo views or regular (split screen etc) views.

◆ GetTemporalLODOrigin()

FVector FSceneView::GetTemporalLODOrigin ( int32  Index,
bool  bUseLaggedLODTransition = true 
) const

Returns the location used as the origin for LOD computations

Parameters
Index,0or 1, which LOD origin to return
Returns
LOD origin

◆ GetTemporalLODTransition()

float FSceneView::GetTemporalLODTransition ( ) const

Returns the blend factor between the last two LOD samples

◆ GetViewDirection()

FVector FSceneView::GetViewDirection ( ) const
inline

◆ GetViewKey()

uint32 FSceneView::GetViewKey ( ) const

returns a unique key for the view state if one exists, otherwise returns zero

◆ GetViewRight()

FVector FSceneView::GetViewRight ( ) const
inline

◆ GetViewUp()

FVector FSceneView::GetViewUp ( ) const
inline

◆ HasEyeAdaptationViewState()

bool FSceneView::HasEyeAdaptationViewState ( ) const
inline

◆ HasValidEyeAdaptationBuffer()

bool FSceneView::HasValidEyeAdaptationBuffer ( ) const

Tells if the eye adaptation buffer exists without attempting to allocate it.

◆ IsInstancedSceneView()

bool FSceneView::IsInstancedSceneView ( ) const
inline

Checks whether this is the instanced view of a stereo pair. If the technique supports instanced rendering stereo and ISR is enabled, such views can be skipped.

◆ IsInstancedStereoPass()

bool FSceneView::IsInstancedStereoPass ( ) const

True if the view should render as an instanced stereo pass

◆ IsPerspectiveProjection()

bool FSceneView::IsPerspectiveProjection ( ) const
inline
Returns
true:perspective, false:orthographic

◆ IsPrimarySceneView()

bool FSceneView::IsPrimarySceneView ( ) const
inline

Checks whether this is the primary view of a stereo pair (important in instanced stereo rendering). Will also be true for any view that isn't stereo.

◆ IsRayTracingAllowedForView()

bool FSceneView::IsRayTracingAllowedForView ( ) const
inline

◆ IsUnderwater()

bool FSceneView::IsUnderwater ( ) const
inline

◆ OverridePostProcessSettings()

void FSceneView::OverridePostProcessSettings ( const FPostProcessSettings Src,
float  Weight 
)

custom layers can be combined with the existing settings

Parameters
Weightusually 0..1 but outside range is clamped

◆ PixelToScreen()

FVector4 FSceneView::PixelToScreen ( float  X,
float  Y,
float  Z 
) const

Transforms a point from pixel coordinates relative to the view's X,Y (left, top) into the view's screen-space.

◆ PixelToWorld()

FVector4 FSceneView::PixelToWorld ( float  X,
float  Y,
float  Z 
) const

Transforms a point from pixel coordinates relative to the view's X,Y (left, top) into the view's world-space.

◆ Project()

FPlane FSceneView::Project ( const FVector WorldPoint) const

Transforms a point from the view's world-space into the view's screen-space. Divides the resulting X, Y, Z by W before returning.

◆ ProjectWorldToScreen()

bool FSceneView::ProjectWorldToScreen ( const FVector WorldPosition,
const FIntRect ViewRect,
const FMatrix ViewProjectionMatrix,
FVector2D out_ScreenPos,
bool  bShouldCalcOutsideViewPosition = false 
)
static

Transforms 3D world-space origin into 2D screen coordinates

Parameters
WorldPosition- the 3d world point to transform
ViewRect- view rectangle
ViewProjectionMatrix- combined view projection matrix
out_ScreenPos(out) - screen coordinates in pixels
bShouldCalcOutsideViewPosition- if enabled, calculates the out_ScreenPos if the WorldPosition is outside of ViewProjectionMatrix

◆ ScreenToPixel()

bool FSceneView::ScreenToPixel ( const FVector4 ScreenPoint,
FVector2D OutPixelLocation 
) const

Transforms a point from the view's screen-space into pixel coordinates relative to the view's X,Y.

◆ ScreenToWorld()

FVector FSceneView::ScreenToWorld ( const FVector4 ScreenPoint) const

Transforms a point from the view's screen-space to world-space.

◆ SetDynamicMeshElementsShadowCullFrustum()

void FSceneView::SetDynamicMeshElementsShadowCullFrustum ( const FConvexVolume InDynamicMeshElementsShadowCullFrustum)
inline

◆ SetPreShadowTranslation()

void FSceneView::SetPreShadowTranslation ( const FVector InPreShadowTranslation)
inline

◆ SetupAntiAliasingMethod()

void FSceneView::SetupAntiAliasingMethod ( )

◆ SetupCommonViewUniformBufferParameters()

void FSceneView::SetupCommonViewUniformBufferParameters ( FViewUniformShaderParameters ViewUniformShaderParameters,
const FIntPoint InBufferSize,
int32  NumMSAASamples,
const FIntRect InEffectiveViewRect,
const FViewMatrices InViewMatrices,
const FViewMatrices InPrevViewMatrices 
) const

Populates the uniform buffer prameters common to all scene view use cases View parameters should be set up in this method if they are required for the view to render properly. This is to avoid code duplication and uninitialized parameters in other places that create view uniform parameters (e.g Slate)

◆ SetupViewRectUniformBufferParameters()

void FSceneView::SetupViewRectUniformBufferParameters ( FViewUniformShaderParameters ViewUniformShaderParameters,
const FIntPoint InBufferSize,
const FIntRect InEffectiveViewRect,
const FViewMatrices InViewMatrices,
const FViewMatrices InPrevViewMatrice 
) const

Sets up the view rect parameters in the view's uniform shader parameters

◆ StartFinalPostprocessSettings()

void FSceneView::StartFinalPostprocessSettings ( FVector  InViewLocation)

Setup defaults and depending on view position (postprocess volumes)

◆ UpdatePlanarReflectionViewMatrix()

void FSceneView::UpdatePlanarReflectionViewMatrix ( const FSceneView SourceView,
const FMirrorMatrix MirrorMatrix 
)

If we late update a view, we need to also late update any planar reflection views derived from it

◆ UpdateProjectionMatrix()

void FSceneView::UpdateProjectionMatrix ( const FMatrix NewProjectionMatrix)

◆ UpdateViewMatrix()

void FSceneView::UpdateViewMatrix ( )

Allow things like HMD displays to update the view matrix at the last minute, to minimize perceived latency

◆ WorldToPixel()

bool FSceneView::WorldToPixel ( const FVector WorldPoint,
FVector2D OutPixelLocation 
) const

Transforms a point from the view's world-space into pixel coordinates relative to the view's X,Y (left, top).

Transforms a point from the view's world-space into pixel coordinates relative to the view's X,Y.

◆ WorldToScreen()

FVector4 FSceneView::WorldToScreen ( const FVector WorldPoint) const

Transforms a point from world-space to the view's screen-space.

Friends And Related Symbol Documentation

◆ FSceneRenderer

friend class FSceneRenderer
friend

◆ FViewSnapshotCache

friend class FViewSnapshotCache
friend

Member Data Documentation

◆ AmbientOcclusionOverrideParameter

FVector2f FSceneView::AmbientOcclusionOverrideParameter

◆ AntiAliasingMethod

EAntiAliasingMethod FSceneView::AntiAliasingMethod

◆ Aspects

Stereo aspects of the shader pipeline based on this view's shader platform

◆ AtmosphereInscatterTexture

FTextureRHIRef FSceneView::AtmosphereInscatterTexture

◆ AtmosphereIrradianceTexture

FTextureRHIRef FSceneView::AtmosphereIrradianceTexture

◆ AtmosphereTransmittanceTexture

FTextureRHIRef FSceneView::AtmosphereTransmittanceTexture

Parameters for atmospheric fog.

◆ BackgroundColor

FLinearColor FSceneView::BackgroundColor

◆ bAllowCrossGPUTransfer

bool FSceneView::bAllowCrossGPUTransfer

Allow cross GPU transfer for this view

◆ bAllowRayTracing

bool FSceneView::bAllowRayTracing = true

Set to false to disable ray tracing on this view. Use IsRayTracingAllowedForView() function to test for ray tracing, not this bool.

◆ bAllowTemporalJitter

bool FSceneView::bAllowTemporalJitter

◆ BaseHmdLocation

FVector FSceneView::BaseHmdLocation

◆ BaseHmdOrientation

FQuat FSceneView::BaseHmdOrientation

◆ bCameraCut

bool FSceneView::bCameraCut

Whether we did a camera cut for this view this frame.

◆ bCameraMotionBlur

TOptional<bool> FSceneView::bCameraMotionBlur

Whether to enable motion blur caused by camera movements

◆ bDisableDistanceBasedFadeTransitions

bool FSceneView::bDisableDistanceBasedFadeTransitions

Whether we should disable distance-based fade transitions for this frame (usually after a large camera movement.)

◆ bEnableDynamicCocOffset

bool FSceneView::bEnableDynamicCocOffset = false

Enables a CoC offset whose offset value changes with pixel's scene depth

◆ bExcludeFromSceneTextureExtents

bool FSceneView::bExcludeFromSceneTextureExtents = false

Whether this view should be excluded from extent history tracking.

◆ bEyeAdaptationAllViewPixels

bool FSceneView::bEyeAdaptationAllViewPixels

Whether to generate histogram eye adaptation from all view pixels, useful with a shared EyeAdaptationViewState. Pixels for views must form a contiguous rect.

◆ bForceCameraVisibilityReset

bool FSceneView::bForceCameraVisibilityReset

True if we need to force the camera to discard previous frames occlusion. Necessary for overlapped tile rendering where we discard previous frame occlusion because the projection matrix changes.

◆ bForcePathTracerReset

bool FSceneView::bForcePathTracerReset

True if we should force the path tracer to reset its internal accumulation state

◆ bHasNearClippingPlane

bool FSceneView::bHasNearClippingPlane

◆ bHMDHiddenAreaMaskActive

bool FSceneView::bHMDHiddenAreaMaskActive = false

◆ bIsGameView

bool FSceneView::bIsGameView

True if this scene was created from a game world.

◆ bIsInstancedStereoEnabled

bool FSceneView::bIsInstancedStereoEnabled

True if instanced stereo is enabled.

◆ bIsLocked

bool FSceneView::bIsLocked

Whether this view was created from a locked viewpoint.

◆ bIsMobileMultiViewEnabled

bool FSceneView::bIsMobileMultiViewEnabled

True if mobile multi-view is enabled.

◆ bIsMultiViewportEnabled

bool FSceneView::bIsMultiViewportEnabled

True if multi-viewport instanced stereo rendering is enabled.

◆ bIsOfflineRender

bool FSceneView::bIsOfflineRender

Whether this view is being used to render a high quality offline render

◆ bIsPlanarReflection

bool FSceneView::bIsPlanarReflection

Whether this view is being used to render a planar reflection.

◆ bIsReflectionCapture

bool FSceneView::bIsReflectionCapture

Whether this view is being used to render a reflection capture.

◆ bIsSceneCapture

bool FSceneView::bIsSceneCapture

Whether this view is being used to render a scene capture.

◆ bIsSceneCaptureCube

bool FSceneView::bIsSceneCaptureCube

Whether the scene capture is a cube map (bIsSceneCapture will also be set).

◆ bIsSinglePassStereo

bool FSceneView::bIsSinglePassStereo

True if any single-pass stereo mechanism is enabled (mobile multi view, instanced stereo multi-layer, or instanced stereo multi-viewport). Not related to the deprecated NVidia feature known as Single-Pass Stereo.

◆ bIsViewInfo

bool FSceneView::bIsViewInfo

For sanity checking casts that are assumed to be safe.

◆ bIsVirtualTexture

bool FSceneView::bIsVirtualTexture

Whether this view is being used to render a runtime virtual texture.

◆ bOverrideGPUMask

bool FSceneView::bOverrideGPUMask

Use custom GPUmask

◆ bRenderFirstInstanceOnly

bool FSceneView::bRenderFirstInstanceOnly

Whether this view should render the first instance only of any meshes using instancing.

◆ bRenderSceneTwoSided

bool FSceneView::bRenderSceneTwoSided

Whether to force two sided rendering for this view.

◆ bReverseCulling

bool FSceneView::bReverseCulling

true if ViewMatrix.Determinant() is negative.

◆ bSceneCaptureUsesRayTracing

bool FSceneView::bSceneCaptureUsesRayTracing

Whether this view may use ray tracing, for views that are used to render a scene capture. Use IsRayTracingAllowedForView() to test for ray tracing, not this bool. Filled in based on the bUseRayTracingIfEnabled field in the scene capture component and r.RayTracing.SceneCaptures CVar (-1 == use value from component, 0 == disable globally, 1 == enable globally).

◆ bShouldBindInstancedViewUB

bool FSceneView::bShouldBindInstancedViewUB

True if we need to bind the instanced view uniform buffer parameters.

◆ bStaticSceneOnly

bool FSceneView::bStaticSceneOnly

Whether to only render static lights and objects.
This is used when capturing the scene for reflection captures, which aren't updated at runtime.

◆ bUseFieldOfViewForLOD

bool FSceneView::bUseFieldOfViewForLOD

◆ CameraConstrainedViewRect

FIntRect FSceneView::CameraConstrainedViewRect

Aspect ratio constrained view rect. In the editor, when attached to a camera actor and the camera black bar showflag is enabled, the normal viewrect remains as the full viewport, and the black bars are just simulated by drawing black bars. This member stores the effective constrained area within the bars.

◆ ClipToPrevClipOverride

TOptional<FMatrix> FSceneView::ClipToPrevClipOverride

Matrix overrides PrevViewToClip in the view uniform buffer. Used for replacing motion blur caused by the current camera movements with a custom transform.

◆ ColorScale

FLinearColor FSceneView::ColorScale

Color scale multiplier used during post processing

◆ CullingFrustum

uint8 FSceneView::CullingFrustum

◆ CullingOrigin

FVector FSceneView::CullingOrigin

Monoscopic culling origin, same as the view matrix origin in case of non-stereo

◆ CurrentBufferVisualizationMode

FName FSceneView::CurrentBufferVisualizationMode

Current buffer visualization mode

◆ CurrentGPUSkinCacheVisualizationMode

FName FSceneView::CurrentGPUSkinCacheVisualizationMode

Current GPU Skin Cache visualization mode

◆ CurrentGroomVisualizationMode

FName FSceneView::CurrentGroomVisualizationMode

Current Groom visualization mode

◆ CurrentLumenVisualizationMode

FName FSceneView::CurrentLumenVisualizationMode

Current Lumen visualization mode

◆ CurrentNaniteVisualizationMode

FName FSceneView::CurrentNaniteVisualizationMode

Current Nanite visualization mode

◆ CurrentRayTracingDebugVisualizationMode

FName FSceneView::CurrentRayTracingDebugVisualizationMode

Current ray tracing debug visualization mode

◆ CurrentSubstrateVisualizationMode

FName FSceneView::CurrentSubstrateVisualizationMode

Current Substrate visualization mode

◆ CurrentVirtualShadowMapVisualizationMode

FName FSceneView::CurrentVirtualShadowMapVisualizationMode

Current Virtual Shadow Map visualization mode

◆ CurrentVirtualTextureVisualizationMode

FName FSceneView::CurrentVirtualTextureVisualizationMode

Current Virtual Texture visualization mode

◆ CurrentVisualizeCalibrationColorMaterialName

FName FSceneView::CurrentVisualizeCalibrationColorMaterialName

Current visualize calibration color material name

◆ CurrentVisualizeCalibrationCustomMaterialName

FName FSceneView::CurrentVisualizeCalibrationCustomMaterialName

Current visualize calibration custom material name

◆ CurrentVisualizeCalibrationGrayscaleMaterialName

FName FSceneView::CurrentVisualizeCalibrationGrayscaleMaterialName

Current visualize calibration grayscale material name

◆ CursorPos

FIntPoint FSceneView::CursorPos

◆ CustomRenderPass

class FCustomRenderPassBase* FSceneView::CustomRenderPass = nullptr

◆ DesiredFOV

float FSceneView::DesiredFOV

◆ DiffuseOverrideParameter

FVector4f FSceneView::DiffuseOverrideParameter

These can be used to override material parameters across the scene without recompiling shaders. The last component is how much to include of the material's value for that parameter, so 0 will completely remove the material's value.

◆ DrawDynamicFlags

EDrawDynamicFlags::Type FSceneView::DrawDynamicFlags

◆ Drawer

FViewElementDrawer* FSceneView::Drawer

An interaction which draws the view's interaction elements.

◆ DynamicCocOffsetLUT

FTextureRHIRef FSceneView::DynamicCocOffsetLUT

Lookup table for the dynamic CoC offset

◆ EyeAdaptationViewState

FSceneViewStateInterface* FSceneView::EyeAdaptationViewState = nullptr
protected

◆ Family

const FSceneViewFamily* FSceneView::Family

◆ FeatureLevel

const ERHIFeatureLevel::Type FSceneView::FeatureLevel

Feature level for this scene

◆ FinalPostProcessSettings

FFinalPostProcessSettings FSceneView::FinalPostProcessSettings

The final settings for the current viewer position (blended together from many volumes). Setup by the main thread, passed to the render thread and never touched again by the main thread.

◆ FOV

float FSceneView::FOV

Actual field of view and that desired by the camera originally

◆ GlobalClippingPlane

FPlane FSceneView::GlobalClippingPlane

Global clipping plane being applied to the scene, or all 0's if disabled. This is used when rendering the planar reflection pass.

◆ GPUMask

FRHIGPUMask FSceneView::GPUMask

The GPU nodes on which to render this view.

◆ HiddenPrimitives

TSet<FPrimitiveComponentId> FSceneView::HiddenPrimitives

The primitives which are hidden for this view.

◆ InFocusDistance

float FSceneView::InFocusDistance = 0.0

When dynamic CoC offset is enabled, this is the distance from camera at which objects will be in perfect focus (when the CoC offset is maximum so that the final CoC is 0)

◆ InstancedViewUniformBuffer

TUniformBufferRef<FInstancedViewUniformShaderParameters> FSceneView::InstancedViewUniformBuffer
protected

Instanced view uniform buffer held on the primary view.

◆ InstanceFactor

uint32 FSceneView::InstanceFactor = 1

When using mobile multi view fallback path we need to instance draw calls ourselves to cover both eyes instead of letting the drivers do it for us.

◆ InvDeviceZToWorldZTransform

FVector4f FSceneView::InvDeviceZToWorldZTransform

◆ LandscapeIndirectionBuffer

FShaderResourceViewRHIRef FSceneView::LandscapeIndirectionBuffer

Landscape rendering related data

◆ LandscapePerComponentDataBuffer

FShaderResourceViewRHIRef FSceneView::LandscapePerComponentDataBuffer

◆ LensPrincipalPointOffsetScale

FVector4f FSceneView::LensPrincipalPointOffsetScale

In some cases, the principal point of the lens is not at the center of the screen, especially for overlapped tile rendering. So given a UV in [-1,1] viewport space, convert it to the [-1,1] viewport space of the lens using LensUV = LensPrincipalPointOffsetScale.xy ScreenUV * LensPrincipalPointOffsetScale.zw; This value is FVector4(0,0,1,1) unless overridden.

◆ LODDistanceFactor

float FSceneView::LODDistanceFactor

Multiplier for cull distance on objects

◆ MaterialTextureMipBias

float FSceneView::MaterialTextureMipBias

Mip bias to apply in material's samplers.

◆ MaxShadowCascades

int32 FSceneView::MaxShadowCascades

Maximum number of shadow cascades to render with.

◆ NearClippingDistance

float FSceneView::NearClippingDistance

◆ NearClippingPlane

FPlane FSceneView::NearClippingPlane

◆ NormalOverrideParameter

FVector4f FSceneView::NormalOverrideParameter

◆ OriginOffsetThisFrame

FVector FSceneView::OriginOffsetThisFrame

World origin offset value. Non-zero only for a single frame when origin is rebased

◆ OverlayColor

FLinearColor FSceneView::OverlayColor

◆ OverrideFrameIndexValue

TOptional<uint32> FSceneView::OverrideFrameIndexValue

The frame index to override, useful for keeping determinism when rendering sequences.

◆ OverrideOutputFrameIndexValue

TOptional<uint32> FSceneView::OverrideOutputFrameIndexValue

If set, overrides the Output Frame Index. Useful for Halton-like offsets that should produce the same results in multi-sample accumulation when rendering sequences. If unset, renderer defaults to FrameIndex.

◆ PathTracerSeedOffset

int32 FSceneView::PathTracerSeedOffset

Sets an offset to the seed the path tracer is using.

◆ PlayerIndex

int32 FSceneView::PlayerIndex

Player index this view is associated with or INDEX_NONE.

◆ PreviousViewTransform

TOptional<FTransform> FSceneView::PreviousViewTransform

◆ PrimaryScreenPercentageMethod

EPrimaryScreenPercentageMethod FSceneView::PrimaryScreenPercentageMethod

◆ PrimaryViewIndex

int32 FSceneView::PrimaryViewIndex

For stereoscopic rendering, view family index of the primary view associated with this view

◆ ProjectionMatrixUnadjustedForRHI

FMatrix FSceneView::ProjectionMatrixUnadjustedForRHI

◆ RoughnessOverrideParameter

FVector2f FSceneView::RoughnessOverrideParameter

◆ SceneViewInitOptions

FSceneViewInitOptions FSceneView::SceneViewInitOptions

◆ ShadowViewMatrices

uint8 FSceneView::ShadowViewMatrices

◆ ShowOnlyPrimitives

TOptional<TSet<FPrimitiveComponentId> > FSceneView::ShowOnlyPrimitives

The primitives which are visible for this view. If the array is not empty, all other primitives will be hidden.

◆ SnapshotOriginView

const FSceneView* FSceneView::SnapshotOriginView = nullptr
protected

Some views get cloned for certain renders, like shadows (see FViewInfo::CreateSnapshot()). If that's the case, this will point to the view this one originates from

◆ SpecularOverrideParameter

FVector4f FSceneView::SpecularOverrideParameter

◆ State

FSceneViewStateInterface* FSceneView::State

can be 0 (thumbnail rendering)

◆ StereoPass

EStereoscopicPass FSceneView::StereoPass

For stereoscopic rendering, whether or not this is a full pass, or a left / right eye pass

◆ StereoViewIndex

int32 FSceneView::StereoViewIndex

For stereoscopic rendering, unique index identifying the view across view families

◆ TranslucentSortAxis

FVector FSceneView::TranslucentSortAxis

Sort axis for when TranslucentSortPolicy is SortAlongAxis

◆ TranslucentSortPolicy

TEnumAsByte<ETranslucentSortPolicy::Type> FSceneView::TranslucentSortPolicy

Translucent sort mode

◆ UnconstrainedViewRect

FIntRect FSceneView::UnconstrainedViewRect

◆ UnderwaterDepth

float FSceneView::UnderwaterDepth

How far below the water surface this view is. -1 means the view is out of water.

◆ UnscaledViewRect

const FIntRect FSceneView::UnscaledViewRect

◆ ViewActor

FSceneViewOwner FSceneView::ViewActor

The actor which is being viewed from.

◆ ViewFrustum

FConvexVolume FSceneView::ViewFrustum

◆ ViewLightingChannelMask

uint8 FSceneView::ViewLightingChannelMask = FViewLightingChannels::GetMaskDefault()

View light masking support. Some systems assume the same mask setting for all views within a family, with potential artifacts if views use different masks.

◆ ViewLocation

FVector FSceneView::ViewLocation

Variables used to determine the view matrix

◆ ViewMatrices

FViewMatrices FSceneView::ViewMatrices

◆ ViewRotation

FRotator FSceneView::ViewRotation

◆ ViewUniformBuffer

TUniformBufferRef<FViewUniformShaderParameters> FSceneView::ViewUniformBuffer

The uniform buffer for the view's parameters. This is only initialized in the rendering thread's copies of the FSceneView.

◆ WaterDataBuffer

FShaderResourceViewRHIRef FSceneView::WaterDataBuffer

◆ WaterIndirectionBuffer

FShaderResourceViewRHIRef FSceneView::WaterIndirectionBuffer

Water rendering related data

◆ WaterInfoTextureRenderingParams

TArray<FWaterInfoTextureRenderingParams> FSceneView::WaterInfoTextureRenderingParams

◆ WaterInfoTextureViewIndex

int32 FSceneView::WaterInfoTextureViewIndex = INDEX_NONE

Index of the water info texture slice corresponding to this view.

◆ WaterIntersection

Whether the view intersects water.

◆ WorldToMetersScale

float FSceneView::WorldToMetersScale

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