qzdoom/src/hwrenderer/postprocessing/hw_shadowmapshader.h

34 lines
792 B
C
Raw Normal View History

2017-03-01 02:33:53 +00:00
#ifndef __GL_SHADOWMAPSHADER_H
#define __GL_SHADOWMAPSHADER_H
#include "hwrenderer/postprocessing/hw_shaderprogram.h"
2017-03-01 02:33:53 +00:00
class FShadowMapShader
{
public:
void Bind(IRenderQueue *q);
2017-03-01 02:33:53 +00:00
struct UniformBlock
{
float ShadowmapQuality;
float Padding0, Padding1, Padding2;
static std::vector<UniformFieldDesc> Desc()
{
return
{
{ "ShadowmapQuality", UniformType::Float, offsetof(UniformBlock, ShadowmapQuality) },
{ "Padding0", UniformType::Float, offsetof(UniformBlock, Padding0) },
{ "Padding1", UniformType::Float, offsetof(UniformBlock, Padding1) },
{ "Padding2", UniformType::Float, offsetof(UniformBlock, Padding2) },
};
}
};
ShaderUniforms<UniformBlock, POSTPROCESS_BINDINGPOINT> Uniforms;
2017-03-01 02:33:53 +00:00
private:
std::unique_ptr<IShaderProgram> mShader;
2017-03-01 02:33:53 +00:00
};
#endif