From 442e48b84fea511badf108cedc2a6b43d79fd852 Mon Sep 17 00:00:00 2001 From: x2048 Date: Thu, 12 Aug 2021 20:07:09 +0200 Subject: Move updating shadows outside of RenderingCore::drawAll. (#11491) Fixes indirect rendering modes such as some 3D modes mentioned in #11437 and undersampled rendering. Does not fully fix anaglyph 3d mode. --- src/client/shadows/shadowsScreenQuad.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/client/shadows/shadowsScreenQuad.h') diff --git a/src/client/shadows/shadowsScreenQuad.h b/src/client/shadows/shadowsScreenQuad.h index e6cc95957..c18be9a2b 100644 --- a/src/client/shadows/shadowsScreenQuad.h +++ b/src/client/shadows/shadowsScreenQuad.h @@ -21,6 +21,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "irrlichttypes_extrabloated.h" #include #include +#include "client/shader.h" class shadowScreenQuad { @@ -38,8 +39,16 @@ private: class shadowScreenQuadCB : public video::IShaderConstantSetCallBack { public: - shadowScreenQuadCB(){}; + shadowScreenQuadCB() : + m_sm_client_map_setting("ShadowMapClientMap"), + m_sm_client_map_trans_setting("ShadowMapClientMapTraslucent"), + m_sm_dynamic_sampler_setting("ShadowMapSamplerdynamic") + {} virtual void OnSetConstants(video::IMaterialRendererServices *services, s32 userData); +private: + CachedPixelShaderSetting m_sm_client_map_setting; + CachedPixelShaderSetting m_sm_client_map_trans_setting; + CachedPixelShaderSetting m_sm_dynamic_sampler_setting; }; -- cgit v1.2.3