mirror of
https://github.com/godotengine/godot.git
synced 2025-10-19 16:03:29 +00:00
Implement asynchronous transfer queues, thread guards on RenderingDevice. Add ubershaders and rework pipeline caches for Forward+ and Mobile.
- Implements asynchronous transfer queues from PR #87590. - Adds ubershaders that can run with specialization constants specified as push constants. - Pipelines with specialization constants can compile in the background. - Added monitoring for pipeline compilations. - Materials and shaders can now be created asynchronously on background threads. - Meshes that are loaded on background threads can also compile pipelines as part of the loading process.
This commit is contained in:
parent
1917bc3454
commit
e2c6daf7ef
78 changed files with 5218 additions and 2544 deletions
|
@ -1354,7 +1354,7 @@ String ShaderCompiler::_dump_node_code(const SL::Node *p_node, int p_level, Gene
|
|||
}
|
||||
code += ")";
|
||||
if (is_screen_texture && !texture_func_returns_data && actions.apply_luminance_multiplier) {
|
||||
code = "(" + code + " * vec4(vec3(sc_luminance_multiplier), 1.0))";
|
||||
code = "(" + code + " * vec4(vec3(sc_luminance_multiplier()), 1.0))";
|
||||
}
|
||||
if (is_normal_roughness_texture && !texture_func_returns_data) {
|
||||
code = "normal_roughness_compatibility(" + code + ")";
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue