Navigation
API > API/Plugins > API/Plugins/DisplayCluster
NDisplay projection policy
| Name | IDisplayClusterProjectionPolicy |
| Type | class |
| Header File | /Engine/Plugins/Runtime/nDisplay/Source/DisplayCluster/Public/Render/Projection/IDisplayClusterProjectionPolicy.h |
| Include Path | #include "Render/Projection/IDisplayClusterProjectionPolicy.h" |
Syntax
class IDisplayClusterProjectionPolicy
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~IDisplayClusterProjectionPolicy() |
Render/Projection/IDisplayClusterProjectionPolicy.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void ApplyClippingPlanesOverrides
(
const IDisplayClusterViewport* InViewport, |
Projection policy can modify the clipping planes. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual void ApplyWarpBlend_RenderThread
(
FRHICommandListImmediate& RHICmdList, |
Performs Warp and Blend on the rendering thread Have to be called only if IsWarpBlendSupported_RenderThread() returns true | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual void BeginUpdateFrameContexts
(
IDisplayClusterViewport* InViewport |
Called before FDisplayClusterViewport::UpdateFrameContexts() From this function, the policy can override any viewport settings (custom overscan, etc). | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual void BeginWarpBlend_RenderThread
(
FRHICommandListImmediate& RHICmdList, |
Initializing the projection policy logic for the current frame before applying warp blending. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
bool CalculateView
(
IDisplayClusterViewport* InViewport, |
Calculate view projection data | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual void EndUpdateFrameContexts
(
IDisplayClusterViewport* InViewport |
Called after FDisplayClusterViewport::UpdateFrameContexts() | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual void EndWarpBlend_RenderThread
(
FRHICommandListImmediate& RHICmdList, |
Completing the projection policy logic for the current frame after applying warp blending. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool GetCustomRenderTargetSize
(
const IDisplayClusterViewport* InViewport, |
This function can override the size of the RenderTarget texture for the viewport. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual float GetGeometryToMeters
(
const IDisplayClusterViewport* InViewport, |
If the projection policy uses a custom scale internally, this function returns that value. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
const FString & GetId() |
Return projection policy instance ID | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual UMeshComponent * GetOrCreatePreviewEditableMeshComponent
(
IDisplayClusterViewport* InViewport |
Build preview Editable mesh This MeshComponent is a copy of the preview mesh and can be moved freely with the UI visualization. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual UMeshComponent * GetOrCreatePreviewMeshComponent
(
IDisplayClusterViewport* InViewport, |
Build preview mesh This MeshComponent cannot be moved freely. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual USceneComponent *const GetOriginComponent() |
Return Origin point component used by this viewport This component is used to convert from the local DCRA space to the local projection policy space, which contains the calibrated geometry data used for the warp. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual FVector GetOriginLocationOffsetInGeometryUnits
(
const IDisplayClusterViewport* InViewport |
Returns Origin's location in geometry units. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
| Return projection policy configuration | Render/Projection/IDisplayClusterProjectionPolicy.h | ||
virtual USceneComponent *const GetPreviewEditableMeshOriginComponent
(
IDisplayClusterViewport* InViewport |
Return Origin point component used by preview Editable mesh | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual USceneComponent *const GetPreviewMeshOriginComponent
(
IDisplayClusterViewport* InViewport |
Return Origin point component used by preview mesh | Render/Projection/IDisplayClusterProjectionPolicy.h | |
bool GetProjectionMatrix
(
IDisplayClusterViewport* InViewport, |
Gets projection matrix | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual EDisplayClusterProjectionPolicyFlags GetProjectionPolicyFlags
(
const IDisplayClusterViewport* InViewport, |
Return Projection policy flags | Render/Projection/IDisplayClusterProjectionPolicy.h | |
const FString & GetType() |
Return projection policy type | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool GetWarpBlendInterface
(
TSharedPtr< IDisplayClusterWarpBlend, ESPMode::ThreadSafe >& OutWarpBlendInterface |
Return warpblend interface of this policy | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool GetWarpBlendInterface_RenderThread
(
TSharedPtr< IDisplayClusterWarpBlend, ESPMode::ThreadSafe >& OutWarpBlendInterfaceProxy |
Return warpblend interface proxy of this policy | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual IDisplayClusterWarpPolicy * GetWarpPolicy() |
Get warp policy | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual IDisplayClusterWarpPolicy * GetWarpPolicy_RenderThread() |
Get warp policy on rendering thread | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual void HandleEndScene
(
IDisplayClusterViewport* InViewport |
Called when current level is going to be closed (i.e. before loading a new map) | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool HandleStartScene
(
IDisplayClusterViewport* InViewport |
Called each time a new game level starts | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool HasPreviewEditableMesh
(
IDisplayClusterViewport* InViewport |
Ask projection policy instance if it has any Editable mesh based preview | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool HasPreviewMesh
(
IDisplayClusterViewport* InViewport |
Ask projection policy instance if it has any mesh based preview | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool HasPreviewMesh () |
Ask projection policy instance if it has any mesh based preview | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool IsCameraProjectionVisible
(
const FRotator& InViewRotation, |
Return true, if camera projection visible for this viewport geometry ICVFX Performance : if camera frame not visible on this node, disable render for this camera | Render/Projection/IDisplayClusterProjectionPolicy.h | |
bool IsConfigurationChanged
(
const FDisplayClusterConfigurationProjection* InConfigurationProjectionPolicy |
Check projection policy settings changes | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool IsFrustumRotatedToFitContextSize
(
IDisplayClusterViewport* InViewport, |
Returns true if the frustum has been rotated to fit the context size. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool IsWarpBlendSupported
(
const IDisplayClusterViewport* InViewport |
Returns if a policy provides warp&blend feature | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool IsWarpBlendSupported () |
Returns if a policy provides warp&blend feature | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool IsWarpBlendSupported_RenderThread
(
const IDisplayClusterViewportProxy* InViewportProxy |
Returns if a policy provides warp&blend feature ( | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual void PostUpdateBaseConfiguration
(
IDisplayClusterViewport* InViewport |
Called after the base configuration is completed, but before the ICVFX | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool ResolveInternalRenderTargetResource_RenderThread
(
FRHICommandListImmediate& RHICmdList, |
Override copying 'InternalRenderTargetResource' to 'InputShaderResource'. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual void SetupProjectionViewPoint
(
IDisplayClusterViewport* InViewport, |
Override view from this projection policy | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual void SetWarpPolicy
(
IDisplayClusterWarpPolicy* InWarpPolicy |
Set warp policy for this projection | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool ShouldSupportICVFX
(
const IDisplayClusterViewport* InViewport |
Returns true if this policy supports ICVFX rendering | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool ShouldSupportICVFX () |
This policy can support ICVFX rendering | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool ShouldUseAdditionalTargetableResource
(
const IDisplayClusterViewport* InViewport |
Handle request for additional render targetable resource inside viewport api for projection policy. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool ShouldUseAdditionalTargetableResource () |
Handle request for additional render targetable resource inside viewport api for projection policy | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool ShouldUseAnySizeScaleForRenderTarget
(
const IDisplayClusterViewport* InViewport |
This function controls the RTT size multipliers - if false is returned, all modifiers should be ignored. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool ShouldUseSourceTextureWithMips
(
const IDisplayClusterViewport* InViewport |
Returns true if the policy supports input mip-textures. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool ShouldUseSourceTextureWithMips () |
Returns true if the policy supports input mip-textures. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual bool ShouldUseViewPointComponentPostProcesses
(
IDisplayClusterViewport* InViewport |
Returns true if this projection policy should use post-processes from the ViewPoint component. | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual void UpdatePostProcessSettings
(
IDisplayClusterViewport* InViewport |
Projection policy can override PP | Render/Projection/IDisplayClusterProjectionPolicy.h | |
virtual void UpdateProxyData
(
IDisplayClusterViewport* InViewport |
Send projection policy game thread data to render thread proxy called once per frame from FDisplayClusterViewportManager::FinalizeNewFrame | Render/Projection/IDisplayClusterProjectionPolicy.h |