Excluding objects from Motion Blurr

We have phisically simulated UI elements in front of the camera. An undesirable motion blur effect is applied on it preventing us from doing what we want.

The following picture shows a transparent grid that has our moving physics applied and is placed in front of the camera:


As you can see the transparent object gets completely blurred except on the areas in front of the gun.

I have found out that many people have this issue and no real answer has been given so far. We used to have the ability to exclude objects from motion blur in UDK and its also a feature we’ve had with another engine.

From UE3 Documentation:
In the Actor you can find the Motion Blur Scale. That value was once needed to disable motion blur on object that move with the camera (e.g. platforms). This is no longer needed as the motion blur now correctly handles such relative movements. The value will be removed soon or reactivated if we realize me miss some cases with the new implementation.
http://udn.epicgames.com/Three/MotionBlur.html

We need this back, UI nowadays are often rendered in world space with movements relative to the camera.

Could we have some hints on how to achieve this? This is affecting one of the cool features of our game.

Render your UI into a rendertarget, because right now the camera motion blur will blur anything present in the final scene target, which is where your object is. And because it’s translucent it doesn’t output any velocity information, so it ends up being blurred because of what’s behind it.

Thank you, it will add overhead but your solution is certainly better than nothing.

I haven’t played with rendertargets yet, do you have any idea on how I should apply the recorded ui on top of the main render?

On top of the screen? You should just apply it as a blendable post process material in the global post process. That should be everything you need, but you will have to set up rendering to a custom render target in code.

Right but the problem is that the rendertarget2d won’t give you the alpha channel that’s required for UI :frowning:
Edit I have been mislead with another post I’ve read and after testing it I found out it is possible to get the alpha :slight_smile:

Problem solved thanks :slight_smile: