ULiveLinkCameraController

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

LiveLinkCamera

Header

/Engine/Plugins/VirtualProduction/LiveLinkCamera/Source/LiveLinkCamera/Public/LiveLinkCameraController.h

Include

#include "LiveLinkCameraController.h"

Syntax

UCLASS()
class ULiveLinkCameraController : public ULiveLinkControllerBase

Variables

Name Description

Public variable UProperty Category, EditAnywhere BlueprintReadOnly

bool

 

bApplyNodalOffset

Apply nodal offset from lens file if enabled

Public variable UProperty Category BlueprintReadWrite

bool

 

bScaleOverscan

Whether to scale the computed overscan by the overscan percentage

Protected variable UProperty Category, EditAnywhere

bool

 

bShouldUpdateVisualComponentOnChange

Whether to refresh frustum drawing on value change

Public variable UProperty Category, EditAnywhere

bool

 

bUseCameraRange

Should LiveLink inputs be remapped (i.e normalized to physical units) using camera component range

Public variable UProperty Category, EditAnywhere

bool

 

bUseCroppedFilmback

Whether to use the cropped filmback setting to drive the filmback of the attached camera component

Public variable UProperty Category, EditAnywhere

FCameraFilmback...

 

CroppedFilmback

If a LensFile is being evaluated, the filmback saved in that LensFile will drive the attached camera component to ensure correct calibration.

Protected variable UProperty duplicatetransient

FGuid

 

DistortionProducerID

Unique identifier representing the source of distortion data

Protected variable UProperty Transient

ULensDistortion...

 

LensDistortionHandler

Cached distortion handler associated with attached camera component

Protected variable

FLensFileEvalDa...

 

LensFileEvalData

Caches the latest inputs to the LensFile evaluation

Public variable UProperty Category, EditAnywhere

FLensFilePicker

 

LensFilePicker

Asset containing encoder and fiz mapping

Protected variable UProperty

FVector

 

OriginalCameraLocation

Original cinecamera component location that we set back on when nodal offset isn't applied anymore

Protected variable UProperty

FRotator

 

OriginalCameraRotation

Original cinecamera component rotation that we set back on when nodal offset isn't applied anymore

Public variable UProperty Category, EditAnywhere, Meta BlueprintReadWrite

float

 

OverscanMultiplier

The percentage of the computed overscan that should be applied to the target camera

Protected variable UProperty Category, EditAnywhere

FLiveLinkCamera...

 

UpdateFlags

Used to control which data from LiveLink is actually applied to camera

Constructors

Name Description

Public function

ULiveLinkCameraController()

Functions

Name Description

Protected function

void

 

ApplyDistortion

(
    ULensFile* LensFile,
    UCineCameraComponent* CineCame...,
    const FLiveLinkCameraStaticData...,
    const FLiveLinkCameraFrameData*...
)

Update distortion state

Protected function

void

 

ApplyFIZ

(
    ULensFile* LensFile,
    UCineCameraComponent* CineCame...,
    const FLiveLinkCameraStaticData...,
    const FLiveLinkCameraFrameData*...
)

Applies FIZ data coming from LiveLink stream. Lens file is used if encoder mapping is required

Protected function

void

 

ApplyNodalOffset

(
    ULensFile* LensFile,
    UCineCameraComponent* CineCame...
)

Applies nodal offset from lens file for the given Focus/Zoom values of CineCamera

Public function Const

const FLensF...

 

GetLensFileEvalDataRef()

Returns a const reference to input data used to evaluate the lens file

Protected function

void

 

OnPostActorTick

(
    UWorld* World,
    ELevelTick TickType,
    float DeltaSeconds
)

Verify base transform and apply nodal offset on top of everything else done in tick

Public function

void

 

SetApplyNodalOffset

(
    bool bInApplyNodalOffset
)

Enables/disables the application of the nodal offset to the camera component

Protected function Const

void

 

VerifyFIZWithLensFileTables

(
    ULensFile* LensFile,
    const FLiveLinkCameraStaticData...
)

If part of FIZ is not streamed, verify that LensFile associated tables have only one entry Used to warn user of potential problem evaluating LensFile

Overridden from ULiveLinkControllerBase

Name Description

Public function Virtual

void

 

Cleanup()

Cleanup controller state before getting removed

Public function Virtual Const

TSubclassOf<...

 

GetDesiredComponentClass()

Returns the component class that this controller wants to control

Public function Virtual

bool

 

IsRoleSupported

(
    const TSubclassOf< ULiveLinkRole > ...
)

Can it support a specific role. This is called on the default object before creating an instance.

Public function Virtual

void

 

OnEvaluateRegistered()

Initialize the controller at the first tick of his owner component.

Public function Virtual

void

 

SetAttachedComponent

(
    UActorComponent* ActorComponen...
)

Sets the component this controller is driving

Public function Virtual

void

 

Tick

(
    float DeltaTime,
    const FLiveLinkSubjectFrameData& S...
)

Function called every frame with the data evaluated by the component.

Overridden from UObject

Name Description

Public function Virtual Const

bool

 

CanEditChange

(
    const FProperty* InProperty
)

Called by the editor to query whether a property of this object is allowed to be modified.

Public function Virtual

void

 

PostDuplicate

(
    bool bDuplicateForPIE
)

Called after duplication & serialization and before PostLoad.

Public function Virtual

void

 

PostEditChangeProperty

(
    FPropertyChangedEvent& PropertyCha...
)

Called when a property on this object has been modified externally

Public function Virtual

void

 

PostEditImport()

Called after importing property values for this object (paste, duplicate or .t3d import) Allow the object to perform any cleanup for properties which shouldn't be duplicated or are unsupported by the script serialization

Public function Virtual

void

 

PostLoad()

Do any object-specific cleanup required immediately after loading an object.

Deprecated Variables