Correction of the ssao vs fog bug (thanks to vlj). Minor tweaks for fps display and debug menu
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@14709 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
@@ -1372,7 +1372,7 @@ void IrrDriver::displayFPS()
|
||||
{
|
||||
gui::IGUIFont* font = GUIEngine::getFont();
|
||||
|
||||
irr_driver->getVideoDriver()->draw2DRectangle(video::SColor(150, 44, 34, 90),core::rect< s32 >(75,0,800,50),NULL);
|
||||
irr_driver->getVideoDriver()->draw2DRectangle(video::SColor(150, 96, 74, 196),core::rect< s32 >(75,0,800,50),NULL);
|
||||
|
||||
// We will let pass some time to let things settle before trusting FPS counter
|
||||
// even if we also ignore fps = 1, which tends to happen in first checks
|
||||
|
||||
@@ -219,21 +219,6 @@ void PostProcessing::renderSolid(const u32 cam)
|
||||
|
||||
const TypeRTT curssao = tick ? RTT_SSAO2 : RTT_SSAO1;
|
||||
|
||||
if (World::getWorld()->getTrack()->isFogEnabled())
|
||||
{
|
||||
m_material.MaterialType = irr_driver->getShader(ES_FOG);
|
||||
m_material.setTexture(0, irr_driver->getRTT(RTT_DEPTH));
|
||||
|
||||
// Overlay
|
||||
m_material.BlendOperation = EBO_ADD;
|
||||
m_material.MaterialTypeParam = pack_textureBlendFunc(EBF_SRC_ALPHA, EBF_ONE_MINUS_SRC_ALPHA);
|
||||
|
||||
drv->setRenderTarget(irr_driver->getRTT(RTT_COLOR), false, false);
|
||||
drawQuad(cam, m_material);
|
||||
|
||||
m_material.BlendOperation = EBO_NONE;
|
||||
m_material.MaterialTypeParam = 0;
|
||||
}
|
||||
|
||||
if (UserConfigParams::m_ssao == 1) // SSAO low
|
||||
{
|
||||
@@ -317,6 +302,24 @@ void PostProcessing::renderSolid(const u32 cam)
|
||||
m_material.BlendOperation = EBO_NONE;
|
||||
m_material.MaterialTypeParam = 0;
|
||||
}
|
||||
|
||||
if (World::getWorld()->getTrack()->isFogEnabled())
|
||||
{
|
||||
m_material.MaterialType = irr_driver->getShader(ES_FOG);
|
||||
m_material.setTexture(0, irr_driver->getRTT(RTT_DEPTH));
|
||||
|
||||
// Overlay
|
||||
m_material.BlendOperation = EBO_ADD;
|
||||
m_material.MaterialTypeParam = pack_textureBlendFunc(EBF_SRC_ALPHA, EBF_ONE_MINUS_SRC_ALPHA);
|
||||
|
||||
drv->setRenderTarget(irr_driver->getRTT(RTT_COLOR), false, false);
|
||||
drawQuad(cam, m_material);
|
||||
|
||||
m_material.BlendOperation = EBO_NONE;
|
||||
m_material.MaterialTypeParam = 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
tick++;
|
||||
tick %= 2;
|
||||
|
||||
@@ -2194,7 +2194,7 @@ core::recti Skin::draw3DWindowBackground(IGUIElement *element,
|
||||
void Skin::draw3DMenuPane (IGUIElement *element, const core::recti &rect,
|
||||
const core::recti *clip)
|
||||
{
|
||||
SColor color = SColor(150, 44, 34, 90);
|
||||
SColor color = SColor(150, 96, 74, 196);
|
||||
GUIEngine::getDriver()->draw2DRectangle(color, rect);
|
||||
} // draw3DMenuPane
|
||||
|
||||
|
||||
Reference in New Issue
Block a user