#include <ComposableCameraPivotLookAheadNode.h>

Inherits: UComposableCameraCameraNodeBase

Projects a pivot position forward by a velocity-derived look-ahead offset.

Intended placement: ReceivePivotActor -> PivotLookAhead -> PivotOffset / ScreenSpacePivot -> LookAt -> CameraOffset.

Public Attributes

Return Name Description
FVector PivotPosition Pivot position to project. Usually wired from ReceivePivotActor or another pivot-producing node.
EComposableCameraActorInputSource VelocityActorSource Selects whether VelocityActor comes from the controlled pawn or an explicit actor.
TObjectPtr< AActor > VelocityActor Actor whose velocity drives look-ahead. If unresolved, the node falls back to frame-to-frame PivotPosition velocity.
float LookAheadTime Seconds into the future to project PivotPosition using the resolved velocity.
float VelocityDampingTime Time used to damp velocity changes. Set to 0 for immediate velocity response.

PivotPosition

FVector PivotPosition { FVector::ZeroVector }

Pivot position to project. Usually wired from ReceivePivotActor or another pivot-producing node.


VelocityActorSource

EComposableCameraActorInputSource VelocityActorSource { EComposableCameraActorInputSource::ExplicitActor }

Selects whether VelocityActor comes from the controlled pawn or an explicit actor.


VelocityActor

TObjectPtr< AActor > VelocityActor { nullptr }

Actor whose velocity drives look-ahead. If unresolved, the node falls back to frame-to-frame PivotPosition velocity.


LookAheadTime

float LookAheadTime { 0.f }

Seconds into the future to project PivotPosition using the resolved velocity.


VelocityDampingTime

float VelocityDampingTime { 0.f }

Time used to damp velocity changes. Set to 0 for immediate velocity response.

Public Methods

Return Name Description
UComposableCameraPivotLookAheadNode inline
void OnInitialize_Implementation virtual
void OnFirstTickNode_Implementation virtual
void OnTickNode_Implementation virtual
void GetPinDeclarations_Implementation virtual const
void DrawNodeDebug virtual const Called each frame when the CCS.Debug.Viewport CVar is enabled, for every node on the currently running camera.

UComposableCameraPivotLookAheadNode

inline

inline UComposableCameraPivotLookAheadNode()

OnInitialize_Implementation

virtual

virtual void OnInitialize_Implementation()

OnFirstTickNode_Implementation

virtual

virtual void OnFirstTickNode_Implementation()

OnTickNode_Implementation

virtual

virtual void OnTickNode_Implementation(float DeltaTime, const FComposableCameraPose & CurrentCameraPose, FComposableCameraPose & OutCameraPose)

GetPinDeclarations_Implementation

virtual const

virtual void GetPinDeclarations_Implementation(TArray< FComposableCameraNodePinDeclaration > & OutPins) const

DrawNodeDebug

virtual const

virtual void DrawNodeDebug(UWorld * World, bool bViewerIsOutsideCamera) const

Draws an orange sphere at the predicted pivot when CCS.Debug.Viewport.PivotLookAhead 1 is enabled, or when CCS.Debug.Viewport.Nodes.All 1 enables all node gizmos. Compiled out in shipping builds.

Private Attributes

Return Name Description
FVector LastPivotPosition
FVector SmoothedVelocity
FVector VelocitySmoothingVelocity
bool bHasLastPivotPosition
FVector LastOutputPivotPosition Last predicted pivot cached for non-shipping viewport debug drawing.

LastPivotPosition

FVector LastPivotPosition { FVector::ZeroVector }

SmoothedVelocity

FVector SmoothedVelocity { FVector::ZeroVector }

VelocitySmoothingVelocity

FVector VelocitySmoothingVelocity { FVector::ZeroVector }

bHasLastPivotPosition

bool bHasLastPivotPosition { false }

LastOutputPivotPosition

FVector LastOutputPivotPosition { FVector::ZeroVector }

Last predicted pivot cached for non-shipping viewport debug drawing.