faking glow or speedup bloom ?

Does anyone know how they did the glow-effect in
doom3 ? It seems they just use additive blending, but I’m not sure. It looks very nice, that’s for sure :slight_smile:

Our engine uses a 4-pass bloom.

  • downsize rendered scene ( and multiply with alphachannel )
  • gaussian blure vertical
  • gaussian blure horizontal
  • add to original scene
    we use the main framebuffer for each pass ( with glCopyTexSubImage2D ).
    But this is very slow:
  • 80fps without bloom
  • 30fps with bloom
    Does it make sense to use a pbuffer instead of glCopyTexSubImage2D ?

I don’t know if it’s possible to speedup the bloom effect( to 60/70fps ). What would u do ?
Try to speedup the bloom or try to fake it.

thx :slight_smile:

Where does D3 have a glow effect? If you think that theres a glow effect on the lights, there isnt. It’s just a special kind of ‘billboard’. Just turn on wireframe and have a look at one of them and you will see how it will always turn to you and adjust it’s size

By “downsize rendered scene” do you mean that you render the scene full size, copy it, then resize it?

With my engine I just render the elements I wish to add a glow to (to the frame buffer, at a reduced size) and then I copy just the area I have rendered each object to, to create a texture for the glow. This way I can tile multiple objects on the frame buffer, I don’t have to read more data than I’ll end up using. I don’t blur the result as such but I do draw multiple billboards to get the final result.

I could use pbuffers for this but with the number of context switch’s (each object also has it’s own dynamic cube map) it tends to slow things down.