I’m currently trying to solve the issue that, when you hold an item in first person view, motion blur will cause the edges around the item to produce artifacts.
I’ve seen many people with the same issue, but there was never really anyone that came up with a fix.
Most threads remained unanswered.
Some infos:
My first person arms are attached directly to the camera and the item is attached to the hand socket. (This seems to not matter at all as the artifacts are there even if i just a attach a cube to the capsule) - Motion blur is definitely the cause for this, as turning it off removes the artifacts, but thats not really an option.
Changing antialiasing methods did NOT change anything, even when turning it off.
Turning off lumen did NOT change anything either.
I have post process filters/effects in place, but disabling the post process volume did NOT fix it.
It seems that playing an animation for the hands makes the artifacts bigger. If i just use a static pose it’s almost gone (but still there)
Does anyone have any idea how to fix this issue without having to disable motion blur?
Here is a video in comparison with motion blur on/off:
Maybe a disocclusion artifact. I don’t think there is a way to prevent this short of writing your own motion blur shader. Motion vectors aren’t perfect, and angular motion in particular is a challenge for them.
Edit: On second though, there is one option. Set the object to translucent, and then you can set it to render after motion blur. This will completely prevent any motion blur artifacts. The object wont have any blur either, but because it is staying still relative to the camera this is a non-issue.
This will also prevent the emissive material from generating light in lumen, but considering how splotchy that would look its probably for the best. Then you can simply put in a real light for much better results.
I would probably only do this with objects of high visual contrast, like the glow stick. Translucent objects have numerous issues and limitations. For most objects, these artifacts should barely be visible.
However the shadows are easily solved by enabling “cast shadow as masked”.
The triangle sorting issue can be solved by enabling order independent transparency in project settings for a small performance cost.
This video explains some of the problems with motion blur and the guy builds his own (for godot), so if you do want to explore that path this could be a starting point to learn how.
You’ll want to use 2 separate materials on assets with translucent materials, separate out just the translucent parts into their own material. Yes, it is one more draw call, but it’s worth it for less screen space being treated as translucent. Also don’t need to worry about sorting or shadows as much.
Have the same problem but with third person view on simple ThirdPersonTemplate and basic shapes. Basically almost every mesh leaves this kind of artifacts, when camera is moving relatively quick. I have this issue on 5.5.1/5.4.4/5.3.2
YES — turning off motion blur is helping.
BUT I 100% shure that I didn’t have these artifacts before. Motion blur is ON by default. No problem there were. But after I started a project in 5.5.1, every version has this porblem. I don’t think that it’s somehow connected.
BUT I REMEMBER that I didn’t had it. NOW I have.
Don’t know what to do beside turning Motion Blur OFF.
That looks more like ghosting from Anti-aliasing. You can try changing Anti-aliasing methods but each option has trade offs.
You might also try experimenting with the Anti-aliasing cvars, as many of them can help reduce ghosting significantly.
Also, it’s partly caused by the extreme differences in depth between these objects and your background (which is effectively at infinity) and the extreme differences in their color values.
In a more normal game setting, this will be less noticable.
Also, increasing the screen percentage (less upscaling) or improving the frame rate both reduce this effect.
Some methods of Anti-aliasing, like DLSS, are less prone to ghosting.