Skip to content

Transition Screens

Charles Doucet edited this page Sep 13, 2024 · 2 revisions
In this section

Transition screens are important in games, but they require an extra attention in the context of this game jam. Indeed, since we try to replicate an inspired visual theme from the GameBoy era, transition screens and their animation must fit the bill.

We developed a tool that makes it easy in Godot to add a transition screen to a scene or a level. It contains a short list of available effects, that can be extended in the future with new animations.

How it Works

The tool is contained within a Godot's scene that can be integrated to any other scene (levels for instance). The scene holds two nodes, a CanvasLayer at its root and an AnimatedSprite2D as a child. The latter holds a series of animations, ready to be triggered in full screen.

The scene also integrates a Script to control the transition screen. It captures the following @export variable:

Variable Type Description
transition_color Color Switch the color of the animated sprite with value.
animation_type enum From a list, determine which transition type to trigger.

When creating new animation for the transition screen, it's important to limit the usage of color to only white (#FFFFFF). This allows us to change the color within Godot itself, instead of having to import a number of different assets with unique colors.

Please be careful and make sure that only 4 colors are on screen at any time during a transition effect.

Available Animations

Here's the full list of available animations provided with the tool. Each animation can be selected from the inspector by choosing its enum name. Make sure to add any new material to the list.

Animation Name Enum Name Demo
Disolve content DISOLVE_CONTENT screen-transition_disolveContent
Disolve color DISOLVE_COLOR screen-transition_disolveColor
Swipe content SWIPE_CONTENT screen-transition_swipeContent
Swipe color SWIPE_COLOR screen-transition_swipeColor

Limitations

The tool is only adapted for the game's resolution. It cannot go below or above the native viewport size (160px x 144px). The speed for the animation is set to 15 fps for each animation. Changing the speed in the transition screen's scene will affect all instances. Please make sure to edit the speed locally within your scene to make the animations go slower or faster.

As said above, sprite sheets for new animations must come in white with alphas. The tool doesn't support yet the usage of multiple color.

Clone this wiki locally