2016-07-26 19:27:02 +00:00
|
|
|
#ifndef __GL_PRESENTSHADER_H
|
|
|
|
#define __GL_PRESENTSHADER_H
|
|
|
|
|
|
|
|
#include "gl_shaderprogram.h"
|
|
|
|
|
2016-10-09 17:05:50 +00:00
|
|
|
class FPresentShaderBase
|
2016-07-26 19:27:02 +00:00
|
|
|
{
|
|
|
|
public:
|
2016-10-09 17:05:50 +00:00
|
|
|
virtual void Bind() = 0;
|
2016-07-26 19:27:02 +00:00
|
|
|
|
2016-08-15 22:01:18 +00:00
|
|
|
FBufferedUniform1f InvGamma;
|
2016-07-26 19:27:02 +00:00
|
|
|
FBufferedUniform1f Contrast;
|
|
|
|
FBufferedUniform1f Brightness;
|
2016-08-08 14:06:02 +00:00
|
|
|
FBufferedUniform2f Scale;
|
2016-07-26 19:27:02 +00:00
|
|
|
|
2016-10-09 17:05:50 +00:00
|
|
|
protected:
|
|
|
|
virtual void Init(const char * vtx_shader_name, const char * program_name);
|
2016-07-26 19:27:02 +00:00
|
|
|
FShaderProgram mShader;
|
|
|
|
};
|
|
|
|
|
2016-10-09 17:05:50 +00:00
|
|
|
class FPresentShader : public FPresentShaderBase
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
void Bind() override;
|
|
|
|
|
|
|
|
FBufferedUniformSampler InputTexture;
|
|
|
|
};
|
|
|
|
|
2016-07-26 19:27:02 +00:00
|
|
|
#endif
|