Camera Functions (API)
This section documents all public functions exposed by the PloxTools: Third Person Camera component.
These functions are available in both Blueprint and C++ and are used to configure the camera, query camera state, trigger runtime behavior, and control advanced systems such as focus, spline playback, collision, and camera effects.
Unless otherwise noted, these functions operate on the active ThirdPersonCameraComponent instance and affect only that specific camera system.
Settings Asset
| Function |
Parameters |
Return / Callback |
Description |
| Apply Camera Settings Asset |
Asset (UThirdPersonCameraSettingsAsset*) |
- |
Applies all settings from the Camera Settings Asset instantly. Framing settings are replaced and any runtime offsets are reset immediately. |
| Apply Camera Settings Asset Smooth |
Asset (UThirdPersonCameraSettingsAsset*), BlendTime (float), BlendCurve (UCurveFloat*) |
- |
Applies settings from the Camera Settings Asset. Framing parameters are smoothly blended over BlendTime, while all other settings are applied instantly. |
Camera State
| Function |
Parameters |
Return / Callback |
Description |
| Get Camera Location |
- |
FVector |
Returns the current world location of the controlled camera component. |
| Get Camera Rotation |
- |
FRotator |
Returns the current world rotation of the controlled camera component. |
| Get Camera Pivot Location |
- |
FVector |
Returns the current pivot location used as the origin for camera positioning. |
| Is Camera Compressed By Collision |
- |
bool |
Returns true if camera collision is currently compressing the camera closer to the pivot than its effective target distance. |
Framing State
| Function |
Parameters |
Return / Callback |
Description |
| Get Camera Distance |
- |
float |
Returns the base camera distance setting used when no runtime blend is active. |
| Get Current Camera Distance |
- |
float |
Returns the current runtime camera distance value after blending. |
| Get Pivot Height |
- |
float |
Returns the base pivot height setting. |
| Get Current Pivot Height |
- |
float |
Returns the current runtime pivot height value after blending. |
| Get Camera Offset |
- |
FVector |
Returns the current runtime camera offset blend value. This does not include the base AdditionalCameraOffset setting. |
| Get Pivot Offset |
- |
FVector |
Returns the current runtime pivot offset blend value. This does not include the base AdditionalPivotOffset setting. |
| Get FOV Offset |
- |
float |
Returns the current runtime FOV offset value added on top of pitch-based FOV effects. |
Framing Control
| Function |
Parameters |
Return / Callback |
Description |
| Set Framing |
NewCameraDistance (float), NewPivotHeight (float), NewCameraOffset (FVector), NewPivotOffset (FVector), NewFOVOffset (float), BlendTime (float), BlendCurve (UCurveFloat*) |
- |
Sets all runtime framing parameters at once. All values are applied and override current runtime offsets. Does not modify base settings. |
| Reset Framing |
BlendTime (float) |
- |
Resets all runtime framing offsets - camera distance, pivot height, camera offset, pivot offset, and FOV offset - back to their base settings over time. |
| Set Camera Distance |
NewDistance (float), BlendTime (float), BlendCurve (UCurveFloat*) |
- |
Blends the runtime camera distance to a new value over time. This does not modify the base CameraDistance setting. |
| Reset Camera Distance |
BlendTime (float) |
- |
Blends the runtime camera distance back to the base CameraDistance setting. |
| Set Pivot Height |
NewHeight (float), BlendTime (float), BlendCurve (UCurveFloat*) |
- |
Blends the runtime pivot height to a new value over time. This does not modify the base PivotHeight setting. |
| Reset Pivot Height |
BlendTime (float) |
- |
Blends the runtime pivot height back to the base PivotHeight setting. |
| Set Pivot Offset |
NewOffset (FVector), BlendTime (float), BlendCurve (UCurveFloat*) |
- |
Blends the runtime pivot offset to a new value over time. This offset is applied on top of AdditionalPivotOffset and does not modify it. |
| Reset Pivot Offset |
BlendTime (float) |
- |
Blends the runtime pivot offset back to zero. The base AdditionalPivotOffset remains unchanged. |
| Set Camera Offset |
NewOffset (FVector), BlendTime (float), BlendCurve (UCurveFloat*) |
- |
Blends the runtime camera offset to a new value over time. This offset is applied on top of AdditionalCameraOffset and does not modify it. |
| Reset Camera Offset |
BlendTime (float) |
- |
Blends the runtime camera offset back to zero. The base AdditionalCameraOffset remains unchanged. |
| Set FOV Offset |
NewOffset (float), BlendTime (float), BlendCurve (UCurveFloat*) |
- |
Blends the runtime FOV offset to a new value over time. This offset is applied on top of pitch-based FOV effects and does not modify the base camera FOV. |
| Reset FOV Offset |
BlendTime (float) |
- |
Blends the runtime FOV offset back to zero. |
| Swap Camera Shoulder |
BlendTime (float), BlendCurve (UCurveFloat*) |
- |
Mirrors the final camera shoulder by flipping the current runtime Y offset around the center line. The base AdditionalCameraOffset setting is not modified. |
Focus State
| Function |
Parameters |
Return / Callback |
Description |
| Is Focus Active |
- |
bool |
Returns true if the camera currently has an active focus target or focus location. |
| Get Focus Actor |
- |
AActor* |
Returns the currently focused Actor, or nullptr if focus is not using an Actor target. |
| Get Focus Location |
- |
FVector |
Returns the current world focus location used by the camera. |
| Has Valid Focus Target |
- |
bool |
Returns true if the camera currently has a valid focus target - actor, component, or location. |
| Get Focus Distance |
- |
float |
Returns the distance from the camera pivot to the current focus location. Returns 0 if focus is not active. |
Focus Control
| Function |
Parameters |
Return / Callback |
Description |
| Set Focus Actor |
InActor (AActor*), bUseOverrideSettings (bool), OverrideSettings (FThirdPersonCameraFocusSettings), OnFinished (FOnFocusFinishedLocal) |
Callback: OnFinished (Reason: EFocusLostReason) |
Sets focus to the specified Actor. Optionally allows overriding focus settings for this focus only. The optional callback is executed once when this specific focus session ends. |
| Set Focus Actor Socket |
InActor (AActor*), InSocketName (FName), bUseOverrideSettings (bool), OverrideSettings (FThirdPersonCameraFocusSettings), OnFinished (FOnFocusFinishedLocal) |
Callback: OnFinished (Reason: EFocusLostReason) |
Sets focus to a specific socket on the specified Actor's Skeletal Mesh. If the socket does not exist, the Actor location is used instead. |
| Set Focus Actor Component |
InComponent (USceneComponent*), bUseOverrideSettings (bool), OverrideSettings (FThirdPersonCameraFocusSettings), OnFinished (FOnFocusFinishedLocal) |
Callback: OnFinished (Reason: EFocusLostReason) |
Sets focus to the specified Scene Component. Optionally allows overriding focus settings for this focus only. |
| Set Focus Location |
InLocation (FVector), bUseOverrideSettings (bool), OverrideSettings (FThirdPersonCameraFocusSettings), OnFinished (FOnFocusFinishedLocal) |
Callback: OnFinished (Reason: EFocusLostReason) |
Sets focus to a fixed world location. Optionally allows overriding focus settings for this focus only. |
| Set Focus Offset |
InOffset (FVector) |
- |
Adds a world-space offset to the current focus target or location. |
| Reset Focus Offset |
- |
- |
Resets the focus offset back to zero. |
| Clear Focus |
- |
- |
Clears the current focus target or location and returns the camera to normal behavior. |
Camera Animation
| Function |
Parameters |
Return / Callback |
Description |
| Play Camera Animation |
CameraAnimation (UCameraAnimationSequence*), Parameters (FCameraAnimationParams), OnFinished (FOnCameraAnimationFinished), OnInterrupted (FOnCameraAnimationInterrupted) |
FCameraAnimationHandle |
Plays a camera animation through the PlayerCameraManager and returns its handle. Multiple camera animations can play simultaneously. |
| Stop Camera Animation |
AnimationHandle (FCameraAnimationHandle), bImmediate (bool) |
- |
Stops a specific camera animation, if it is currently active. |
| Stop All Camera Animations |
bImmediate (bool) |
- |
Stops all active camera animations started by this component. |
| Is Camera Animation Playing |
AnimationHandle (FCameraAnimationHandle) |
bool |
Returns true if the specified camera animation handle is currently playing. |
Camera Shake
| Function |
Parameters |
Return / Callback |
Description |
| Play Camera Shake |
ShakeClass (TSubclassOf<UCameraShakeBase>), Scale (float) |
UCameraShakeBase* |
Plays a camera shake using the PlayerCameraManager. Returns the active shake instance that can later be stopped manually. |
| Stop Camera Shake |
Shake (UCameraShakeBase*), bImmediately (bool) |
- |
Stops a specific camera shake instance previously returned by Play Camera Shake. If bImmediately is false, the shake blends out normally. |
| Stop All Camera Shakes |
bImmediately (bool) |
- |
Stops all currently active camera shakes on the PlayerCameraManager. If bImmediately is false, shakes blend out using their defined blend-out time. |
Spline
| Function |
Parameters |
Return / Callback |
Description |
| Play Camera Spline |
SplineActor (AThirdPersonCameraSplineActor*), bUseOverrideSettings (bool), OverrideSettings (FThirdPersonCameraSplineSettings), OnFinished (FOnCameraSplineFinished) |
Callback: OnFinished |
Starts playing a camera spline. If a spline is already active, it will be smoothly stopped and replaced. Optionally allows overriding the spline settings at runtime. |
| Stop Camera Spline |
- |
- |
Stops the currently active camera spline. If the spline is already stopping or inactive, this call has no effect. |
| Is Spline Active |
- |
bool |
Returns true if a camera spline is currently active or in the process of stopping. |
Camera Control
| Function |
Parameters |
Return / Callback |
Description |
| Set Camera Rotation |
TargetRotation (FRotator), BlendTime (float), Mode (ECameraRotationOverrideMode), OnFinished (FOnCameraRotationFinished) |
Callback: OnFinished |
Smoothly rotates the camera to the target rotation over time. Does nothing if a spline or focus is active. |
| Reset Camera Rotation |
BlendTime (float), Mode (ECameraResetMode), OnFinished (FOnCameraResetFinished) |
Callback: OnFinished |
Smoothly resets the camera rotation to the selected target mode. If focus is active, focus is cleared first. |
| Is Camera Resetting |
- |
bool |
Returns true while a camera reset blend is currently active. |
| Stop Camera Reset |
- |
- |
Stops the active camera reset without firing the completion callback. |
| Set Camera System Enabled |
bEnabled (bool) |
- |
Enables or disables the entire Third Person Camera system. When disabled, the component stops updating the camera. |
| Is Camera System Enabled |
- |
bool |
Returns true if the Third Person Camera system is currently enabled. |
Player Control
| Function |
Parameters |
Return / Callback |
Description |
| Set Look Input Enabled |
bEnabled (bool) |
- |
Enables or disables player look input on the owning PlayerController. |
| Set Move Input Enabled |
bEnabled (bool) |
- |
Enables or disables player movement input on the owning PlayerController. |
| Set Player Control Enabled |
bEnabled (bool) |
- |
Enables or disables both player look input and movement input on the owning PlayerController. |
Character
| Function |
Parameters |
Return / Callback |
Description |
| Set Character Rotation Follows Camera |
bEnabled (bool) |
- |
Controls whether the character should rotate with the camera yaw instead of orienting to movement direction. |
| Is Character Rotation Following Camera |
- |
bool |
Returns true if character rotation currently follows camera yaw. |
Settings Setters
Settings Getters