ProtectedboundsCamera position bounds (Infinity = no limit)
ProtectedcachedCached camera position to avoid object churn
ProtectedcachedCached gizmo position to avoid object churn
ProtectedcachedCached transition position to avoid object churn
VYLO Diob object representing the camera
ReadonlygizmoColor used for gizmo visualization (hex value)
The length of the gizmo line
ReadonlyidUnique identifier for this camera instance
Whether this camera is currently the active view eye
Reference to the CameraManager that owns this camera
ProtectedoperationIf true, this action ignores all time scale (global and camera)
ProtectedoperationPer-action override time scale (temporary), null when not set
The owner/target this camera belongs to (GameInstance or Vector2D) This represents who the camera is attached to or following
Current position of the camera in world space
Previous position of the camera in world space (used for velocity tracking)
The random angle for the gizmo
ProtectedtimeCamera-specific time scale multiplier (1.0 = normal)
Whether to track the target's Z position and subtract it from the Y position. Enabled by default. Useful for 2.5D isometric-style games where height (Z) affects screen Y.
ProtectedtransitionTransition duration for X axis in milliseconds
ProtectedtransitionTransition duration for Y axis in milliseconds
ProtectedtransitionEasing function for X axis transitions
ProtectedtransitionEasing function for Y axis transitions
ProtectedtransitioningWhether this camera is currently transitioning to become the view eye
ProtectedtransitionTransition progress (0-1) when becoming view eye
ProtectedtransitionStarting position for transitions
ProtectedtransitionTarget position for transitions
ProtectedtransitionElapsed time for current transition
ReadonlytypeCamera type identifier
Current velocity of the camera in pixels per second
Getter for gizmoEnabled property
Setter for gizmoEnabled property that notifies CameraManager
Getter for isActive property
Setter for isActive property that notifies CameraManager
Whether to track the view eye's Z position (alias for trackTargetZ)
ProtectedapplyAttaches this camera to always follow the player when not panning.
This ensures the camera is always positioned at the player's center and on the same map, ready for seamless transitions when panning.
The player GameInstance to follow
ProtectedclampGets the owner/target this camera belongs to
The owner or null if not attached to anyone
Gets the current target being panned to or followed
The target or null if not panning and no player target
ProtectedgetGets the Z value of a target if trackTargetZ is enabled, else returns 0. Used to subtract target height from Y position for 2.5D depth effects.
The target to get Z from
The target's z value, or 0 if tracking is disabled or target has no z
ProtectedgetProtectedgetGets the true camera position for a target (GameInstance or Vector2D) For GameInstance: returns center position (where camera should be) For Vector2D: returns the position directly Reuses cached object to avoid churn
ProtectedisChecks if a target is a Vector2D (has x, y properties but no mapName)
Target to check
True if target is Vector2D, false if GameInstance
Starts panning to a target with optional configuration.
Only one PanCamera can pan to a given target at a time. If another PanCamera is already panning, this camera will take over.
GameInstance or Vector2D to pan to
OptionalpOptions: PanCameraOptionsOptional pan configuration
// Simple pan to position
camera.pan({ x: 100, y: 200 }, {
duration: 1000,
ease: 'easeOutCubic'
});
// Pan with return and callbacks
camera.pan(player, {
duration: 800,
panBack: true,
pauseDuration: 2000,
panBackDuration: 600,
panBackEase: 'easeInCubic',
onPanComplete: () => console.log('Reached target!'),
onPanBackComplete: () => console.log('Returned home!')
});
Sets this camera as the active view eye and updates diob position immediately
OptionalpOptions: TransitionCameraOptionsSets camera position bounds (Infinity = no limit in that direction)
Minimum X position (use -Infinity for no limit)
Maximum X position (use Infinity for no limit)
Minimum Y position (use -Infinity for no limit)
Maximum Y position (use Infinity for no limit)
Sets the owner/target this camera belongs to
The owner to attach to
PanCamera has its own movement API - setSettings should not be used Use pan() method with options instead
Protectedupdate
PanCamera provides smooth panning movements to targets with optional return functionality.
Only one PanCamera can exist per target (GameInstance or Vector2D). Supports pan-to, pause, and pan-back sequences with customizable timing and easing.
The pan sequence: Start → Pan to target → Pause → Pan back to original position (optional). Each phase can have different durations and easing functions.
Example