Blender supports 4 different swap-buffers methods. The best future proof method is to use triple-buffer, which draws off-screen, and copies that buffer to the visible screen. This allows overlays (like menus) to draw fast, and some day we will even do cool compositing effects efficiently then. Unfortunately triple-buffer is not working everywhere, especially on Intel graphics cards it seems to be slow.
A standard ‘swap buffers’ on graphics hardware can work in two ways:
Swap-copy: (copy back to front buffer, most graphics cards do this)
Swap-flip: (exchange back and front buffer)
Currently, for Intel graphics we assume “Swap flip” is default. But bug reporters in the tracker make me think it’s the regular “Swap copy”.
You can test this (default startup) in Blender easily:
Start Blender
Press M (move to layer)
If your buffer swap method is wrong, the “Move To Layer” menu flashes away immediate. It’s still there, but invisible. Click a bit around to close it, and a 2nd M-key makes it appear. Move the default cube to another location, and M-key goes bad again.
Now change User Preferences -> System -> Draw Method to “Overlap”. And test again. Does M-key work OK now?
Also: try “Triple buffer”. Is this really slow or not working at all?
Some Intel graphics card owners also mentioned that opening a 2nd window (like user preferences) hangs. You can bypass it by opening the User Preferences with the left-most menu in every header in Blender.
Report your findings here please! Especially for Windows and Mac. For Linux, the Intel gfx drivers already support both methods, and they default to “swap copy”.
BLENDER 2.56 rev. 35816
Windows 7 32 Bit Pro
LapTop DELL Latitude E6400
renderer: Mobile Intel(R) 4 Series Express Chipset Family
vendor: Intel
version: 2.1.0 - Build 8.15.10.1855
Default startup: Flash
Overlap is OK
Triple Buffer: Work good, no Slow.
Tyrant: thanks for test, but the result is very unexpected. Either one “Overlap” or “Overlap Flip” should work… it could also be that “overlap flip” has a bug though…
Overlap this is the buggy one, the additional glitch is that if I move the mouse cursor to another panel like properties or toolbar and move the cursor over a menu option that gets highlighted, the cube in the 3d view sort of vibrates and flickers
-edit- I looked closer overlap seems to be flip between two ‘states’ one where I can briefly see the menu and than one where I can’t if I move my mouse a bit -edit-
Overlap flip - move menu immediately disappears, click , 2nd ‘m’ key press it stays and you can move the cube. No additional glitch like overlap
Tyrant: The ‘additional glitch’ you describe points at your graphics card to use ‘swap flip’ method.
Could it be that XP has older drivers and Intel changed the swapping default some day? Did you check if you can update drivers, and/or if Windows has a control panel somewhere where you can set buffer swap methods?
Of course my preference would be to have all systems use Triple Buffer.
the driver is update(according to Intel driver utility) for this chipset, I am using driver number 6.14.10.4926.
default settings for this chipset at the moment
Asynchronous flip: off
Triple Buffering : Default
Flipping policy: Flip
Window XP SP3
Intel G31/G33
Blender Trunk [35880] - Windows 32bit
(results similar in “official” Blender 2.56a from Blender.org)
-Start Blender -> Press M : Move panel flash and become invisible, press M second time after moving the mouse, and the Move panel stay
-User Preferences -> System -> Draw Method to “Overlap”
result is the same, the Move panel will flash and become invisible and will only stay visible after a second M key press.
Additionally, there’s some flickering in the various buttons in the side panels while doing this.
-User Preferences -> System -> Draw Method to “Overlap Flip”
Same result as previous, with the difference that the various buttons in the side panels do not seem to flicker
-User Preferences -> System -> Draw Method to “Triple Buffer”
result is the Move Panel does not flash and does not become invisible, and no flicker anywhere in the side panel.
Apparently no slowdown observed.
tried whit overlap overlap flip and triple don’t see any flashing
but if i click too fast on m key the viewport panel don’t show up
i have to click long enough for the panel to appear in viewport
but no flashing as such
unless you can make small vey short video to show problem
don’t see any problem up to now but i’m on vista 32 bits and ver 865
so may be with 64 vistsathere might be a problem !
<Overlap Flip>
start blender, press m --> panel flashes & disappears
move cursor over selected, press m --> panel reappears and continues to appear as expected until cube is moved
<Full, Overlap, Triple Buffer>
no problems, no noticeable lag when using Triple Buffer
So, no surprises there, right?
[And yes, trying to open prefs via file menu or ctrl-alt-u results in a crash of blender]
win xp 32 bit, sp3
intel G31M integrated gpu
blender r 35853
default blender startup: m-key to move cube - menu disappear, 2nd m-key and the move menu stays visible.
draw method overlap: works just fine, no problems
draw method triple buffer: works fine, but parts of the UI are darkened. See here: http://www.pasteall.org/pic/10454
The entire UI is darkened, areas that are their normal color changed when I passed the mouse over those panels/headers. 1st test was almost black UI, 2nd test is the screenshot I posted, UI is lighter in color than first test, before a mouse over.
A note - I reported a bug here - http://projects.blender.org/tracker/?func=detail&aid=21691&group_id=9&atid=231
concerning using the render opengl viewport and error message. The problem still persists, blender 2.49b had no such problems. My work around was to buy an nVidia card. I removed the video card from my computer forcing it to use the integrated G31M to do the tests.
Can anyone else using intel graphics render an opengl from the viewport?
OS: Windows 7 64-bit
Blender r35853
Intel GMA 4500MHD
renderer: Mobile Intel(R) 4 Series Express Chipset Family
vendor: Intel
version: 2.1.0 - Build 8.15.10.1892
Results
The Overlay Flip was the only one that didn’t work (move to layer flashes), while the other modes (Triple buffer, Overlap and Full) function fine. When it comes to performance I didn’t notice any big differences, besides that Full method was slower (Which I guess is expected).
There where no problems with opening a second window. The only thing I noticed was that with triple buffer the window flashed black when open a new window while it didn’t with the other modes…
Is there any good way comparing the performance of the different modes? Cause’ I found that kind of hard to do…
Thanks for all tests, it’s still baffling info… each configuration with intel cards has different behaviour it seems.
For the “overlap flip” method, I think we do have a bug though. Menu overdraws are not correctly swapped then.
For people who want to check speed of UI drawing: CTRL+ALT+T is our default timer. Choose the 4th option in the menu.