SceneCache
Extends: Node
Description
A rolling cache to preload scenes for a better performance Uses the ResourceQueue as described in the Godot documentation
Method Descriptions
_init
func _init(cache_count: int, scene_path: String, permanent_cache: PoolStringArray, cache_max_size: int)
update_progress
func update_progress()
Update the current progress on the waiting screen and emit the queue_complete signal when we’re done
get_scene
func get_scene(path: String) -> PackedScene
Retrieve a scene from the cache. If the scene wasn’t already cached, this function will wait for it to be cached.
** Parameters **
path: The path to the scene
update_cache
func update_cache(current_scene: String) -> int
Update the cache. Start caching new scenes and remove scenes, that are not used anymore
** Parameters **
current_scene: The path and filename of the current scene Returns Number of cached scenes
update_permanent_cache
func update_permanent_cache(scene: String)
Add a scene to the permanent cache Scenes in permanent cache are not handled by cache manager
** Parameters **
scene: scene that is to be added to permanent cache
print_cache_mgr
func print_cache_mgr()
Print content of cache and cache manager to output (for cache verification)
Signals
signal queue_complete(): All pending resources were loaded
Sub-classes
CacheMgmt
Property Descriptions
age
var age: int
Indicates the age when the scene was inserted or updated in the cache minus the distance to the current scene
size
var size: float
Size of the textures of the scene (in Megabyte)
Method Descriptions
_init
func _init(age, size)
Constructor