fix walk freeze, fix some texts displaying in pink

This commit is contained in:
Eduardo Bart
2012-01-19 14:23:24 -02:00
parent 3725577aac
commit 9450fab9e7
6 changed files with 19 additions and 7 deletions

View File

@@ -134,5 +134,11 @@ void Painter::setCompositionMode(Painter::CompositionMode compositionMode)
case CompositionMode_Add:
glBlendFunc(GL_ONE, GL_ONE);
break;
case CompositionMode_Replace:
glBlendFunc(GL_ONE, GL_ZERO);
break;
case CompositionMode_DestBlending:
glBlendFunc(GL_ONE_MINUS_DST_ALPHA, GL_DST_ALPHA);
break;
}
}

View File

@@ -34,7 +34,9 @@ public:
enum CompositionMode {
CompositionMode_Normal,
CompositionMode_Multiply,
CompositionMode_Add
CompositionMode_Add,
CompositionMode_Replace,
CompositionMode_DestBlending
};
void init();

View File

@@ -61,7 +61,7 @@ void UIWidget::drawText(const Rect& screenCoords)
m_textFramebuffer->bind();
Rect virtualTextRect(0, 0, boxSize);
virtualTextRect.translate(m_textOffset);
g_painter.setCompositionMode(Painter::CompositionMode_Add);
g_painter.setCompositionMode(Painter::CompositionMode_DestBlending);
m_font->renderText(m_text, virtualTextRect, m_textAlign, Fw::white);
g_painter.resetCompositionMode();
m_textFramebuffer->release();