diff options
author | Juan Linietsky <reduzio@gmail.com> | 2019-07-29 12:59:18 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2020-02-11 11:53:29 +0100 |
commit | c613ead5fa2361296cf8d9a80d4648492ff4e16f (patch) | |
tree | 974356b6840ecf764415d43277ef78ad3c6b6373 /modules | |
parent | 4fe3ee1730167b90ec8ae70c871c1dad032981d5 (diff) |
Added a spinlock template as well as a thread work pool class.
Also, optimized shader compilation to happen on threads.
Diffstat (limited to 'modules')
-rw-r--r-- | modules/glslang/register_types.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/modules/glslang/register_types.cpp b/modules/glslang/register_types.cpp index ef159e743d..843bd93c05 100644 --- a/modules/glslang/register_types.cpp +++ b/modules/glslang/register_types.cpp @@ -140,9 +140,6 @@ static PoolVector<uint8_t> _compile_shader_glsl(RenderingDevice::ShaderStage p_s ERR_FAIL_COND_V(p_language==RenderingDevice::SHADER_LANGUAGE_HLSL,ret); - // initialize in case it's not initialized. This is done once per thread - // and it's safe to call multiple times - glslang::InitializeProcess(); EShLanguage stages[RenderingDevice::SHADER_STAGE_MAX] = { EShLangVertex, EShLangFragment, @@ -229,6 +226,9 @@ static PoolVector<uint8_t> _compile_shader_glsl(RenderingDevice::ShaderStage p_s } void preregister_glslang_types() { + // initialize in case it's not initialized. This is done once per thread + // and it's safe to call multiple times + glslang::InitializeProcess(); RenderingDevice::shader_set_compile_function(_compile_shader_glsl); } @@ -236,5 +236,5 @@ void register_glslang_types() { } void unregister_glslang_types() { - + glslang::FinalizeProcess(); } |