summaryrefslogtreecommitdiff
path: root/src/client/shadows/shadowsshadercallbacks.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/shadows/shadowsshadercallbacks.h')
-rw-r--r--src/client/shadows/shadowsshadercallbacks.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/client/shadows/shadowsshadercallbacks.h b/src/client/shadows/shadowsshadercallbacks.h
index 43ad489f2..3549567c3 100644
--- a/src/client/shadows/shadowsshadercallbacks.h
+++ b/src/client/shadows/shadowsshadercallbacks.h
@@ -21,14 +21,28 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "irrlichttypes_extrabloated.h"
#include <IMaterialRendererServices.h>
#include <IShaderConstantSetCallBack.h>
+#include "client/shader.h"
class ShadowDepthShaderCB : public video::IShaderConstantSetCallBack
{
public:
+ ShadowDepthShaderCB() :
+ m_light_mvp_setting("LightMVP"),
+ m_map_resolution_setting("MapResolution"),
+ m_max_far_setting("MaxFar"),
+ m_color_map_sampler_setting("ColorMapSampler")
+ {}
+
void OnSetMaterial(const video::SMaterial &material) override {}
void OnSetConstants(video::IMaterialRendererServices *services,
s32 userData) override;
f32 MaxFar{2048.0f}, MapRes{1024.0f};
+
+private:
+ CachedVertexShaderSetting<f32, 16> m_light_mvp_setting;
+ CachedVertexShaderSetting<f32> m_map_resolution_setting;
+ CachedVertexShaderSetting<f32> m_max_far_setting;
+ CachedPixelShaderSetting<s32> m_color_map_sampler_setting;
};