Effect Idea: Motion Blur (a proper one)

This forum is currently in read-only mode.
From the Asset Store
Complete the collection by purchasing Motion Universe Pt. 2
  • Radeon x1600

    It works

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Poxy onboard graphics, 32mb.

    Works.

    Slow as hell XD

  • Nvidia 8800 GTX

    Runs and looks sexy as hell. The sooner we can implement this in our games, the better.

    Edit: I have a speed based game I'm working on that would look absolutely gorgeous with this.

  • Everything moves a little after i tell it to move.. is that the graphic card? Anyways, it's a pretty effect!

  • Everything moves a little after i tell it to move.. is that the graphic card?

    Yes.

  • It works on my crappy GeForce4 MX 440. It's a little jaggy though. When I swirl the mouse in a circle it makes short segments of straight lines rather than a smooth curve. If I had a better card and a higher framerate I'm sure it would be a hell of a lot smoother.

  • I didn't think it'd work at all on a GeForce 4 MX 440, could you try screengrabbing a long blur so I can see if it's blending it the same?

  • Works on my GeForce4 MX 420 as well. At about 5 fps.

    When doing a fast movement, the 'blur' effect looks like a bunch of completely in-focus sprites at low opacity. If moving fast enough, the sprite with mouse movement can have gaps between the steps of the blur.

    Is there a possibility of a proper motion blur with pixel shaders? I hear the best way to do it is using a velocity buffer for the pixels on the screen then blurring them with a pixel shader. I doubt the vertex shader approach would work properly for 2D games, but I'm no graphics programmer.

  • Double post. Is there a way to delete posts?

  • OK, well 0.92 is out and you can try playing with the motion blur yourself. Motion blur is achieved through an algorithm called temporal antialiasing: this means the framerate is, say, increased by 10x (so it might be running at 750fps). Then every time it draws the screen, it has 10 frames which it blends together equally to make an image that appears blurred according to how fast objects are moving.

    To make this work with the mouse, it linearly interpolates the mouse position over these sub-frames because the mouse doesn't update that quickly. This explains why you get straight lines, and it also explains why if you move the mouse or an object extremely quickly, you see it stepping along. This still looks smoother than without motion blur, in my opinion, because you get a sense of the motion as opposed to the object displaying in a sequence of positions. Temporal anti-aliasing isn't perfect - if you don't like what it does you can just turn it off - but I think it really improves the motion and perceived smoothness of most games.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)