You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2026-01-03 19:11:41 +00:00
Fix shader include dependency handling
This commit is contained in:
@@ -42,9 +42,12 @@ Shader::Mode Shader::get_mode() const {
|
||||
}
|
||||
|
||||
void Shader::_dependency_changed() {
|
||||
RenderingServer::get_singleton()->shader_set_code(shader, RenderingServer::get_singleton()->shader_get_code(shader));
|
||||
// Preprocess and compile the code again because a dependency has changed. It also calls emit_changed() for us.
|
||||
_recompile();
|
||||
}
|
||||
|
||||
emit_changed();
|
||||
void Shader::_recompile() {
|
||||
set_code(get_code());
|
||||
}
|
||||
|
||||
void Shader::set_path(const String &p_path, bool p_take_over) {
|
||||
|
||||
@@ -60,6 +60,7 @@ private:
|
||||
HashMap<StringName, HashMap<int, Ref<Texture2D>>> default_textures;
|
||||
|
||||
void _dependency_changed();
|
||||
void _recompile();
|
||||
virtual void _update_shader() const; //used for visual shader
|
||||
Array _get_shader_uniform_list(bool p_get_groups = false);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user