translation_unit
comment "/***********************************************************"...
comment "/* rendering_device.cpp "...
comment "/***********************************************************"...
comment "/* This file is part of: "...
comment "/* GODOT ENGINE "...
comment "/* https://godotengine.org "...
comment "/***********************************************************"...
comment "/* Copyright (c) 2014-present Godot Engine contributors (see"...
comment "/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. "...
comment "/* "...
comment "/* Permission is hereby granted, free of charge, to any pers"...
comment "/* a copy of this software and associated documentation file"...
comment "/* \"Software\"), to deal in the Software without restriction,"...
comment "/* without limitation the rights to use, copy, modify, merge"...
comment "/* distribute, sublicense, and/or sell copies of the Softwar"...
comment "/* permit persons to whom the Software is furnished to do so"...
comment "/* the following conditions: "...
comment "/* "...
comment "/* The above copyright notice and this permission notice sha"...
comment "/* included in all copies or substantial portions of the Sof"...
comment "/* "...
comment "/* THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY"...
comment "/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARR"...
comment "/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON"...
comment "/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIA"...
comment "/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION O"...
comment "/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION "...
comment "/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. "...
comment "/***********************************************************"...
preproc_include
#include "#include"
string_literal
" "\""
string_content "rendering_device.h"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "rendering_device.compat.inc"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "rendering_device_binds.h"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "shader_include_db.h"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "core/config/project_settings.h"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "core/io/dir_access.h"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "core/io/file_access.h"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "core/object/class_db.h"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "core/os/os.h"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "core/profiling/profiling.h"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "core/templates/fixed_vector.h"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "modules/modules_enabled.gen.h"
" "\""
preproc_include
#include "#include"
string_literal
" "\""
string_content "servers/rendering/rendering_shader_container.h"
" "\""
preproc_ifdef
#ifdef "#ifdef"
identifier "MODULE_GLSLANG_ENABLED"
preproc_include
#include "#include"
string_literal
" "\""
string_content "modules/glslang/shader_compile.h"
" "\""
#endif "#endif"
preproc_def
#define "#define"
identifier "FORCE_SEPARATE_PRESENT_QUEUE"
preproc_arg "0"
preproc_def
#define "#define"
identifier "PRINT_FRAMEBUFFER_FORMAT"
preproc_arg "0"
preproc_def
#define "#define"
identifier "ERR_RENDER_THREAD_MSG"
preproc_arg "String(\"This function (\") + String(__func__) + String(\") can"...
preproc_function_def
#define "#define"
identifier "ERR_RENDER_THREAD_GUARD"
preproc_params
( "("
) ")"
preproc_arg "ERR_FAIL_COND_MSG(render_thread_id != Thread::get_caller_id("...
preproc_function_def
#define "#define"
identifier "ERR_RENDER_THREAD_GUARD_V"
preproc_params
( "("
identifier "m_ret"
) ")"
preproc_arg "ERR_FAIL_COND_V_MSG(render_thread_id != Thread::get_caller_i"...
comment "/**************************/"
comment "/**** HELPER FUNCTIONS ****/"
comment "/**************************/"
function_definition (+180 nodes collapsed)
function_definition (+107 nodes collapsed)
function_definition (+127 nodes collapsed)
comment "/**************************/"
comment "/**** RENDERING DEVICE ****/"
comment "/**************************/"
comment "// When true, the command graph will attempt to reorder the "...
comment "// the commands automatically. This should improve rendering"...
comment "//"
comment "// This behavior can be disabled if it's suspected that the "...
comment "// the commands is desired (e.g. debugging)."
preproc_def
#define "#define"
identifier "RENDER_GRAPH_REORDER"
preproc_arg "1"
comment "// Synchronization barriers are issued between the graph's l"...
comment "// it's suspected that the graph is not doing this correctly"...
comment "// between the synchronization levels. This setting will hav"...
comment "// debugging purposes."
preproc_def
#define "#define"
identifier "RENDER_GRAPH_FULL_BARRIERS"
preproc_arg "0"
comment "// The command graph can automatically issue secondary comma"...
comment "// size threshold. This can be very beneficial towards reduc"...
comment "// this setting is not enabled by default as it's been shown"...
preproc_def
#define "#define"
identifier "SECONDARY_COMMAND_BUFFERS_PER_FRAME"
preproc_arg "0"
declaration
type_identifier "RenderingDevice"
init_declarator
pointer_declarator
* "*"
qualified_identifier
namespace_identifier "RenderingDevice"
:: "::"
identifier "singleton"
= "="
null
nullptr "nullptr"
; ";"
function_definition
type_identifier "RenderingDevice"
pointer_declarator
* "*"
function_declarator
qualified_identifier
namespace_identifier "RenderingDevice"
:: "::"
identifier "get_singleton"
parameter_list
( "("
) ")"
compound_statement
{ "{"
return_statement
return "return"
identifier "singleton"
; ";"
} "}"
comment "/***************************/"
comment "/**** ID INFRASTRUCTURE ****/"
comment "/***************************/"
function_definition (+170 nodes collapsed)
function_definition (+241 nodes collapsed)
comment "/*******************************/"
comment "/**** SHADER INFRASTRUCTURE ****/"
comment "/*******************************/"
function_definition (+160 nodes collapsed)
function_definition (+84 nodes collapsed)
comment "/********************************/"
comment "/**** ACCELERATION STRUCTURE ****/"
comment "/********************************/"
function_definition (+938 nodes collapsed)
function_definition (+209 nodes collapsed)
function_definition (+286 nodes collapsed)
function_definition (+307 nodes collapsed)
function_definition (+380 nodes collapsed)
function_definition (+354 nodes collapsed)
comment "/***************************/"
comment "/**** BUFFER MANAGEMENT ****/"
comment "/***************************/"
function_definition (+237 nodes collapsed)
function_definition (+256 nodes collapsed)
function_definition (+164 nodes collapsed)
function_definition (+637 nodes collapsed)
function_definition (+349 nodes collapsed)
function_definition (+338 nodes collapsed)
function_definition (+753 nodes collapsed)
function_definition (+524 nodes collapsed)
function_definition (+110 nodes collapsed)
function_definition (+43 nodes collapsed)
function_definition (+260 nodes collapsed)
function_definition (+390 nodes collapsed)
function_definition (+781 nodes collapsed)
function_definition (+99 nodes collapsed)
function_definition (+78 nodes collapsed)
function_definition (+64 nodes collapsed)
function_definition (+525 nodes collapsed)
function_definition (+403 nodes collapsed)
comment "/*****************/"
comment "/**** TEXTURE ****/"
comment "/*****************/"
function_definition (+2691 nodes collapsed)
function_definition (+822 nodes collapsed)
function_definition (+429 nodes collapsed)
function_definition (+1518 nodes collapsed)
function_definition (+197 nodes collapsed)
function_definition (+190 nodes collapsed)
function_definition (+60 nodes collapsed)
function_definition (+59 nodes collapsed)
function_definition (+59 nodes collapsed)
function_definition (+83 nodes collapsed)
function_definition (+1462 nodes collapsed)
function_definition (+1390 nodes collapsed)
function_definition (+51 nodes collapsed)
function_definition (+199 nodes collapsed)
function_definition (+243 nodes collapsed)
function_definition (+1320 nodes collapsed)
function_definition (+222 nodes collapsed)
function_definition (+53 nodes collapsed)
function_definition (+85 nodes collapsed)
function_definition (+222 nodes collapsed)
function_definition (+184 nodes collapsed)
function_definition (+242 nodes collapsed)
function_definition (+1154 nodes collapsed)
function_definition (+1301 nodes collapsed)
function_definition (+65 nodes collapsed)
function_definition (+36 nodes collapsed)
function_definition (+214 nodes collapsed)
function_definition (+76 nodes collapsed)
preproc_ifdef (+31 nodes collapsed)
function_definition (+858 nodes collapsed)
function_definition (+504 nodes collapsed)
function_definition (+133 nodes collapsed)
function_definition (+58 nodes collapsed)
function_definition (+218 nodes collapsed)
function_definition (+128 nodes collapsed)
comment "/*********************/"
comment "/**** FRAMEBUFFER ****/"
comment "/*********************/"
function_definition (+4081 nodes collapsed)
function_definition (+145 nodes collapsed)
function_definition (+60 nodes collapsed)
function_definition (+65 nodes collapsed)
function_definition (+60 nodes collapsed)
function_definition (+192 nodes collapsed)
function_definition (+22 nodes collapsed)
function_definition (+22 nodes collapsed)
function_definition
type_identifier "Size2i"
function_declarator
qualified_identifier
namespace_identifier "RenderingDevice"
:: "::"
identifier "vrs_get_texel_size"
parameter_list
( "("
) ")"
type_qualifier
const "const"
compound_statement
{ "{"
return_statement
return "return"
identifier "vrs_texel_size"
; ";"
} "}"
function_definition (+185 nodes collapsed)
function_definition (+513 nodes collapsed)
function_definition (+300 nodes collapsed)
function_definition (+110 nodes collapsed)
function_definition (+236 nodes collapsed)
function_definition (+311 nodes collapsed)
function_definition (+843 nodes collapsed)
function_definition (+56 nodes collapsed)
function_definition (+60 nodes collapsed)
function_definition (+32 nodes collapsed)
function_definition (+72 nodes collapsed)
comment "/*****************/"
comment "/**** SAMPLER ****/"
comment "/*****************/"
function_definition (+201 nodes collapsed)
function_definition (+52 nodes collapsed)
comment "/***********************/"
comment "/**** VERTEX BUFFER ****/"
comment "/***********************/"
function_definition (+477 nodes collapsed)
comment "// Internally reference counted, this ID is warranted to be "...
function_definition (+602 nodes collapsed)
function_definition (+780 nodes collapsed)
function_definition (+781 nodes collapsed)
function_definition (+241 nodes collapsed)
comment "/****************/"
comment "/**** SHADER ****/"
comment "/****************/"
comment "// Keep the values in sync with the `UniformType` enum (file"...
declaration (+83 nodes collapsed)
function_definition (+296 nodes collapsed)
function_definition (+166 nodes collapsed)
function_definition (+56 nodes collapsed)
function_definition (+912 nodes collapsed)
function_definition (+55 nodes collapsed)
function_definition (+31 nodes collapsed)
function_definition (+54 nodes collapsed)
comment "/******************/"
comment "/**** UNIFORMS ****/"
comment "/******************/"
function_definition (+387 nodes collapsed)
function_definition (+85 nodes collapsed)
function_definition (+107 nodes collapsed)
function_definition (+5854 nodes collapsed)
function_definition (+30 nodes collapsed)
function_definition (+71 nodes collapsed)
function_definition (+26 nodes collapsed)
comment "/*******************/"
comment "/**** PIPELINES ****/"
comment "/*******************/"
function_definition (+1898 nodes collapsed)
function_definition (+30 nodes collapsed)
function_definition (+508 nodes collapsed)
function_definition (+30 nodes collapsed)
function_definition (+432 nodes collapsed)
function_definition (+30 nodes collapsed)
comment "/****************/"
comment "/**** SCREEN ****/"
comment "/****************/"
function_definition (+42 nodes collapsed)
function_definition (+169 nodes collapsed)
function_definition (+389 nodes collapsed)
function_definition (+71 nodes collapsed)
function_definition (+71 nodes collapsed)
function_definition (+96 nodes collapsed)
function_definition (+192 nodes collapsed)
function_definition (+124 nodes collapsed)
function_definition (+154 nodes collapsed)
comment "/*******************/"
comment "/**** DRAW LIST ****/"
comment "/*******************/"
function_definition (+418 nodes collapsed)
function_definition (+84 nodes collapsed)
function_definition (+1405 nodes collapsed)
preproc_ifdef (+103 nodes collapsed)
function_definition (+55 nodes collapsed)
function_definition (+794 nodes collapsed)
function_definition (+449 nodes collapsed)
function_definition (+231 nodes collapsed)
function_definition (+987 nodes collapsed)
function_definition (+236 nodes collapsed)
function_definition (+51 nodes collapsed)
function_definition (+145 nodes collapsed)
function_definition (+1631 nodes collapsed)
function_definition (+1113 nodes collapsed)
function_definition (+79 nodes collapsed)
function_definition (+116 nodes collapsed)
function_definition (+50 nodes collapsed)
function_definition (+25 nodes collapsed)
function_definition (+108 nodes collapsed)
preproc_ifdef (+39 nodes collapsed)
function_definition (+38 nodes collapsed)
function_definition (+48 nodes collapsed)
function_definition (+199 nodes collapsed)
comment "/***************************/"
comment "/**** RAYTRACING LISTS ****/"
comment "/**************************/"
function_definition (+123 nodes collapsed)
function_definition (+644 nodes collapsed)
function_definition (+268 nodes collapsed)
function_definition (+203 nodes collapsed)
function_definition (+842 nodes collapsed)
function_definition (+53 nodes collapsed)
comment "/***********************/"
comment "/**** COMPUTE LISTS ****/"
comment "/***********************/"
function_definition (+83 nodes collapsed)
function_definition (+704 nodes collapsed)
function_definition (+417 nodes collapsed)
function_definition (+203 nodes collapsed)
function_definition (+1353 nodes collapsed)
function_definition (+295 nodes collapsed)
function_definition (+1145 nodes collapsed)
function_definition (+186 nodes collapsed)
function_definition (+53 nodes collapsed)
preproc_ifdef (+71 nodes collapsed)
comment "/*************************/"
comment "/**** TRANSFER WORKER ****/"
comment "/*************************/"
function_definition (+69 nodes collapsed)
function_definition (+958 nodes collapsed)
function_definition (+75 nodes collapsed)
function_definition (+41 nodes collapsed)
function_definition (+152 nodes collapsed)
function_definition (+99 nodes collapsed)
function_definition (+114 nodes collapsed)
function_definition (+76 nodes collapsed)
function_definition (+58 nodes collapsed)
function_definition (+58 nodes collapsed)
function_definition (+123 nodes collapsed)
function_definition (+58 nodes collapsed)
function_definition (+222 nodes collapsed)
function_definition (+92 nodes collapsed)
function_definition (+91 nodes collapsed)
function_definition (+115 nodes collapsed)
comment "/***********************/"
comment "/**** COMMAND GRAPH ****/"
comment "/***********************/"
function_definition (+669 nodes collapsed)
function_definition (+113 nodes collapsed)
function_definition (+96 nodes collapsed)
function_definition (+67 nodes collapsed)
function_definition (+135 nodes collapsed)
function_definition (+242 nodes collapsed)
function_definition (+110 nodes collapsed)
function_definition (+40 nodes collapsed)
comment "/**************************/"
comment "/**** FRAME MANAGEMENT ****/"
comment "/**************************/"
function_definition (+40 nodes collapsed)
function_definition (+1649 nodes collapsed)
comment "// The full list of resources that can be named is in the Vk"...
comment "// We just expose the resources that are owned and can be ac"...
function_definition (+895 nodes collapsed)
preproc_ifdef
#ifdef "#ifdef"
identifier "DEV_ENABLED"
expression_statement
assignment_expression
subscript_expression
identifier "resource_names"
subscript_argument_list
[ "["
identifier "p_id"
] "]"
= "="
identifier "p_name"
; ";"
#endif "#endif"
ERROR
} "}"
function_definition (+48 nodes collapsed)
function_definition (+73 nodes collapsed)
preproc_ifdef (+39 nodes collapsed)
function_definition (+30 nodes collapsed)
function_definition (+24 nodes collapsed)
function_definition (+22 nodes collapsed)
function_definition (+33 nodes collapsed)
function_definition (+26 nodes collapsed)
function_definition (+27 nodes collapsed)
function_definition (+26 nodes collapsed)
function_definition (+26 nodes collapsed)
function_definition (+108 nodes collapsed)
function_definition (+67 nodes collapsed)
function_definition (+62 nodes collapsed)
function_definition (+1035 nodes collapsed)
function_definition (+26 nodes collapsed)
function_definition (+85 nodes collapsed)
function_definition (+563 nodes collapsed)
function_definition (+228 nodes collapsed)
function_definition (+396 nodes collapsed)
function_definition (+230 nodes collapsed)
function_definition (+1166 nodes collapsed)
function_definition (+50 nodes collapsed)
function_definition (+67 nodes collapsed)
ERROR (+20951 nodes collapsed)