Motion Blur Help!

What is the easies and fastest way to create a nice looking motion blur?
I’v tried to recreate the object with blending, but in this way stuff gets very hard when it comes down to animation!
Iv read in the “OpenGL SuperBible 2:nd Edition” that I could use the accumulation buffert.
But using that knocks my FPS down from 85 to 1.

Apart from 3dfx’ TBuffer (, I can’t think of any way to do this that is fast enough for real time rendering.

The nvidia effects browser has a vertex-program based motion blur. It runs decent even without a geforce 3. Maybe you could try that technique?

– Zeno

This Method used by NVidia has two flaws. It uses alpha-blended triangles, so you have to render back-to-front to get transparency right. And it only adds motion blur to the edges (but that might be hard to spot in motion). Look at this screenshot. It somehow looks “wrong”…/motionblur.jpg
The only positive thing about it is that it’s always smooth (and quite fast). Four samples for T-Buffer motion blur aren’t enough.

I saw a cool OpenGL demo that did motion blur on this rotating ground/object thing. Basically just did a few passes with some special depth testing trick or somat… Looked really good. Shame I have no idea where I found it. Maybe Nates site or something.


Try to keep previous frame in texture.Before swapping color buffers disable z-test and blend previous frame with back buffer.After that copy the back-buffer into the same texture and then you can swap buffers.

The glClock uses multiple blending passes to simulate motion blur and this works quite fast on any accelerator i have tried.

Let’s dream about consumer cards with a hardware accumulation buffer