Ready-made scene components. Most are driven through the Router, so you rarely instantiate them by hand.
A blurring fullscreen overlay shown during async work (HTTP calls, scene loading). Drive it from the Router:
Router.showLoader()
# ... await your async work ...
Router.hideLoader()It animates a spinner in and ramps a blur shader up while showing, then ramps it
down and frees itself on hideLoader(). The blur depth is the lod export
(default 3.0).
A fade-to-color overlay for screen transitions, added on top of the current scene:
Router.useScreenFader(0.75) # fade out over 0.75sThe component (components/screen-fader.tscn) exposes:
duration: float = 1fade_in: bool = false—falsefades the rect's alpha to 0 (reveal),truefades it to 1 (cover)fade_completedsignal — emitted when the tween ends
Add it directly to a scene if you want to await the signal yourself.
components/blur.tscn is a reusable blur surface backed by a shader
(blur_amount parameter). Popups and the fullscreen loader use it
to blur their background; name an instance blur inside a popup to have it
shown/hidden automatically.
components/review/ask-for-review.tscn is a popup that prompts the player to
rate the game. It extends the popup base and adapts to the
platform:
- Android: uses the
GodotAndroidRatemein-app review flow if present; - iOS: uses the
InappReviewPluginreview flow if present; - fallback: shows a "Rate now" button that opens the store URL
(via
Bundle).
var AskForReview = preload('res://fox/components/review/ask-for-review.tscn')
func askReview():
var popup = AskForReview.instantiate()
# popup.useForLandscape() # optional landscape placement
$/root/app/popups.add_child(popup)On completion it calls Player.setRatingDone() and closes. It expects a
Player autoload and a please rate this app translation key.