Original Post
Hello, I guys, I'm implementing screen space motion blur in my deferred renderer using the trick of obtaining the per-pixel velocity vector by transforming the pixel's world space position by the current and previous view/projection matrices and calculating the difference between the two.
The results of this technique are good except when I rotate the camera too fast or move backwards which results in blurring artifacts/discontinuities (I'll upload a screenshot as soon as I can). I believe this is due to the fact that in those cases the pixel was behind the camera in the previous frame and so it won't be correctly projected to the near plane because its W value is bellow the [-1, 1] range. However I see everyone using this technique without any problems so what am I missing here?
Thanks in advance
The results of this technique are good except when I rotate the camera too fast or move backwards which results in blurring artifacts/discontinuities (I'll upload a screenshot as soon as I can). I believe this is due to the fact that in those cases the pixel was behind the camera in the previous frame and so it won't be correctly projected to the near plane because its W value is bellow the [-1, 1] range. However I see everyone using this technique without any problems so what am I missing here?
Thanks in advance

