Skip to content

Visual Editor Performance Enhancements #2598

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

Open
wants to merge 11 commits into
base: main
Choose a base branch
from

Conversation

Jowan-Spooner
Copy link
Member

@Jowan-Spooner Jowan-Spooner commented May 27, 2025

This PR is a bunch of experiments on my end to improve the performance of the visual editor loading times.
It's been a while since I did these, here is the main points I remember:

  • Includes a small fix for temporary characters in visual editor (similar to fix one-off name getting lost in visual editor #2571)
  • I made adjustments that allow running the dialogic editor as a scene. This scene has many problems, but it allows using the profiler. This mostly meant putting access to Editor classes/singletons into Engine.is_editor_hint() checks.
  • Adds a cache to Editor Settings, improving read performance of those.
  • Caches Event icons to prevent constant loading
  • Reduces Calls to indent_events()
  • Changes the way Extra-Spacing is added to the bottom of the visual timeline editor (because it got recalculated way to much)
  • Reduced Calls to update_content_list
  • increases the loading batch_size from 10 to 100 because that made things significantly faster (it waits a frame between each batch)
  • preloads the common editor fields in the event_block script

There is also an attempt at colored icons in here (for characters) but I scrapped it because unless we have a character color cache this would mean loading all the characters just to get their colors.

Testing and feedback would be very much appreciated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

1 participant