-
Notifications
You must be signed in to change notification settings - Fork 258
Redesign and Implementation of Scrollable Credits System #1677
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Enhanced the credits screen with an animated background using AnimationPlayer and auto-scrolling functionality. Credits now scroll automatically, with speed adjustable via input, and the layout was restructured to support these features.
Major update to the credits.tscn structure, splitting credits into detailed sections for teams, contributors, and third-party components. Added new organization and engine logos (Endless, UTP, Fanny Pack Studios, Godot) and their imports. Introduced a basic shader for credits and updated UI layout for improved clarity and visual presentation.
Introduced three HSeparator nodes with custom separation and style to improve visual separation between sections in the credits scene. Adjusted PanelContainer offset for better layout spacing.
Refactored credits.gd to support both auto and manual scrolling, added configurable scroll speeds and start delay, and improved input handling for keyboard, mouse, and joystick. Updated credits.tscn to fix separator node order and adjusted footer text and layout.
Cleaned up comments and unused code in credits.gd. Updated credits.tscn to improve layout anchors and offsets, changed back button text, and added a horizontal box with directional input hints and a label to guide users on scrolling the credits.
|
Play this branch at https://play.threadbare.game/branches/endlessm/Credits-Scroll. (This launches the game from the start, not directly at the change(s) in this pull request.) |
Deleted credits.gdshader and its UID file from the title menu components as they are no longer needed.
|
I will take a look tomorrow! |
manuq
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is looking great @Gatorrante!
On logos, is a nice touch! But it will also make this pull request a bit hard to merge. Because with the exception of Godot logo (which I'm pretty confident can be used as is, as you seem to be meeting their usage guidelines) we'll need to check with each party about usage. and it would be kind to ask for them and provide their license and attribution.
On Endless logo: scenes/menus/title/components/logos/Endless.png
I think this logo needs to be for Endless Access, not for Endless Studios.
@Roddsl please confirm! And could you also attach the logo for @Gatorrante ? (check video in PR)
On Fanny Pack logo: scenes/menus/title/components/logos/fannypack_logo.png
@JuanFdS or @LauraFoglia can you please check if the usage here is fine? (check video in PR)
@Gatorrante you are also adding 2 assets for Fanny Pack, please remove the unused one.
For UTP... I don't know who should we be contacting!
JuanFdS
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The logo used in the video is all right! 👍🏾 @manuq
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you also add
Laura Foglia
Pablo de Haro
Tobias Romero
here
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed! I guess that the ... here were meant to complete the list. So @Gatorrante please add them all, thanks!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, indeed the ... was a placeholder. :)
We have a task for adding new people #1036 that we can take within Endess; @Gatorrante for the time being please can you ensure that everyone currently credited on main is also credited in your new implementation.
https://drive.google.com/drive/folders/15uTfJjM3-Blg6sWKdlqc_2rU0esxH7sg?usp=drive_link |
Co-authored-by: Will Thompson <wjt@endlessaccess.org>
Replaces exported variables with private ones, adjusts manual scroll speed, and simplifies scroll/animation handling by removing redundant null checks. Adds input handling for scroll actions, ensures proper clamping of scroll position, and streamlines background animation control.
… into Credits-Scroll
Replaced 'Endless.png' with 'Endless Access Horizontal.png' and updated its import file. Removed 'fannypack_logo_white.png' and related import. Added new credits entries and a section for 5'4 Games in the credits scene.
|
@wjt @JuanFdS
Please let me know if this looks good to you or if you’d like any further adjustments — I’m open to making changes. creditsv2.mp4 |
wjt
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work!

This PR implements the complete redesign of the Credits screen (
Credits.tscnandCredits.gd), resolving Issue #1361 by migrating the view from a static layout to a dynamic, code-managed vertical scrolling system.credits_pr.mp4
Solution to Issue #1361
Redesigned to be Scrollable
ScrollContainer(%ScrollContainer) whose main content is aVBoxContainer(%ScrollContent).Sectioned Structure by Discipline
%ScrollContentnow houses multiple discipline-based sectionsGamepad/Joystick Compatibility:
Changes in
Credits.gd_processmanages scroll (manual viamove_up/move_downandui_up/ui_downactions, or automatic via_is_auto_scrolling).await get_tree().create_timer(start_delay).timeoutinstart_credits_sequence()introduces a pause before enabling auto-scroll, improving UX.BackButtonmaintains focus (grab_focus()), and mouse wheel/scroll key interactions consume the event (get_viewport().set_input_as_handled()), disabling auto-scroll.Next
Issue Recommendation: Open a new issue to fully review and populate content sections with all missing collaborator names.
This PR closes Issue Reimplement credits page to be vertically scrollable, with sections per discipline #1361.