Smooth Camera
Smoothly scroll to follow an object.
Authors and contributors to this experimental extension: D8H.
The camera follows an object according to:
- a frame rate independent catch-up speed to make the scrolling from smooth to strong
- a maximum speed to do linear following (open the project online) or slow down the camera when teleporting the object
- a follow-free zone to avoid scrolling on small movements
- an offset to see further in one direction
- an extra delay and catch-up speed to give an impression of speed (useful for dash)
- position forecasting and delay to simulate a cameraman response time
A platformer dedicated behavior allows to switch of settings when the character is in air or on the floor. This can be used to stabilize the camera when jumping.
Tip
Learn how to install new extensions by following a step-by-step guide.
Smooth Camera
Smoothly scroll to follow an object.
Behavior actions
Draw debug
Draw the targeted and actual camera position.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (👾 Object): Shape painter
Technical note: parameter 3 are internal parameters handled by GDevelop.
Move the camera closer
Move the camera closer to the object. This action must be called after the object has moved for the frame.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
Technical note: parameter 2 are internal parameters handled by GDevelop.
Camera delay
Change the camera delay (in seconds).
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Camera delay
Technical note: parameter 3 are internal parameters handled by GDevelop.
Downward catch-up speed
Change the camera downward catch-up speed (in ratio per second).
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Downward catch-up speed (in ratio per second)
Technical note: parameter 3 are internal parameters handled by GDevelop.
Downward maximum speed
Change the camera downward maximum speed (in pixels per second).
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Downward maximum speed (in pixels per second)
Technical note: parameter 3 are internal parameters handled by GDevelop.
Follow free area bottom border
Change the camera follow free area bottom border.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Follow free area bottom border
Technical note: parameter 3 are internal parameters handled by GDevelop.
Follow free area left border
Change the camera follow free area left border.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Follow free area left border
Technical note: parameter 3 are internal parameters handled by GDevelop.
Follow free area right border
Change the camera follow free area right border.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Follow free area right border
Technical note: parameter 3 are internal parameters handled by GDevelop.
Follow free area top border
Change the camera follow free area top border.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Follow free area top border
Technical note: parameter 3 are internal parameters handled by GDevelop.
Follow on X
Enable or disable the following on X axis.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (❓ Yes or No): Follow on X axis
Technical note: parameter 3 are internal parameters handled by GDevelop.
Follow on Y
Enable or disable the following on Y axis.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (❓ Yes or No): Follow on Y axis
Technical note: parameter 3 are internal parameters handled by GDevelop.
Forecast time
Change the camera forecast time (in seconds).
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Forecast time
Technical note: parameter 3 are internal parameters handled by GDevelop.
Leftward catch-up speed
Change the camera leftward catch-up speed (in ratio per second).
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Leftward catch-up speed (in ratio per second)
Technical note: parameter 3 are internal parameters handled by GDevelop.
Leftward maximum speed
Change the camera leftward maximum speed (in pixels per second).
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Leftward maximum speed (in pixels per second)
Technical note: parameter 3 are internal parameters handled by GDevelop.
Camera offset X
Change the camera offset on X axis of the object. This is not the current difference between the object and the camera position.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Operator
- Parameter 3 (🔢 Number): Value
Technical note: parameter 4 are internal parameters handled by GDevelop.
Camera offset Y
Change the camera offset on Y axis of the object. This is not the current difference between the object and the camera position.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Operator
- Parameter 3 (🔢 Number): Value
Technical note: parameter 4 are internal parameters handled by GDevelop.
Rightward catch-up speed
Change the camera rightward catch-up speed (in ratio per second).
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Rightward catch-up speed (in ratio per second)
Technical note: parameter 3 are internal parameters handled by GDevelop.
Rightward maximum speed
Change the camera rightward maximum speed (in pixels per second).
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Rightward maximum speed (in pixels per second)
Technical note: parameter 3 are internal parameters handled by GDevelop.
Upward catch-up speed
Change the camera upward catch-up speed (in ratio per second).
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Upward catch-up speed (in ratio per second)
Technical note: parameter 3 are internal parameters handled by GDevelop.
Upward maximum speed
Change the camera upward maximum speed (in pixels per second).
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Upward maximum speed (in pixels per second)
Technical note: parameter 3 are internal parameters handled by GDevelop.
Wait and catch up
Delay the camera according to a maximum speed and catch up the delay.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2 (🔢 Number): Waiting duration (in seconds)
- Parameter 3 (🔢 Number): Waiting maximum camera target speed X
- Parameter 4 (🔢 Number): Waiting maximum camera target speed Y
- Parameter 5 (🔢 Number): Catch up duration (in seconds)
Technical note: parameter 6 are internal parameters handled by GDevelop.
Behavior conditions
Camera offset X
Compare the camera offset on X axis of the object. This is not the current difference between the object and the camera position.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Relational operator
- Parameter 3 (🔢 Number): Value to compare
Technical note: parameter 4 are internal parameters handled by GDevelop.
Camera offset Y
Compare the camera offset on Y axis of the object. This is not the current difference between the object and the camera position.
See parameters
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Relational operator
- Parameter 3 (🔢 Number): Value to compare
Technical note: parameter 4 are internal parameters handled by GDevelop.
Behavior expressions
Expression | Description | |
---|---|---|
Object.SmoothCamera::OffsetX() |
Return the camera offset on X axis of the object. This is not the current difference between the object and the camera position. | |
Object.SmoothCamera::OffsetY() |
Return the camera offset on Y axis of the object. This is not the current difference between the object and the camera position. |
Smooth platformer camera
Smoothly scroll to follow a character and stabilize the camera when jumping.
No expressions for this behavior.
This page is an auto-generated reference page about the Smooth Camera extension, made by the community of GDevelop, the open-source, cross-platform game engine designed for everyone. Learn more about all GDevelop community-made extensions here.