Navigation
API > API/Runtime > API/Runtime/Engine
A projection from scene space into a 2D screen region.
| Name | FSceneView |
| Type | class |
| Header File | /Engine/Source/Runtime/Engine/Public/SceneView.h |
| Include Path | #include "SceneView.h" |
Syntax
class FSceneView : public FSceneViewFixLayout
Inheritance Hierarchy
- FSceneViewFixLayout → FSceneView
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FSceneView
(
const FSceneViewInitOptions& InitOptions |
Initialization constructor. | SceneView.h | |
PRAGMA_DISABLE_DEPRECATION_WARNINGS FSceneView
(
const FSceneView& Other |
These are only needed because of deprecated members being accessed in them | SceneView.h | |
FSceneView
(
FSceneView&& Other |
SceneView.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FSceneView() |
Default destructor | SceneView.h |
Structs
| Name | Remarks |
|---|---|
| FWaterInfoTextureRenderingParams |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| AdditionalSelectionOutlineColors | TStaticArray< FLinearColor, 6 > | Additional selection colors for the editor (used by post processing) | SceneView.h | |
| AmbientOcclusionOverrideParameter | FVector2f | SceneView.h | ||
| AntiAliasingMethod | EAntiAliasingMethod | The antialiasing method. | SceneView.h | |
| Aspects | UE::StereoRenderUtils::FStereoShaderAspects | Stereo aspects of the shader pipeline based on this view's shader platform | SceneView.h | |
| AtmosphereInscatterTexture | FTextureRHIRef | SceneView.h | ||
| AtmosphereIrradianceTexture | FTextureRHIRef | SceneView.h | ||
| AtmosphereTransmittanceTexture | FTextureRHIRef | Parameters for atmospheric fog. | SceneView.h | |
| BackgroundColor | FLinearColor | SceneView.h | ||
| bAllowCrossGPUTransfer | bool | Allow cross GPU transfer for this view | SceneView.h | |
| bAllowRayTracing | bool | Set to false to disable ray tracing on this view. | SceneView.h | |
| bAllowTemporalJitter | bool | SceneView.h | ||
| bAllowTranslucentPrimitivesInHitProxy | bool | True if we should draw translucent objects when rendering hit proxies | SceneView.h | |
| BaseHmdLocation | FVector | SceneView.h | ||
| BaseHmdOrientation | FQuat | SceneView.h | ||
| bCameraCut | bool | Whether we did a camera cut for this view this frame. | SceneView.h | |
| bCameraMotionBlur | TOptional< bool > | Whether to enable motion blur caused by camera movements | SceneView.h | |
| bDisableDistanceBasedFadeTransitions | bool | Whether we should disable distance-based fade transitions for this frame (usually after a large camera movement.) | SceneView.h | |
| bEnableDynamicCocOffset | bool | Enables a CoC offset whose offset value changes with pixel's scene depth | SceneView.h | |
| bExcludeFromSceneTextureExtents | bool | Whether this view should be excluded from extent history tracking. | SceneView.h | |
| bEyeAdaptationAllViewPixels | bool | Whether to generate histogram eye adaptation from all view pixels, useful with a shared EyeAdaptationViewState. | SceneView.h | |
| bForceCameraVisibilityReset | bool | True if we need to force the camera to discard previous frames occlusion. | SceneView.h | |
| bForcePathTracerReset | bool | True if we should force the path tracer to reset its internal accumulation state | SceneView.h | |
| bHasNearClippingPlane | bool | SceneView.h | ||
| bHasSelectedComponents | bool | True if any components are selected in isolation (independent of actor selection) | SceneView.h | |
| bHMDHiddenAreaMaskActive | bool | Whether this view should use an HMD hidden area mask where appropriate. | SceneView.h | |
| bIsGameView | bool | True if this scene was created from a game world. | SceneView.h | |
| bIsInstancedStereoEnabled | bool | True if instanced stereo is enabled. | SceneView.h | |
| bIsLocked | bool | Whether this view was created from a locked viewpoint. | SceneView.h | |
| bIsMobileMultiViewEnabled | bool | True if mobile multi-view is enabled. | SceneView.h | |
| bIsMultiViewportEnabled | bool | True if multi-viewport instanced stereo rendering is enabled. | SceneView.h | |
| bIsOfflineRender | bool | Whether this view is being used to render a high quality offline render | SceneView.h | |
| bIsPlanarReflection | bool | Whether this view is being used to render a planar reflection. | SceneView.h | |
| bIsReflectionCapture | bool | Whether this view is being used to render a reflection capture. | SceneView.h | |
| bIsSceneCapture | bool | Whether this view is being used to render a scene capture. | SceneView.h | |
| bIsSceneCaptureCube | bool | Whether the scene capture is a cube map (bIsSceneCapture will also be set). | SceneView.h | |
| bIsSinglePassStereo | bool | True if any single-pass stereo mechanism is enabled (mobile multi view, instanced stereo multi-layer, or instanced stereo multi-viewport). | SceneView.h | |
| bIsViewInfo | bool | For sanity checking casts that are assumed to be safe. | SceneView.h | |
| bIsVirtualTexture | bool | Whether this view is being used to render a runtime virtual texture. | SceneView.h | |
| bOverrideGPUMask | bool | Use custom GPUmask | SceneView.h | |
| bRenderFirstInstanceOnly | bool | Whether this view should render the first instance only of any meshes using instancing. | SceneView.h | |
| bRenderSceneTwoSided | bool | Whether to force two sided rendering for this view. | SceneView.h | |
| bReverseCulling | bool | True if ViewMatrix.Determinant() is negative. | SceneView.h | |
| bSceneCaptureUsesRayTracing | bool | Whether this view may use ray tracing, for views that are used to render a scene capture. | SceneView.h | |
| bShouldBindInstancedViewUB | bool | True if we need to bind the instanced view uniform buffer parameters. | SceneView.h | |
| bStaticSceneOnly | bool | Whether to only render static lights and objects. | SceneView.h | |
| bUseFieldOfViewForLOD | bool | Whether to use FOV when computing mesh LOD. | SceneView.h | |
| bUsePixelInspector | bool | Whether to use the pixel inspector | SceneView.h | |
| CameraConstrainedViewRect | FIntRect | Aspect ratio constrained view rect. | SceneView.h | |
| ClipToPrevClipOverride | TOptional< FMatrix > | Matrix overrides PrevViewToClip in the view uniform buffer. | SceneView.h | |
| ColorScale | FLinearColor | Color scale multiplier used during post processing | SceneView.h | |
| CullingFrustum | uint8 | SceneView.h | ||
| CullingOrigin | FVector | Monoscopic culling origin, same as the view matrix origin in case of non-stereo | SceneView.h | |
| CurrentBufferVisualizationMode | FName | Current buffer visualization mode | SceneView.h | |
| CurrentGPUSkinCacheVisualizationMode | FName | Current GPU Skin Cache visualization mode | SceneView.h | |
| CurrentGroomVisualizationMode | FName | Current Groom visualization mode | SceneView.h | |
| CurrentLumenVisualizationMode | FName | Current Lumen visualization mode | SceneView.h | |
| CurrentNaniteVisualizationMode | FName | Current Nanite visualization mode | SceneView.h | |
| CurrentRayTracingDebugVisualizationMode | FName | Current ray tracing debug visualization mode | SceneView.h | |
| CurrentSubstrateVisualizationMode | FName | Current Substrate visualization mode | SceneView.h | |
| CurrentVirtualShadowMapVisualizationMode | FName | Current Virtual Shadow Map visualization mode | SceneView.h | |
| CurrentVirtualTextureVisualizationMode | FName | Current Virtual Texture visualization mode | SceneView.h | |
| CurrentVisualizeCalibrationColorMaterialName | FName | Current visualize calibration color material name | SceneView.h | |
| CurrentVisualizeCalibrationCustomMaterialName | FName | Current visualize calibration custom material name | SceneView.h | |
| CurrentVisualizeCalibrationGrayscaleMaterialName | FName | Current visualize calibration grayscale material name | SceneView.h | |
| CursorPos | FIntPoint | -1,-1 if not setup | SceneView.h | |
| CustomRenderPass | FCustomRenderPassBase * | SceneView.h | ||
| DesiredFOV | float | SceneView.h | ||
| DiffuseOverrideParameter | FVector4f | These can be used to override material parameters across the scene without recompiling shaders. | SceneView.h | |
| DrawDynamicFlags | EDrawDynamicFlags::Type | SceneView.h | ||
| Drawer | FViewElementDrawer * | An interaction which draws the view's interaction elements. | SceneView.h | |
| DynamicCocOffsetLUT | FTextureRHIRef | Lookup table for the dynamic CoC offset | SceneView.h | |
| EditorViewBitflag | uint64 | The set of (the first 64) groups' visibility info for this view | SceneView.h | |
| Family | const FSceneViewFamily * | SceneView.h | ||
| FeatureLevel | const ERHIFeatureLevel::Type | Feature level for this scene | SceneView.h | |
| FinalPostProcessSettings | FFinalPostProcessSettings | The final settings for the current viewer position (blended together from many volumes). | SceneView.h | |
| FOV | float | Actual field of view and that desired by the camera originally | SceneView.h | |
| GlobalClippingPlane | FPlane | Global clipping plane being applied to the scene, or all 0's if disabled. | SceneView.h | |
| GPUMask | FRHIGPUMask | The GPU nodes on which to render this view. | SceneView.h | |
| HiddenPrimitives | TSet< FPrimitiveComponentId > | The primitives which are hidden for this view. | SceneView.h | |
| InFocusDistance | float | 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) | SceneView.h | |
| InstanceFactor | uint32 | 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. | SceneView.h | |
| InvDeviceZToWorldZTransform | FVector4f | Vector used by shaders to convert depth buffer samples into z coordinates in world space | SceneView.h | |
| LandscapeIndirectionBuffer | FShaderResourceViewRHIRef | Landscape rendering related data | SceneView.h | |
| LandscapePerComponentDataBuffer | FShaderResourceViewRHIRef | SceneView.h | ||
| LensPrincipalPointOffsetScale | FVector4f | In some cases, the principal point of the lens is not at the center of the screen, especially for overlapped tile rendering. | SceneView.h | |
| LODDistanceFactor | float | Multiplier for cull distance on objects | SceneView.h | |
| MaterialTextureMipBias | float | Mip bias to apply in material's samplers. | SceneView.h | |
| MaxShadowCascades | int32 | Maximum number of shadow cascades to render with. | SceneView.h | |
| NearClippingDistance | float | SceneView.h | ||
| NearClippingPlane | FPlane | SceneView.h | ||
| NormalOverrideParameter | FVector4f | SceneView.h | ||
| OriginOffsetThisFrame | FVector | World origin offset value. Non-zero only for a single frame when origin is rebased | SceneView.h | |
| OverlayColor | FLinearColor | SceneView.h | ||
| OverrideFrameIndexValue | TOptional< uint32 > | The frame index to override, useful for keeping determinism when rendering sequences. | SceneView.h | |
| OverrideOutputFrameIndexValue | TOptional< uint32 > | If set, overrides the Output Frame Index. | SceneView.h | |
| PathTracerSeedOffset | int32 | Sets an offset to the seed the path tracer is using. | SceneView.h | |
| PlayerIndex | int32 | Player index this view is associated with or INDEX_NONE. | SceneView.h | |
| PreviousViewTransform | TOptional< FTransform > | SceneView.h | ||
| PrimaryScreenPercentageMethod | EPrimaryScreenPercentageMethod | Primary screen percentage method to use. | SceneView.h | |
| PrimaryViewIndex | int32 | For stereoscopic rendering, view family index of the primary view associated with this view | SceneView.h | |
| ProjectionMatrixUnadjustedForRHI | FMatrix | SceneView.h | ||
| RoughnessOverrideParameter | FVector2f | SceneView.h | ||
| SceneViewInitOptions | FSceneViewInitOptions | SceneView.h | ||
| SelectionOutlineColor | FLinearColor | Selection color for the editor (used by post processing) | SceneView.h | |
| ShadowViewMatrices | uint8 | SceneView.h | ||
| ShowOnlyPrimitives | TOptional< TSet< FPrimitiveComponentId > > | The primitives which are visible for this view. | SceneView.h | |
| SpecularOverrideParameter | FVector4f | SceneView.h | ||
| SpriteCategoryVisibility | TBitArray | BitArray representing the visibility state of the various sprite categories in the editor for this view | SceneView.h | |
| State | FSceneViewStateInterface * | Can be 0 (thumbnail rendering) | SceneView.h | |
| StereoPass | EStereoscopicPass | For stereoscopic rendering, whether or not this is a full pass, or a left / right eye pass | SceneView.h | |
| StereoViewIndex | int32 | For stereoscopic rendering, unique index identifying the view across view families | SceneView.h | |
| SubduedSelectionOutlineColor | FLinearColor | Selection color for use in the editor with inactive primitives | SceneView.h | |
| TranslucentSortAxis | FVector | Sort axis for when TranslucentSortPolicy is SortAlongAxis | SceneView.h | |
| TranslucentSortPolicy | TEnumAsByte< ETranslucentSortPolicy::Type > | Translucent sort mode | SceneView.h | |
| UnconstrainedViewRect | FIntRect | Raw view size (in pixels), used for screen space calculations | SceneView.h | |
| UnderwaterDepth | float | How far below the water surface this view is. -1 means the view is out of water. | SceneView.h | |
| UnscaledViewRect | const FIntRect | Final position of the view in the final render target (in pixels), potentially constrained by an aspect ratio requirement (black bars) | SceneView.h | |
| ViewActor | FSceneViewOwner | The actor which is being viewed from. | SceneView.h | |
| ViewFrustum | FConvexVolume | SceneView.h | ||
| ViewLightingChannelMask | uint8 | View light masking support. | SceneView.h | |
| ViewLocation | FVector | Variables used to determine the view matrix | SceneView.h | |
| ViewMatrices | FViewMatrices | SceneView.h | ||
| ViewportFeedback | TSharedPtr< UE::RenderViewportFeedback::FCollector > | In editor, this is used to feed rendering info back to the viewport. May be null. | SceneView.h | |
| ViewRotation | FRotator | SceneView.h | ||
| ViewUniformBuffer | TUniformBufferRef< FViewUniformShaderParameters > | The uniform buffer for the view's parameters. | SceneView.h | |
| WaterDataBuffer | FShaderResourceViewRHIRef | SceneView.h | ||
| WaterIndirectionBuffer | FShaderResourceViewRHIRef | Water rendering related data | SceneView.h | |
| WaterInfoTextureRenderingParams | TArray< FWaterInfoTextureRenderingParams > | SceneView.h | ||
| WaterInfoTextureViewIndex | int32 | Index of the water info texture slice corresponding to this view. | SceneView.h | |
| WaterIntersection | EViewWaterIntersection | Whether the view intersects water. | SceneView.h | |
| WorldToMetersScale | float | SceneView.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| DynamicMeshElementsShadowCullFrustum | const FConvexVolume * | During GetDynamicMeshElements this will be the correct cull volume for shadow stuff | SceneView.h | |
| PreShadowTranslation | FVector | If the above is non-null, a translation that is applied to world-space before transforming by one of the shadow matrices. | SceneView.h | |
| StereoCullingFrustum | TSharedPtr< FConvexVolume > | SceneView.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool AllowGPUParticleUpdate() |
SceneView.h | ||
void ConfigureBufferVisualizationSettings() |
Configure post process settings for the buffer visualization system | SceneView.h | |
void ConfigureVisualizeCalibrationSettings() |
Configure post process settings for calibration material | SceneView.h | |
FVector4 CursorToScreen
(
float X, |
Transforms a cursor location in render target pixel coordinates into the view's screen-space, taking into account the viewport rectangle. | SceneView.h | |
FVector Deproject
(
const FPlane& ScreenPoint |
Transforms a point from the view's screen-space into world coordinates multiplies X, Y, Z by W before transforming. | SceneView.h | |
void DeprojectFVector2D
(
const FVector2D& ScreenPos, |
Transforms 2D screen coordinates into a 3D world-space origin and direction | SceneView.h | |
void EndFinalPostprocessSettings
(
const FSceneViewInitOptions& ViewInitOptions |
Applied global restrictions from show flags | SceneView.h | |
const FConvexVolume & GetCullingFrustum() |
SceneView.h | ||
uint32 GetDistanceFieldTemporalSampleIndex() |
Returns the distance field temporal sample index or 0 if there is no view state | SceneView.h | |
const FConvexVolume * GetDynamicMeshElementsShadowCullFrustum() |
SceneView.h | ||
FRDGPooledBuffer * GetEyeAdaptationBuffer() |
Returns the eye adaptation buffer or null if it doesn't exist. | SceneView.h | |
ERHIFeatureLevel::Type GetFeatureLevel() |
Get the feature level for this view (cached from the scene so this is not different per view) | SceneView.h | |
const FSceneView * GetInstancedSceneView() |
Get the first secondary view associated with the primary view. | SceneView.h | |
| Returns uniform buffer that is used to access (first) instanced view's properties. | SceneView.h | ||
float GetLastAverageSceneLuminance () |
Returns the average luminance or 0.0f if it doesn't exist. | SceneView.h | |
float GetLastEyeAdaptationExposure() |
Returns the eye adaptation exposure or 0.0f if it doesn't exist. | SceneView.h | |
uint32 GetOcclusionFrameCounter() |
Returns a the occlusion frame counter or MAX_uint32 if there is no view state | SceneView.h | |
| Returns the load action to use when overwriting all pixels of a target that you intend to read from. | SceneView.h | ||
const FVector & GetPreShadowTranslation() |
SceneView.h | ||
const FSceneView * GetPrimarySceneView() |
Get the primary view associated with the secondary view. | SceneView.h | |
TArray< const FSceneView * > GetSecondaryViews() |
Get all secondary views associated with the primary view. | SceneView.h | |
EShaderPlatform GetShaderPlatform() |
Get the feature level for this view | SceneView.h | |
const FViewMatrices & GetShadowViewMatrices() |
SceneView.h | ||
const FSceneView * GetSnapshotOriginView() |
SceneView.h | ||
int32 GetStereoPassInstanceFactor () |
Instance factor for a stereo pass (normally 2 for ISR views, but see IStereoRendering::GetDesiredNumberOfViews()). | SceneView.h | |
FVector GetTemporalLODOrigin
(
int32 Index, |
Returns the location used as the origin for LOD computations | SceneView.h | |
float GetTemporalLODTransition() |
Returns the blend factor between the last two LOD samples | SceneView.h | |
FVector GetViewDirection() |
SceneView.h | ||
uint32 GetViewKey() |
Returns a unique key for the view state if one exists, otherwise returns zero | SceneView.h | |
FVector GetViewRight() |
SceneView.h | ||
FVector GetViewUp() |
SceneView.h | ||
bool HasEyeAdaptationViewState() |
SceneView.h | ||
bool HasValidEyeAdaptationBuffer() |
Tells if the eye adaptation buffer exists without attempting to allocate it. | SceneView.h | |
bool IsInstancedSceneView () |
Checks whether this is the instanced view of a stereo pair. | SceneView.h | |
bool IsInstancedStereoPass() |
True if the view should render as an instanced stereo pass | SceneView.h | |
bool IsPerspectiveProjection() |
SceneView.h | ||
bool IsPrimarySceneView () |
Checks whether this is the primary view of a stereo pair (important in instanced stereo rendering). | SceneView.h | |
bool IsRayTracingAllowedForView() |
SceneView.h | ||
bool IsUnderwater() |
SceneView.h | ||
void OverridePostProcessSettings
(
const FPostProcessSettings& Src, |
Custom layers can be combined with the existing settings | SceneView.h | |
FVector4 PixelToScreen
(
float X, |
Transforms a point from pixel coordinates relative to the view's X,Y (left, top) into the view's screen-space. | SceneView.h | |
FVector4 PixelToWorld
(
float X, |
Transforms a point from pixel coordinates relative to the view's X,Y (left, top) into the view's world-space. | SceneView.h | |
FPlane Project
(
const FVector& WorldPoint |
Transforms a point from the view's world-space into the view's screen-space. | SceneView.h | |
bool ScreenToPixel
(
const FVector4& ScreenPoint, |
Transforms a point from the view's screen-space into pixel coordinates relative to the view's X,Y. | SceneView.h | |
FVector ScreenToWorld
(
const FVector4& ScreenPoint |
Transforms a point from the view's screen-space to world-space. | SceneView.h | |
void SetDynamicMeshElementsShadowCullFrustum
(
const FConvexVolume* InDynamicMeshElementsShadowCullFrustum |
SceneView.h | ||
void SetPreShadowTranslation
(
const FVector& InPreShadowTranslation |
SceneView.h | ||
void SetupAntiAliasingMethod() |
SceneView.h | ||
void SetupCommonViewUniformBufferParameters
(
FViewUniformShaderParameters& ViewUniformShaderParameters, |
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. | SceneView.h | |
void SetupViewRectUniformBufferParameters
(
FViewUniformShaderParameters& ViewUniformShaderParameters, |
Sets up the view rect parameters in the view's uniform shader parameters | SceneView.h | |
void StartFinalPostprocessSettings
(
FVector InViewLocation |
Setup defaults and depending on view position (postprocess volumes) | SceneView.h | |
void UpdatePlanarReflectionViewMatrix
(
const FSceneView& SourceView, |
If we late update a view, we need to also late update any planar reflection views derived from it | SceneView.h | |
void UpdateProjectionMatrix
(
const FMatrix& NewProjectionMatrix |
SceneView.h | ||
void UpdateViewMatrix() |
Allow things like HMD displays to update the view matrix at the last minute, to minimize perceived latency | SceneView.h | |
bool VerifyMembersChecks() |
Verifies all the assertions made on members. | SceneView.h | |
bool WorldToPixel
(
const FVector& WorldPoint, |
Transforms a point from the view's world-space into pixel coordinates relative to the view's X,Y (left, top). | SceneView.h | |
FVector4 WorldToScreen
(
const FVector& WorldPoint |
Transforms a point from world-space to the view's screen-space. | SceneView.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static void DeprojectScreenToWorld
(
const FVector2D& ScreenPos, |
Transforms 2D screen coordinates into a 3D world-space origin and direction | SceneView.h | |
static void DeprojectScreenToWorld
(
const FVector2D& ScreenPos, |
Overload to take a single combined view projection matrix. | SceneView.h | |
static FVector4f GetScreenPositionScaleBias
(
const FIntPoint& BufferSize, |
SceneView.h | ||
static bool ProjectWorldToScreen
(
const FVector& WorldPosition, |
Transforms 3D world-space origin into 2D screen coordinates | SceneView.h |