summaryrefslogtreecommitdiffstats
path: root/servers/rendering/renderer_rd/storage_rd/material_storage.h
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2022-12-17 12:26:51 +0100
committerRémi Verschelde <rverschelde@gmail.com>2022-12-17 12:26:51 +0100
commit676f60b0ccd38df41648b942fe9b437ac3ea954a (patch)
tree0a1fa5f3c1f8bfa4a25e72eb6abb6b6ee51230eb /servers/rendering/renderer_rd/storage_rd/material_storage.h
parent376290ea86b70c15452ec97e1cd1937c319383b1 (diff)
parent1b330820bf4c145060462624534dea81055a8bf0 (diff)
downloadredot-engine-676f60b0ccd38df41648b942fe9b437ac3ea954a.tar.gz
Merge pull request #70132 from clayjohn/RT-update
Implement render_target_was_used API so that Viewports can properly check if they have been used.
Diffstat (limited to 'servers/rendering/renderer_rd/storage_rd/material_storage.h')
-rw-r--r--servers/rendering/renderer_rd/storage_rd/material_storage.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/servers/rendering/renderer_rd/storage_rd/material_storage.h b/servers/rendering/renderer_rd/storage_rd/material_storage.h
index d7d8303a06..989a0f7b45 100644
--- a/servers/rendering/renderer_rd/storage_rd/material_storage.h
+++ b/servers/rendering/renderer_rd/storage_rd/material_storage.h
@@ -31,6 +31,8 @@
#ifndef MATERIAL_STORAGE_RD_H
#define MATERIAL_STORAGE_RD_H
+#include "texture_storage.h"
+
#include "core/math/projection.h"
#include "core/templates/local_vector.h"
#include "core/templates/rid_owner.h"
@@ -74,8 +76,10 @@ public:
};
struct MaterialData {
+ Vector<RendererRD::TextureStorage::RenderTarget *> render_target_cache;
void update_uniform_buffer(const HashMap<StringName, ShaderLanguage::ShaderNode::Uniform> &p_uniforms, const uint32_t *p_uniform_offsets, const HashMap<StringName, Variant> &p_parameters, uint8_t *p_buffer, uint32_t p_buffer_size, bool p_use_linear_color);
void update_textures(const HashMap<StringName, Variant> &p_parameters, const HashMap<StringName, HashMap<int, RID>> &p_default_textures, const Vector<ShaderCompiler::GeneratedCode::Texture> &p_texture_uniforms, RID *p_textures, bool p_use_linear_color);
+ void set_as_used();
virtual void set_render_priority(int p_priority) = 0;
virtual void set_next_pass(RID p_pass) = 0;