diff options
author | Clay John <claynjohn@gmail.com> | 2022-01-06 09:41:29 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-06 09:41:29 -0800 |
commit | 1dee3e0cc7590480a77d5bb50a4c90e0286c5e50 (patch) | |
tree | 42598f8cafc201cb0d16609d07f0eca73d2ee36a | |
parent | 06b709ece3f941265eb09a5d7c50439928c0ca9d (diff) | |
parent | cd842b65bf9844ea50d516c5854dd7ff3628870d (diff) |
Merge pull request #56563 from V-Sekai/dirty_material
Fix queueing a texture and regular uniform update in RD backend
-rw-r--r-- | servers/rendering/renderer_rd/renderer_storage_rd.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/servers/rendering/renderer_rd/renderer_storage_rd.cpp b/servers/rendering/renderer_rd/renderer_storage_rd.cpp index 6cce51cfaf..5507f206b5 100644 --- a/servers/rendering/renderer_rd/renderer_storage_rd.cpp +++ b/servers/rendering/renderer_rd/renderer_storage_rd.cpp @@ -1639,14 +1639,14 @@ void RendererStorageRD::material_initialize(RID p_rid) { } void RendererStorageRD::_material_queue_update(Material *material, bool p_uniform, bool p_texture) { + material->uniform_dirty = material->uniform_dirty || p_uniform; + material->texture_dirty = material->texture_dirty || p_texture; + if (material->update_element.in_list()) { return; } material_update_list.add(&material->update_element); - - material->uniform_dirty = material->uniform_dirty || p_uniform; - material->texture_dirty = material->texture_dirty || p_texture; } void RendererStorageRD::material_set_shader(RID p_material, RID p_shader) { |