So I am trying to make the screen draw two shaders, right? Here's the shader code in the Title Screen in Main.cpp of my repository(not committed yet):
if (sf::Shader::IsAvailable()){
Water.SetTexture("screen", sf::Shader::CurrentTexture);
Water.SetParameter("time", Clock.GetElapsedTime()*1000.f);
Blend.SetTexture("screen", sf::Shader::CurrentTexture);
Blend.SetParameter("color", 0.5, 0.0, 0.5);
Blend.SetParameter("alpha", 1.0);
sf::RenderImage Screen;
Screen.Draw(BG);
Screen.Display();
Window.Draw(sf::Sprite(Screen.GetImage()));
}
Guess what? I just get a white screen. Why is this? When I replace the Window.Draw line with Window.Draw(BG); it works fine. When I use this code, it absolutely fails. What am I doing wrong? I'm drawing the BG to the RenderImage, Displaying the RenderImage, then drawing the RenderImage to the Screen, and I get White. :S