Fix global shader uniform texture loading

This commit is contained in:
bitsawer 2023-08-15 14:03:37 +03:00
parent c495eb5102
commit 41def3740a
2 changed files with 12 additions and 8 deletions

View file

@ -1957,15 +1957,17 @@ void MaterialStorage::global_shader_parameters_load_settings(bool p_load_texture
if (gvtype >= RS::GLOBAL_VAR_TYPE_SAMPLER2D) { if (gvtype >= RS::GLOBAL_VAR_TYPE_SAMPLER2D) {
//textire //textire
if (!p_load_textures) { if (!p_load_textures) {
value = RID();
continue; continue;
} }
String path = value; String path = value;
if (path.is_empty()) {
value = RID();
} else {
Ref<Resource> resource = ResourceLoader::load(path); Ref<Resource> resource = ResourceLoader::load(path);
ERR_CONTINUE(resource.is_null());
value = resource; value = resource;
} }
}
if (global_shader_uniforms.variables.has(name)) { if (global_shader_uniforms.variables.has(name)) {
//has it, update it //has it, update it

View file

@ -1821,15 +1821,17 @@ void MaterialStorage::global_shader_parameters_load_settings(bool p_load_texture
if (gvtype >= RS::GLOBAL_VAR_TYPE_SAMPLER2D) { if (gvtype >= RS::GLOBAL_VAR_TYPE_SAMPLER2D) {
//textire //textire
if (!p_load_textures) { if (!p_load_textures) {
value = RID();
continue; continue;
} }
String path = value; String path = value;
if (path.is_empty()) {
value = RID();
} else {
Ref<Resource> resource = ResourceLoader::load(path); Ref<Resource> resource = ResourceLoader::load(path);
ERR_CONTINUE(resource.is_null());
value = resource; value = resource;
} }
}
if (global_shader_uniforms.variables.has(name)) { if (global_shader_uniforms.variables.has(name)) {
//has it, update it //has it, update it