Yep it's with m_bleed. Here you are.
void LightSystem::RenderLightTexture()
{
Vec2f viewSize(m_viewAABB.GetDims());
// Translate by negative camera coordinates. glLoadIdentity will not work, probably
// because SFML stores view transformations in the projection matrix
glTranslatef(m_viewAABB.GetLowerBound().x, m_viewAABB.GetLowerBound().y, 0.0f);
m_compositionTexture.getTexture().bind(&m_compositionTexture.getTexture());
// Set up color function to multiply the existing color with the render texture color
//glBlendFunc(GL_DST_ALPHA, GL_ZERO); // Seperate allows you to set color and alpha functions seperately
glBlendFunc(GL_DST_COLOR, GL_ONE);
glBegin(GL_QUADS);
glTexCoord2i(0, 0); glVertex2f(0.0f, 0.0f);
glTexCoord2i(1, 0); glVertex2f(viewSize.x, 0.0f);
glTexCoord2i(1, 1); glVertex2f(viewSize.x, viewSize.y);
glTexCoord2i(0, 1); glVertex2f(0.0f, viewSize.y);
glEnd();
if(m_useBloom)
{
m_bloomTexture.getTexture().bind(&m_bloomTexture.getTexture());
//glBlendFunc(GL_ONE, GL_ONE);
glBlendFunc(GL_DST_COLOR, GL_SRC_COLOR);
glBegin(GL_QUADS);
glTexCoord2i(0, 0); glVertex2f(0.0f, 0.0f);
glTexCoord2i(1, 0); glVertex2f(viewSize.x, 0.0f);
glTexCoord2i(1, 1); glVertex2f(viewSize.x, viewSize.y);
glTexCoord2i(0, 1); glVertex2f(0.0f, viewSize.y);
glEnd();
}
// Reset blend function
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
m_pWin->resetGLStates();
}
I modified blend modes. Minus of this is broken penumbra if you would change transparency.