From 3d62bd5fde9e8127ad0c0e53959cb8c98898c62d Mon Sep 17 00:00:00 2001 From: Xottab-DUTY Date: Wed, 8 Jul 2020 19:45:44 +0500 Subject: [PATCH] Fixed tesselation shaders macros not being defined Thanks @ShokerStlk for spotting the bug. m_ShaderOptions was/were forgotten in 31accf9bc4c17a9883925e9ae5186a200e7fd412 --- src/Layers/xrRenderPC_R4/r4_shaders.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/Layers/xrRenderPC_R4/r4_shaders.cpp b/src/Layers/xrRenderPC_R4/r4_shaders.cpp index 0992f275bf2..ef72d9a4cac 100644 --- a/src/Layers/xrRenderPC_R4/r4_shaders.cpp +++ b/src/Layers/xrRenderPC_R4/r4_shaders.cpp @@ -181,6 +181,15 @@ class shader_options_holder D3D_SHADER_MACRO m_options[128]; public: + void add(const xr_vector& macros) + { + for (auto macro : macros) + { + m_options[pos] = std::move(macro); + ++pos; + } + } + void add(cpcstr name, cpcstr value) { m_options[pos] = { name, value }; @@ -222,6 +231,9 @@ HRESULT CRender::shader_compile(pcstr name, IReader* fs, pcstr pFunctionName, sh_name.append(option); }; + // External defines + options.add(m_ShaderOptions); + // Shadow map size { xr_itoa(o.smapsize, c_smap, 10);