Install Asset
Install via Godot
To maintain one source of truth, Godot Asset Library is just a mirror of the old asset library so you can download directly on Godot via the integrated asset library browser
Quick Information
A simple Godot 4 asset for smooth scene transitions.Simply call the `Transit.change_scene_to_file` with the path of the scene to change to, and a fade-in/fade-out transition will play as the scene is changed. Now for Godot 4!Forked from backwardspy/transit
A simple Godot asset for smooth scene transitions.
Usage
Add Transit to your project via the AssetLib tab in Godot. Deselect everything but the transit
folder when first installing Transit.
Transit.tscn
will be added as an Autoload Singleton once Transit is enabled in the plugins tab.
Now you can call Transit.change_scene_to_file
in your scripts to change scenes in much the same way you would with SceneTree.change_scene_to_file
. For example:
func on_button_pressed():
Transit.change_scene_to_file("res://Game.tscn")
Documentation
Change Scene
change_scene_to_file(path: String, duration: Float = 0.2, delay: float = 0)
Fades out, calls get_tree().change_scene_to_file(path)
, then fades back in. Emits the scene_changed
signal once the transition is completed.
Parameters:
path
: The scene to change to after fading out.duration
: How long in seconds the fade should last on each side of the transition. Defaults to 0.2s (200ms).delay
: How long to wait before starting the transition. Defaults to 0s, i.e no delay.
Example:
# A simple fade transition to `Game.tscn`.
Transit.change_scene_to_file("res://Game.tscn")
# Then same as above, except each fade (out and in) takes half a second.
Transit.change_scene_to_file("res://Game.tscn", 0.5)
# The same as above, except now it waits for a full second before fading out.
Transit.change_scene_to_file("res://Game.tscn", 0.5, 1.0)
Set fade-to color
set_color(color: Color)
Sets the intermediate color to use when fading between scenes. The default is black. This function preserves the current alpha value, which means it's safe to change colours even while a fade is in progress.
Parameters:
color
: The color to fade to. This is implemented as a ColorRect that exists on the highest canvas layer in the scene.
Example:
# Set fade color to white.
Transit.set_color(Color.WHITE)
# This will now fade to white before changing to `Game.tscn`
Transit.change_scene_to_file("res://Game.tscn")
Implementation Details
Transit works by creating a ColorRect
on canvas layer #128 (the highest.) This ColorRect
defaults to black with 0 alpha, with mouse filtering set to MOUSE_FILTER_IGNORE
. When change_scene_to_file
is called, the following process happens:
- The
ColorRect
mouse filtering is set toMOUSE_FILTER_STOP
to prevent further UI interaction. - If
delay
is larger than 0, the function yields for that amount of time. - An animation is played that fades the alpha value to 1 over the given time period.
SceneTree.change_scene_to_file
is invoked on the current tree, changing to the requested scene.- The
ColorRect
mouse filtering is set back toMOUSE_FILTER_IGNORE
to allow UI interactions. - The same fade animation as before is played in reverse to fade the
ColorRect
alpha back to 0. - The
scene_changed
signal is emitted.
A simple Godot 4 asset for smooth scene transitions.
Simply call the `Transit.change_scene_to_file` with the path of the scene to change to, and a fade-in/fade-out transition will play as the scene is changed. Now for Godot 4!
Forked from backwardspy/transit
Reviews
Quick Information
A simple Godot 4 asset for smooth scene transitions.Simply call the `Transit.change_scene_to_file` with the path of the scene to change to, and a fade-in/fade-out transition will play as the scene is changed. Now for Godot 4!Forked from backwardspy/transit