* removed the global uiFrontbuf from interface.c (and python, it was used
there) * replaced with nice local (uiBlock) storage of what goes on in drawing. it now only calls a glDrawBuffer() and glFinish() when it is actually needed Result: interface drawing in general is speedy again, especially for gfx cards that dont allow frontbuffer drawing, and copy stuff to the frontbuf with a glFinish() call. Needs to be tested on all platforms... report to me when you see problems like menus not drawing correctly, tooltips not drawing or not disappearing, etc.
This commit is contained in:
@@ -421,14 +421,14 @@ static void py_slider_update(void *butv, void *data2_unused)
|
||||
is still being used might be deleted
|
||||
*/
|
||||
|
||||
/*@ UIfrontbuf = 0;
|
||||
/*@
|
||||
spacetext_do_pywin_buttons(curarea->spacedata.first, but->retval); */
|
||||
|
||||
g_window_redrawn = 0;
|
||||
curarea->win_swap= WIN_BACK_OK;
|
||||
UIfrontbuf = 1;
|
||||
/* removed global uiFrontBuf (contact ton when this goes wrong here) */
|
||||
spacetext_do_pywin_buttons(curarea->spacedata.first, uiButGetRetVal(but));
|
||||
UIfrontbuf = 0;
|
||||
|
||||
|
||||
if (!g_window_redrawn) /*@ if Redraw already called */
|
||||
M_Window_Redraw(0, Py_BuildValue("(i)", SPACE_VIEW3D));
|
||||
|
Reference in New Issue
Block a user