X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fplayback3d.C;h=3dcb00df660075fdbea4983907ae5825aa1d6659;hb=f02c3f7d36eb475d1371f8e4b2814bea99e8b478;hp=c2e015e24d5fc653d8fb0041682c821efb077589;hpb=93d60cc0fdf746cc03b4d7a9e45744c2c424439b;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/playback3d.C b/cinelerra-5.1/cinelerra/playback3d.C index c2e015e2..3dcb00df 100644 --- a/cinelerra-5.1/cinelerra/playback3d.C +++ b/cinelerra-5.1/cinelerra/playback3d.C @@ -155,8 +155,8 @@ static const char *blend_##FN##_frag = \ "void main() {\n" \ " vec4 canvas = texture2D(tex2, gl_FragCoord.xy / tex2_dimensions);\n" \ " vec4 result;\n" \ - " result.rgb = "SS(COLOR_##FN(1.0, gl_FragColor.rgb, gl_FragColor.a, canvas.rgb, canvas.a))";\n" \ - " result.a = "SS(ALPHA_##FN(1.0, gl_FragColor.a, canvas.a))";\n" \ + " result.rgb = " SS(COLOR_##FN(1.0, gl_FragColor.rgb, gl_FragColor.a, canvas.rgb, canvas.a)) ";\n" \ + " result.a = " SS(ALPHA_##FN(1.0, gl_FragColor.a, canvas.a)) ";\n" \ " gl_FragColor = mix(canvas, result, alpha);\n" \ "}\n" @@ -168,10 +168,10 @@ static const char *blend_##FN##_frag = \ "void main() {\n" \ " vec4 canvas = texture2D(tex2, gl_FragCoord.xy / tex2_dimensions);\n" \ " vec4 result;\n" \ - " result.r = "SS(COLOR_##FN(1.0, gl_FragColor.r, gl_FragColor.a, canvas.r, canvas.a))";\n" \ - " result.g = "SS(COLOR_##FN(1.0, gl_FragColor.g, gl_FragColor.a, canvas.g, canvas.a))";\n" \ - " result.b = "SS(COLOR_##FN(1.0, gl_FragColor.b, gl_FragColor.a, canvas.b, canvas.a))";\n" \ - " result.a = "SS(ALPHA_##FN(1.0, gl_FragColor.a, canvas.a))";\n" \ + " result.r = " SS(COLOR_##FN(1.0, gl_FragColor.r, gl_FragColor.a, canvas.r, canvas.a)) ";\n" \ + " result.g = " SS(COLOR_##FN(1.0, gl_FragColor.g, gl_FragColor.a, canvas.g, canvas.a)) ";\n" \ + " result.b = " SS(COLOR_##FN(1.0, gl_FragColor.b, gl_FragColor.a, canvas.b, canvas.a)) ";\n" \ + " result.a = " SS(ALPHA_##FN(1.0, gl_FragColor.a, canvas.a)) ";\n" \ " result = clamp(result, 0.0, 1.0);\n" \ " gl_FragColor = mix(canvas, result, alpha);\n" \ "}\n" @@ -887,6 +887,7 @@ void Playback3D::do_camera_sync(Playback3DCommand *command) command->frame->set_opengl_state(VFrame::SCREEN); + command->frame->screen_to_ram(); command->canvas->get_canvas()->unlock_window(); } command->canvas->unlock_canvas();