From 99064d57db563f85f0585aac3fa056b980b63cfe Mon Sep 17 00:00:00 2001 From: clayjohn Date: Tue, 16 Nov 2021 07:25:42 -0800 Subject: New OpenGL batching canvas renderer --- servers/rendering/renderer_rd/shader_compiler_rd.h | 133 --------------------- 1 file changed, 133 deletions(-) delete mode 100644 servers/rendering/renderer_rd/shader_compiler_rd.h (limited to 'servers/rendering/renderer_rd/shader_compiler_rd.h') diff --git a/servers/rendering/renderer_rd/shader_compiler_rd.h b/servers/rendering/renderer_rd/shader_compiler_rd.h deleted file mode 100644 index 5670d881f6..0000000000 --- a/servers/rendering/renderer_rd/shader_compiler_rd.h +++ /dev/null @@ -1,133 +0,0 @@ -/*************************************************************************/ -/* shader_compiler_rd.h */ -/*************************************************************************/ -/* This file is part of: */ -/* GODOT ENGINE */ -/* https://godotengine.org */ -/*************************************************************************/ -/* Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. */ -/* Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). */ -/* */ -/* Permission is hereby granted, free of charge, to any person obtaining */ -/* a copy of this software and associated documentation files (the */ -/* "Software"), to deal in the Software without restriction, including */ -/* without limitation the rights to use, copy, modify, merge, publish, */ -/* distribute, sublicense, and/or sell copies of the Software, and to */ -/* permit persons to whom the Software is furnished to do so, subject to */ -/* the following conditions: */ -/* */ -/* The above copyright notice and this permission notice shall be */ -/* included in all copies or substantial portions of the Software. */ -/* */ -/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ -/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ -/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ -/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ -/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ -/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ -/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -/*************************************************************************/ - -#ifndef SHADER_COMPILER_RD_H -#define SHADER_COMPILER_RD_H - -#include "core/templates/pair.h" -#include "servers/rendering/shader_language.h" -#include "servers/rendering/shader_types.h" -#include "servers/rendering_server.h" - -class ShaderCompilerRD { -public: - enum Stage { - STAGE_VERTEX, - STAGE_FRAGMENT, - STAGE_COMPUTE, - STAGE_MAX - }; - - struct IdentifierActions { - Map entry_point_stages; - - Map> render_mode_values; - Map render_mode_flags; - Map usage_flag_pointers; - Map write_flag_pointers; - - Map *uniforms; - }; - - struct GeneratedCode { - Vector defines; - struct Texture { - StringName name; - ShaderLanguage::DataType type; - ShaderLanguage::ShaderNode::Uniform::Hint hint; - ShaderLanguage::TextureFilter filter; - ShaderLanguage::TextureRepeat repeat; - bool global; - int array_size; - }; - - Vector texture_uniforms; - - Vector uniform_offsets; - uint32_t uniform_total_size; - String uniforms; - String stage_globals[STAGE_MAX]; - - Map code; - - bool uses_global_textures; - bool uses_fragment_time; - bool uses_vertex_time; - }; - - struct DefaultIdentifierActions { - Map renames; - Map render_mode_defines; - Map usage_defines; - Map custom_samplers; - ShaderLanguage::TextureFilter default_filter; - ShaderLanguage::TextureRepeat default_repeat; - String sampler_array_name; - int base_texture_binding_index = 0; - int texture_layout_set = 0; - String base_uniform_string; - String global_buffer_array_variable; - String instance_uniform_index_variable; - uint32_t base_varying_index = 0; - bool apply_luminance_multiplier = false; - }; - -private: - ShaderLanguage parser; - - String _get_sampler_name(ShaderLanguage::TextureFilter p_filter, ShaderLanguage::TextureRepeat p_repeat); - - void _dump_function_deps(const ShaderLanguage::ShaderNode *p_node, const StringName &p_for_func, const Map &p_func_code, String &r_to_add, Set &added); - String _dump_node_code(const ShaderLanguage::Node *p_node, int p_level, GeneratedCode &r_gen_code, IdentifierActions &p_actions, const DefaultIdentifierActions &p_default_actions, bool p_assigning, bool p_scope = true); - - const ShaderLanguage::ShaderNode *shader; - const ShaderLanguage::FunctionNode *function; - StringName current_func_name; - StringName time_name; - Set texture_functions; - - Set used_name_defines; - Set used_flag_pointers; - Set used_rmode_defines; - Set internal_functions; - Set fragment_varyings; - - DefaultIdentifierActions actions; - - static ShaderLanguage::DataType _get_variable_type(const StringName &p_type); - -public: - Error compile(RS::ShaderMode p_mode, const String &p_code, IdentifierActions *p_actions, const String &p_path, GeneratedCode &r_gen_code); - - void initialize(DefaultIdentifierActions p_actions); - ShaderCompilerRD(); -}; - -#endif // SHADERCOMPILERRD_H -- cgit v1.2.3