diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2021-01-06 16:28:45 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-06 16:28:45 +0100 |
commit | a7baf013524ccd271bd123d8aef93a73b450a888 (patch) | |
tree | f6b0f142b5b9e44805b814acb69f0be656061a11 /servers/rendering/renderer_rd/renderer_storage_rd.cpp | |
parent | a3b76e26f34b668993382e6c32b7d3afaca0259f (diff) | |
parent | cdb216f4e4096dd45973cb9fd3b9b00d50789e35 (diff) |
Merge pull request #44950 from reduz/shader-debugger
Added ability to visualize native shaders
Diffstat (limited to 'servers/rendering/renderer_rd/renderer_storage_rd.cpp')
-rw-r--r-- | servers/rendering/renderer_rd/renderer_storage_rd.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/servers/rendering/renderer_rd/renderer_storage_rd.cpp b/servers/rendering/renderer_rd/renderer_storage_rd.cpp index bf7237cad0..1ffc024d42 100644 --- a/servers/rendering/renderer_rd/renderer_storage_rd.cpp +++ b/servers/rendering/renderer_rd/renderer_storage_rd.cpp @@ -1499,6 +1499,15 @@ void RendererStorageRD::shader_set_data_request_function(ShaderType p_shader_typ shader_data_request_func[p_shader_type] = p_function; } +RS::ShaderNativeSourceCode RendererStorageRD::shader_get_native_source_code(RID p_shader) const { + Shader *shader = shader_owner.getornull(p_shader); + ERR_FAIL_COND_V(!shader, RS::ShaderNativeSourceCode()); + if (shader->data) { + return shader->data->get_native_source_code(); + } + return RS::ShaderNativeSourceCode(); +} + /* COMMON MATERIAL API */ RID RendererStorageRD::material_create() { @@ -4823,6 +4832,10 @@ Variant RendererStorageRD::ParticlesShaderData::get_default_parameter(const Stri return Variant(); } +RS::ShaderNativeSourceCode RendererStorageRD::ParticlesShaderData::get_native_source_code() const { + return base_singleton->particles_shader.shader.version_get_native_source_code(version); +} + RendererStorageRD::ParticlesShaderData::ParticlesShaderData() { valid = false; } |