mirror of
https://github.com/godotengine/godot.git
synced 2025-12-08 06:09:55 +00:00
Implement shader caching
* Shader compilation is now cached. Subsequent loads take less than a millisecond. * Improved game, editor and project manager startup time. * Editor uses .godot/shader_cache to store shaders. * Game uses user://shader_cache * Project manager uses $config_dir/shader_cache * Options to tweak shader caching in project settings. * Editor path configuration moved from EditorSettings to new class, EditorPaths, so it can be available early on (before shaders are compiled). * Reworked ShaderCompilerRD to ensure deterministic shader code creation (else shader may change and cache will be invalidated). * Added shader compression with SMOLV: https://github.com/aras-p/smol-v
This commit is contained in:
parent
39df47b88f
commit
0d2e02945b
39 changed files with 3113 additions and 172 deletions
|
|
@ -36,6 +36,7 @@
|
|||
#include "core/object/class_db.h"
|
||||
#include "core/os/thread_safe.h"
|
||||
#include "core/string/translation.h"
|
||||
#include "editor/editor_paths.h"
|
||||
#include "scene/gui/shortcut.h"
|
||||
|
||||
class EditorPlugin;
|
||||
|
|
@ -87,12 +88,7 @@ private:
|
|||
mutable Map<String, Ref<Shortcut>> shortcuts;
|
||||
Map<String, List<Ref<InputEvent>>> builtin_action_overrides;
|
||||
|
||||
String resource_path;
|
||||
String settings_dir;
|
||||
String data_dir;
|
||||
String cache_dir;
|
||||
String config_file_path;
|
||||
String project_config_dir;
|
||||
|
||||
Vector<String> favorites;
|
||||
Vector<String> recent_dirs;
|
||||
|
|
@ -153,12 +149,10 @@ public:
|
|||
|
||||
String get_data_dir() const;
|
||||
String get_templates_dir() const;
|
||||
String get_settings_dir() const;
|
||||
String get_project_settings_dir() const;
|
||||
String get_text_editor_themes_dir() const;
|
||||
String get_script_templates_dir() const;
|
||||
String get_project_script_templates_dir() const;
|
||||
String get_cache_dir() const;
|
||||
String get_feature_profiles_dir() const;
|
||||
|
||||
void set_project_metadata(const String &p_section, const String &p_key, Variant p_data);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue