[Bf-blender-cvs] [62bbd2e37d3] soc-2019-openxr: Don't swap buffers of offscreen surface OpenGL contexts

Julian Eisel noreply at git.blender.org
Fri Aug 9 13:29:59 CEST 2019


Commit: 62bbd2e37d3acddec3454f0c7c6b25cefa18c03b
Author: Julian Eisel
Date:   Thu Aug 8 21:58:02 2019 +0200
Branches: soc-2019-openxr
https://developer.blender.org/rB62bbd2e37d3acddec3454f0c7c6b25cefa18c03b

Don't swap buffers of offscreen surface OpenGL contexts

This does frame syncing to the regular screen, so hurts performance in
some cases.

===================================================================

M	source/blender/windowmanager/intern/wm_draw.c
M	source/blender/windowmanager/intern/wm_surface.c
M	source/blender/windowmanager/wm_surface.h

===================================================================

diff --git a/source/blender/windowmanager/intern/wm_draw.c b/source/blender/windowmanager/intern/wm_draw.c
index 3951644ec81..b8e8c0af018 100644
--- a/source/blender/windowmanager/intern/wm_draw.c
+++ b/source/blender/windowmanager/intern/wm_draw.c
@@ -897,8 +897,6 @@ static void wm_draw_surface(bContext *C, wmSurface *surface)
 
   surface->draw(C);
 
-  wm_surface_present(surface);
-
   /* Avoid interference with window drawable */
   wm_surface_clear_drawable();
 }
diff --git a/source/blender/windowmanager/intern/wm_surface.c b/source/blender/windowmanager/intern/wm_surface.c
index 8b3a5e55beb..cb575cc8f7d 100644
--- a/source/blender/windowmanager/intern/wm_surface.c
+++ b/source/blender/windowmanager/intern/wm_surface.c
@@ -95,14 +95,6 @@ void wm_surface_reset_drawable(void)
   }
 }
 
-void wm_surface_present(wmSurface *surface)
-{
-  GHOST_SwapContextBuffers(surface->ghost_ctx);
-  if (surface->secondary_ghost_ctx) {
-    GHOST_SwapContextBuffers(surface->secondary_ghost_ctx);
-  }
-}
-
 void wm_surface_add(wmSurface *surface)
 {
   BLI_addtail(&global_surface_list, surface);
diff --git a/source/blender/windowmanager/wm_surface.h b/source/blender/windowmanager/wm_surface.h
index 584e4c4f8b5..438663f0259 100644
--- a/source/blender/windowmanager/wm_surface.h
+++ b/source/blender/windowmanager/wm_surface.h
@@ -52,6 +52,5 @@ void wm_surface_make_drawable(wmSurface *surface);
 void wm_surface_clear_drawable(void);
 void wm_surface_set_drawable(wmSurface *surface, bool activate);
 void wm_surface_reset_drawable(void);
-void wm_surface_present(wmSurface *surface);
 
 #endif /* __WM_SURFACE_H__ */



More information about the Bf-blender-cvs mailing list