Skip to content

Camera · Time Types

Baseline: OverAnim 0.1.0 Beta · Unreal Engine 5.8
Header: OverAnimation/Runtime/OverAnimComponent.h

This page documents the public enums and settings structures for Camera Safety, Camera Readability, slow motion, and pause used by UOverAnimComponent. See UOverAnimComponent for Blueprint node inputs, returns, and state changes.

Time · Camera Enum

Enum Value Meaning
EOverAnimTimeDilationPolicy FollowGameTime Simulates using the dilated game delta. Synchronized with animation/slow motion.
IgnoreTimeDilation Uses real-time timing with world/owner time dilation removed. Motion measurement still uses game-time input.
DisableDuringSlowMotion Returns to the source pose and rejects new responses when the effective time scale is below the threshold.
EOverAnimSlowMotionSilhouettePolicy ImmediateReset Removes active responses and immediately returns to the source pose.
BlendToSource Stops new responses and blends to the source pose over the configured duration.
EOverAnimPauseBehavior FreezeCurrentSilhouette Freezes the current result. No motion/automatic stages or new Signals are generated while paused.
ReturnToSourcePose Stops new responses and returns to the source pose.
FinishExistingEffectsInRealTime Stops new responses but completes active envelopes/springs/releases in real time.
EOverAnimScreenSpaceSilhouettePolicy AbsolutePixelSafety Applies one global pixel cap to all composed points.
RegionRelativeReadability Applies a cap based on a Region's projected diameter, followed by the global cap.
EOverAnimSignalDirectionSource WorldUp, WorldDown, OwnerUp, OwnerDown, OwnerForward, OwnerRight, OwnerVelocity Sources used by Submit Named OverAnim Signal From Owner and Notifies to create a world-space Signal direction. Zero Owner velocity may fail to provide a usable direction.

FOverAnimViewDependentStylizationSettings

This structure adds correction only when active OverAnim deformation appears short or thin because of camera projection. It does not modify the source pose, collision, or authored module settings.

Details UI Name C++ Property Default · Range Effect · Display Condition
Enable Camera Readability Correction bEnabled false Master switch for all correction. Values below are not applied when false.
Overall Readability Strength Intensity 1, 0..1 Final multiplier for all correction. Displayed only when bEnabled.
Reveal Actions Pointing Into Camera bEnableForeshortening true Allows screen-readable emphasis for actions directed along camera depth.
Depth Action Reveal Strength ForeshorteningStrength 0.2, 0..1 Bounded emphasis added to depth actions. Displayed when bEnabled && bEnableForeshortening. A value of 0 preserves authored deformation.
Depth Alignment Focus AlignmentExponent 2, 0.1..8 Higher values concentrate correction on actions more closely aligned with the camera.
Prevent Thin On-Screen Silhouettes bEnableSilhouetteGuard true Restores only missing screen-plane thickness in Regions made thin by active deformation.
Minimum Retained Screen Thickness MinimumSilhouetteThicknessRatio 0.6, 0..1 Minimum thickness ratio retained relative to the source Region silhouette.
Maximum Thickness Recovery Scale MaximumSilhouetteCorrectionScale 1.35, 1..3 Upper limit for thickness recovery.
Reveal Hidden Depth Motion DirectionReorientationStrength 0.15, 0..1 Fraction of depth displacement redirected toward the authored screen-plane direction. A value of 0 preserves direction.
Fade Camera Correction Near Frame Edge bEnableFramingGuard true Fades only the added correction near viewport boundaries.
Safe Frame Margin FramingSafeMarginRatio 0.05, 0..0.25 Safe margin expressed as a ratio of the shorter screen dimension.
Frame Edge Fade Strength FramingGuardStrength 1, 0..1 Degree to which correction is removed at an unsafe edge.
Fade Camera Correction After Cuts bEnableCameraCutGuard true Briefly fades in readability correction after a camera cut. The camera safety cap is not delayed.
Translation Cut Ratio CameraCutTranslationRatio 0.35, 0.01..2 A one-frame camera move beyond this ratio of camera distance is treated as a cut.
Rotation Cut Angle CameraCutRotationAngleDegrees 45 deg, 1..180 One-frame rotation cut threshold.
Projection Scale Cut Ratio CameraCutProjectionScaleRatio 0.25, 0.01..2 Cut threshold for changes in FOV, ortho width, or viewport scale.
Correction Fade-In Time CameraCutRecoveryDuration 0.08 s, 0..1 Correction recovery duration after a detected cut.

Component-Owned Camera Safety Properties

Details UI Name C++ Property Default · Range Effect · Display Condition
Enable Camera Safety Limit bEnableScreenSpaceSilhouetteLimit false Enables a screen-space safety cap on composed deformation. It only reduces excessive results and does not add stylization.
Camera Safety Limit Mode ScreenSpaceSilhouettePolicy RegionRelativeReadability Displayed only when the boolean above is true. Selects an absolute global cap or region-relative cap.
Global Screen Displacement Limit (Pixels) MaximumProjectedDisplacementPixels 48 px, 1+ Absolute cap on the fully composed result in the primary local camera.
Per-Region Screen Displacement Ratio MaximumProjectedRegionDisplacementRatio 0.25, 0.01..1 Displayed only in Region-relative mode. Cap expressed as a fraction of the projected Region diameter.
Camera Readability Correction ViewDependentStylization Structure above Correction settings independent of the safety cap.

Static C++ Helpers

C++ Declaration Return Preconditions
static bool ShouldDisableEffectsForSlowMotion(EOverAnimTimeDilationPolicy Policy, float EffectiveTimeDilation, float DisableThreshold) Whether slow motion suppression applies Returns true under DisableDuringSlowMotion when effective dilation is below the threshold.
static bool ResolveSlowMotionSuppressionState(EOverAnimTimeDilationPolicy Policy, bool bWasSuppressed, float EffectiveTimeDilation, float DisableThreshold, float ResumeHysteresis) Suppression state with hysteresis applied Resume threshold equals the disable threshold plus hysteresis.
static float ResolveSimulationDeltaSeconds(EOverAnimTimeDilationPolicy Policy, float DilatedDeltaSeconds, float EffectiveTimeDilation) Simulation delta for the policy Under IgnoreTimeDilation, a zero or invalid dilation cannot reliably recover the real-time delta.
static float ResolvePausedSimulationDeltaSeconds(EOverAnimPauseBehavior Behavior, float RealDeltaSeconds) Simulation delta while paused Freeze/Return use 0; Finish Existing uses the real delta.
static FOverAnimViewDependentStylizationSettings BlendViewDependentStylizationSettings(const FOverAnimViewDependentStylizationSettings& From, const FOverAnimViewDependentStylizationSettings& To, float Alpha) Shot-override blend result Alpha is the blend amount.
static float CalculateScreenSpaceMaximumDisplacement(float CameraDepth, float HorizontalFieldOfViewDegrees, int32 ViewportWidthPixels, float MaximumProjectedDisplacementPixels) World-displacement cap in cm Depth/FOV/viewport/pixel budget must be valid.
static float CalculateHorizontalFocalLengthPixels(float HorizontalFieldOfViewDegrees, int32 ViewportWidthPixels) Horizontal focal length (px) FOV and width must be valid.
static float CalculateOrthographicPixelsPerWorldUnit(float OrthographicWidth, int32 ViewportWidthPixels) Orthographic pixels/world unit Width and orthographic width must be positive.