Aliasing causing bloom flicker. Fix in post?

So I’ve got a bit of a weird one here. I rendered this clip out a few months ago, and despite being on Eevee, it took several days to render it (very dense scene, 3 minutes long, 60fps 1440p. not surprising :stuck_out_tongue: ). I added some nice particles and the timer on the screen in post in after effects, but only once I had the scene rendered out did I notice that all of the bloomed emissions flicker whenever the camera move. I’m assuming its because of the aliasing on the edges of the pipes, but I really don’t want to go back in, add anti aliasing and wait another week plus whatever render time the AA adds to fix it.

Do you guys reckon there’s an easy fix for me to do in post? or should I just bite the bullet and go back in? I’ve got After Effects, Premier and Sony Vegas, if that adds anything.

Found this, maybe it helps:

But it could be this bug (seems to be pretty recent):
If this is the case you could try to disable Soft Shadows in Render properties.

You may also try a denoise in Premiere if you have it, maybe you can avoid another render because the flicker is not that strong.

I don’t think the problem is the same as theirs, as the clip start on my camera is not that low and the scene is only about 100m wide in total. I’ve looked in the render view in blender, and I can see now that the problem is apparent in-engine too. Like I mentioned, I think the flickering is because the aliasing is obscuring the white emission texture, and because the bloom is screen-space, it being hidden is what’s causing the flickering as the camera’s in motion. Thanks for the recommendation though, I’ll give denoising a try!

I was interested in this issue so I’ve done some more testing and it seems every new visible emissive pixel on the screen adds to the bloom, but while moving camera/zooming some pixels may be removed due to perspective from one frame to another (or it’s just a bloom bug):


In the picture there is an emissive cube behind a normal cube, with no other lights. Camera was only moved to the right.

The only improvement I could get was to increase the resolution so rogue pixels won’t contribute that much to the scene, but then again, maybe applying the bloom as post-processing using better software is the best way. Not sure what else could work… unless you wanna spend a month rendering in Cycles :smiley:

doing the bloom in post is a great idea!

though, that does mean a re-render :grimacing:

oh well, guess there’s no escaping it. thanks for the help mate!

Disadvantage of doing bloom in post… so, internally Blender is using a HDRI image that goes way beyond white. This is kinda really useful for Bloom. It means you can have a tiny emissive with a massive halo if it’s set really bright like 10000 times white, next to a larger emissive with far less bloom at only 5 times white. You could render off hdri images, sure, if you have all the harddrive in the world.

The bloom was done in-engine, but I didn’t do it in post-processing

I think that unfortunately for Bloom to work in post processing (in different software later on) you will have to render a .hdr sequence .

Compositing nodes
Render layers into output
Render layers also into mix rgb, mixed with black at about 0.05 of the renderlayer, 0.95 of black
Mix rgb into file output
And use that file output for Bloom.

oh sorry, I understand you now! Yeah, i think in another circumstance that would be difficult for me, but given that everything within this scene that contains an emissive texture uses the same material, it’d be way easier to fake in post. the idea I had was maybe I could render out a version with 0 bloom, then render out a version with all the lighting removed so only emissive textures are visible, then layer that over it in post, remove anything but the highlights, and then either do a good outer glow on it or blur the textures to fake a glow. Wont look as good without a good bit of tweaking, but that way I have control over mitigating any flicker and more influence over the bloom itself.

Either that, or I use prorender 2.0 and see if I can finish the render before the heat death of the universe :stuck_out_tongue: