Use a A8R8G8B8 fbo to apply mlaa.

This commit is contained in:
Vincent Lejeune
2014-04-03 00:55:30 +02:00
parent 964d9a25f1
commit afa2e2e98d
3 changed files with 7 additions and 1 deletions

View File

@@ -846,8 +846,12 @@ void PostProcessing::render()
if (UserConfigParams::m_mlaa) // MLAA. Must be the last pp filter.
{
PROFILER_PUSH_CPU_MARKER("- MLAA", 0xFF, 0x00, 0x00);
glDisable(GL_BLEND);
drv->setRenderTarget(irr_driver->getRTT(RTT_FINAL_COLOR), false, false);
renderPassThrough(in);
drv->setRenderTarget(out, false, false);
applyMLAA(in, out);
applyMLAA(irr_driver->getRTT(RTT_FINAL_COLOR), out);
in = irr_driver->getRTT(RTT_FINAL_COLOR);
PROFILER_POP_CPU_MARKER();
}

View File

@@ -59,6 +59,7 @@ RTT::RTT()
rtts[RTT_TMP4] = drv->addRenderTargetTexture(res, "rtt.tmp4", ECF_R16F, stencil);
rtts[RTT_NORMAL_AND_DEPTH] = drv->addRenderTargetTexture(res, "rtt.normal_and_depth", ECF_G16R16F, stencil);
rtts[RTT_COLOR] = drv->addRenderTargetTexture(res, "rtt.color", ECF_A16B16G16R16F, stencil);
rtts[RTT_FINAL_COLOR] = drv->addRenderTargetTexture(res, "rtt.finalcolor", ECF_A8R8G8B8, stencil);
rtts[RTT_LOG_LUMINANCE] = drv->addRenderTargetTexture(shadowsize0, "rtt.logluminance", ECF_R16F, stencil);
rtts[RTT_HALF1] = drv->addRenderTargetTexture(half, "rtt.half1", ECF_A16B16G16R16F, stencil);

View File

@@ -62,6 +62,7 @@ enum TypeRTT
RTT_HALF_SOFT,
RTT_DISPLACE,
RTT_FINAL_COLOR,
RTT_COUNT
};