X-Git-Url: https://git.sesse.net/?p=movit;a=blobdiff_plain;f=effect_chain.cpp;h=4dfa6921b4d610296d899dca4a6021e654f5798e;hp=85832db88541cfb90748dd55f8aca171a6621673;hb=7ead6f1c15daf8e5a70df583198a8ce58251b0d6;hpb=fdf859f872d87d0e2ae27e3ff34a8751145c2ae9;ds=sidebyside diff --git a/effect_chain.cpp b/effect_chain.cpp index 85832db..4dfa692 100644 --- a/effect_chain.cpp +++ b/effect_chain.cpp @@ -213,7 +213,12 @@ void EffectChain::render_to_screen(unsigned char *src) assert(false); } - glTexImage2D(GL_TEXTURE_2D, 0, internal_format, width, height, 0, format, GL_UNSIGNED_BYTE, src); + static bool first = true; + if (first) { + glTexImage2D(GL_TEXTURE_2D, 0, internal_format, width, height, 0, format, GL_UNSIGNED_BYTE, src); + } else { + glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, width, height, 0, format, GL_UNSIGNED_BYTE, src); + } check_error(); glUniform1i(glGetUniformLocation(glsl_program_num, "input_tex"), 0);