]> git.sesse.net Git - movit/blobdiff - overlay_effect.cpp
Fix an issue where a (cached) shader program could be used from multiple
[movit] / overlay_effect.cpp
index 09c16389cf39cece08c3c0fab88a0c839eb17592..3440f76bf6a5a415325c0b7eb9af7cd15c20b48d 100644 (file)
@@ -3,9 +3,19 @@
 
 using namespace std;
 
-OverlayEffect::OverlayEffect() {}
+namespace movit {
+
+OverlayEffect::OverlayEffect()
+       : swap_inputs(false)
+{
+       register_int("swap_inputs", (int *)&swap_inputs);
+}
 
 string OverlayEffect::output_fragment_shader()
 {
-       return read_file("overlay_effect.frag");
+       char buf[256];
+       snprintf(buf, sizeof(buf), "#define SWAP_INPUTS %d\n", swap_inputs);
+       return buf + read_file("overlay_effect.frag");
 }
+
+}  // namespace movit