enable vignette during races
This commit is contained in:
parent
3cec4b25fb
commit
d7caebe847
@ -4,7 +4,7 @@ uniform sampler2D tex;
|
|||||||
uniform sampler2D logluminancetex;
|
uniform sampler2D logluminancetex;
|
||||||
uniform float exposure = .09;
|
uniform float exposure = .09;
|
||||||
uniform float Lwhite = 1.;
|
uniform float Lwhite = 1.;
|
||||||
uniform float vignette_weight = 0.;
|
uniform float vignette_weight;
|
||||||
|
|
||||||
out vec4 FragColor;
|
out vec4 FragColor;
|
||||||
|
|
||||||
|
@ -535,11 +535,11 @@ static void renderGodRay(GLuint tex, const core::vector2df &sunpos)
|
|||||||
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
|
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void toneMap(FrameBuffer &fbo, GLuint rtt)
|
static void toneMap(FrameBuffer &fbo, GLuint rtt, float vignette_weight)
|
||||||
{
|
{
|
||||||
fbo.Bind();
|
fbo.Bind();
|
||||||
FullScreenShader::ToneMapShader::getInstance()->SetTextureUnits(rtt);
|
FullScreenShader::ToneMapShader::getInstance()->SetTextureUnits(rtt);
|
||||||
DrawFullScreenEffect<FullScreenShader::ToneMapShader>();
|
DrawFullScreenEffect<FullScreenShader::ToneMapShader>(vignette_weight);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void renderDoF(FrameBuffer &fbo, GLuint rtt)
|
static void renderDoF(FrameBuffer &fbo, GLuint rtt)
|
||||||
@ -737,7 +737,15 @@ FrameBuffer *PostProcessing::render(scene::ICameraSceneNode * const camnode, boo
|
|||||||
{
|
{
|
||||||
PROFILER_PUSH_CPU_MARKER("- Tonemap", 0xFF, 0x00, 0x00);
|
PROFILER_PUSH_CPU_MARKER("- Tonemap", 0xFF, 0x00, 0x00);
|
||||||
ScopedGPUTimer Timer(irr_driver->getGPUTimer(Q_TONEMAP));
|
ScopedGPUTimer Timer(irr_driver->getGPUTimer(Q_TONEMAP));
|
||||||
toneMap(*out_fbo, in_fbo->getRTT()[0]);
|
// only enable vignette during race
|
||||||
|
if(isRace)
|
||||||
|
{
|
||||||
|
toneMap(*out_fbo, in_fbo->getRTT()[0], 1.0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
toneMap(*out_fbo, in_fbo->getRTT()[0], 0.0);
|
||||||
|
}
|
||||||
std::swap(in_fbo, out_fbo);
|
std::swap(in_fbo, out_fbo);
|
||||||
PROFILER_POP_CPU_MARKER();
|
PROFILER_POP_CPU_MARKER();
|
||||||
}
|
}
|
||||||
|
@ -1569,7 +1569,7 @@ namespace FullScreenShader
|
|||||||
GL_FRAGMENT_SHADER, file_manager->getAsset("shaders/utils/getRGBfromCIEXxy.frag").c_str(),
|
GL_FRAGMENT_SHADER, file_manager->getAsset("shaders/utils/getRGBfromCIEXxy.frag").c_str(),
|
||||||
GL_FRAGMENT_SHADER, file_manager->getAsset("shaders/utils/getCIEXYZ.frag").c_str(),
|
GL_FRAGMENT_SHADER, file_manager->getAsset("shaders/utils/getCIEXYZ.frag").c_str(),
|
||||||
GL_FRAGMENT_SHADER, file_manager->getAsset("shaders/tonemap.frag").c_str());
|
GL_FRAGMENT_SHADER, file_manager->getAsset("shaders/tonemap.frag").c_str());
|
||||||
AssignUniforms();
|
AssignUniforms("vignette_weight");
|
||||||
|
|
||||||
AssignSamplerNames(Program, 0, "text");
|
AssignSamplerNames(Program, 0, "text");
|
||||||
}
|
}
|
||||||
|
@ -377,9 +377,10 @@ public:
|
|||||||
BloomBlendShader();
|
BloomBlendShader();
|
||||||
};
|
};
|
||||||
|
|
||||||
class ToneMapShader : public ShaderHelperSingleton<ToneMapShader>, public TextureRead<Nearest_Filtered>
|
class ToneMapShader : public ShaderHelperSingleton<ToneMapShader, float>, public TextureRead<Nearest_Filtered>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
||||||
ToneMapShader();
|
ToneMapShader();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user