+7 votes

The Godot documentation uses unclear language on this topic.

in Engine by (5,203 points)

1 Answer

+16 votes
Best answer

When resources are loaded before scene is playing/running, this way of loading resources is called preloading.
When resources are loaded while scene is already playing/running, resources being loaded dynamically (this is what you call regular loading).

Advantage of preloading resources is that you avoid freezes during gameplay because of resource being loaded (parsed/converted to right format/etc), but scene loads for a longer time. When you use dynamic loading of resources, you save some memory and load stuff you need only when you actually need it. You can even fix freezes in scene by using something like ResourceInteractiveLoader, see http://docs.godotengine.org/en/latest/tutorials/engine/background_loading.html

by (173 points)
selected by

Thanks. So it's forcing the things to load, before the scene is allowed to start running. The dynamically loaded then are competing for processing time, then can be popped into the scene when they finish. Is that accurate?

Yes, pretty much accurate. Actually I don't know how dynamically loaded resources are resolved by engine (does it freeze entire game or shows something like placeholder until resource is finally loaded?). You probably can ask Godot developers at their IRC channel on freenode (#godotengine and #godotengine-devel channels).

Thanks, you've been super helpful. X) I'll look into those further now that I have a better idea of what they're doing.

Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to webmaster@godotengine.org with your username.