mirror of
https://github.com/lubosz/overte.git
synced 2025-04-25 01:23:57 +02:00
Final intensity adjustments
This commit is contained in:
parent
2974e05cf2
commit
f6ffbef60d
3 changed files with 11 additions and 12 deletions
|
@ -332,11 +332,11 @@ void Antialiasing::run(const render::RenderContextPointer& renderContext, const
|
|||
|
||||
if (!_antialiasingBuffers->get(0)) {
|
||||
// Link the antialiasing FBO to texture
|
||||
auto format = sourceBuffer->getRenderBuffer(0)->getTexelFormat();
|
||||
auto defaultSampler = gpu::Sampler(gpu::Sampler::FILTER_MIN_MAG_LINEAR, gpu::Sampler::WRAP_CLAMP);
|
||||
for (int i = 0; i < 2; i++) {
|
||||
auto& antiAliasingBuffer = _antialiasingBuffers->edit(i);
|
||||
antiAliasingBuffer = gpu::FramebufferPointer(gpu::Framebuffer::create("antialiasing"));
|
||||
auto format = sourceBuffer->getRenderBuffer(0)->getTexelFormat();
|
||||
auto defaultSampler = gpu::Sampler(gpu::Sampler::FILTER_MIN_MAG_LINEAR, gpu::Sampler::WRAP_CLAMP);
|
||||
_antialiasingTextures[i] = gpu::Texture::createRenderBuffer(format, width, height, gpu::Texture::SINGLE_MIP, defaultSampler);
|
||||
antiAliasingBuffer->setRenderBuffer(0, _antialiasingTextures[i]);
|
||||
}
|
||||
|
|
|
@ -23,5 +23,5 @@ void main(void) {
|
|||
vec4 blur1 = texture(blurMap1, varTexCoord0);
|
||||
vec4 blur2 = texture(blurMap2, varTexCoord0);
|
||||
|
||||
outFragColor = vec4(blur0.rgb*intensity.x+blur1.rgb*intensity.y+blur2.rgb*intensity.z, 1.0f);
|
||||
outFragColor = vec4(blur0.rgb*intensity.x + blur1.rgb*intensity.y + blur2.rgb*intensity.z, 1.0f);
|
||||
}
|
||||
|
|
|
@ -98,10 +98,9 @@ BloomApply::BloomApply() : _intensities{ 1.0f, 1.0f, 1.0f } {
|
|||
}
|
||||
|
||||
void BloomApply::configure(const Config& config) {
|
||||
_intensities.x = 2.0f * M_PI * config.sigma * config.sigma;
|
||||
_intensities.y = _intensities.x*_intensities.x;
|
||||
_intensities.z = _intensities.y*_intensities.x;
|
||||
_intensities *= config.intensity / 3.0f;
|
||||
_intensities.x = config.intensity / 3.0f;
|
||||
_intensities.y = _intensities.x;
|
||||
_intensities.z = _intensities.x;
|
||||
}
|
||||
|
||||
void BloomApply::run(const render::RenderContextPointer& renderContext, const Inputs& inputs) {
|
||||
|
@ -109,10 +108,10 @@ void BloomApply::run(const render::RenderContextPointer& renderContext, const In
|
|||
assert(renderContext->args->hasViewFrustum());
|
||||
RenderArgs* args = renderContext->args;
|
||||
|
||||
static auto BLUR0_SLOT = 0;
|
||||
static auto BLUR1_SLOT = 1;
|
||||
static auto BLUR2_SLOT = 2;
|
||||
static auto INTENSITY_SLOT = 3;
|
||||
static const auto BLUR0_SLOT = 0;
|
||||
static const auto BLUR1_SLOT = 1;
|
||||
static const auto BLUR2_SLOT = 2;
|
||||
static const auto INTENSITY_SLOT = 3;
|
||||
|
||||
if (!_pipeline) {
|
||||
auto vs = gpu::StandardShaderLib::getDrawTransformUnitQuadVS();
|
||||
|
@ -317,7 +316,7 @@ void BloomConfig::setSize(float value) {
|
|||
assert(blurJobIt != task->_jobs.end());
|
||||
auto& gaussianBlur = blurJobIt->edit<render::BlurGaussian>();
|
||||
auto gaussianBlurParams = gaussianBlur.getParameters();
|
||||
gaussianBlurParams->setFilterGaussianTaps(5, sigma);
|
||||
gaussianBlurParams->setFilterGaussianTaps(7, sigma);
|
||||
}
|
||||
auto blurJobIt = task->getJob("BloomApply");
|
||||
assert(blurJobIt != task->_jobs.end());
|
||||
|
|
Loading…
Reference in a new issue