Moving the letterbox clear for the embedded player so it only clears when it needs...
authorMitchell Stokes <mogurijin@gmail.com>
Sun, 29 May 2011 18:09:38 +0000 (18:09 +0000)
committerMitchell Stokes <mogurijin@gmail.com>
Sun, 29 May 2011 18:09:38 +0000 (18:09 +0000)
source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp

index 13f0551d01b287c867f4fb661f8d31cfd02ac37e..cac801c80ef920fd0bd7d2443be9ceb476d043d3 100644 (file)
@@ -429,22 +429,22 @@ extern "C" void StartKetsjiShell(struct bContext *C, struct ARegion *ar, rcti *c
                                {
                                        // first check if we want to exit
                                        exitrequested = ketsjiengine->GetExitCode();
-
-                                       if(draw_letterbox) {
-                                               // Clear screen to border color
-                                               // We do this here since we set the canvas to be within the frames. This means the engine
-                                               // itself is unaware of the extra space, so we clear the whole region for it.
-                                               glClearColor(scene->gm.framing.col[0], scene->gm.framing.col[1], scene->gm.framing.col[2], 1.0f);
-                                               glViewport(ar->winrct.xmin, ar->winrct.ymin,
-                                                       ar->winrct.xmax - ar->winrct.xmin, ar->winrct.ymax - ar->winrct.ymin);
-                                               glClear(GL_COLOR_BUFFER_BIT);
-                                       }
                                        
                                        // kick the engine
                                        bool render = ketsjiengine->NextFrame();
                                        
                                        if (render)
                                        {
+                                               if(draw_letterbox) {
+                                                       // Clear screen to border color
+                                                       // We do this here since we set the canvas to be within the frames. This means the engine
+                                                       // itself is unaware of the extra space, so we clear the whole region for it.
+                                                       glClearColor(scene->gm.framing.col[0], scene->gm.framing.col[1], scene->gm.framing.col[2], 1.0f);
+                                                       glViewport(ar->winrct.xmin, ar->winrct.ymin,
+                                                               ar->winrct.xmax - ar->winrct.xmin, ar->winrct.ymax - ar->winrct.ymin);
+                                                       glClear(GL_COLOR_BUFFER_BIT);
+                                               }
+
                                                // render the frame
                                                ketsjiengine->Render();
                                        }