Hi. I wonder what is the fastest HDR (aka Bloom aka Gloom) Filter emulation for Blitz3D?
Currently I am using a quad that covers the screen in blendmode 3, containing a blured 128 Texel texture that was made using Renderworld with a small CameraViewPort.
Rendering takes several millisecs, copyrect is pretty quick, somewhere around 1 millisecond. Bluring takes a few millisecs too, depending und the number of passes. I tried to optimize the burring hardly, but it still takes too much time IMHO.
Currently I do something like:
rgb(i,j)=((rgb(i-1,j) and $FEFEFF)shr 1) + ((rgb(i,j) and $FEFEFF)shr 1)
This will mix 2 Pixels 50:50. Since it doesn't need to split RGB, it's pretty quick, comparend to some other blur methods. I do this in 4 directions, the result is nicely blured.
But maybe there are faster methods?
I'd also like to know how to fix the flickerng that is caused by this method.
BTW. I cannot use more blur passes and a bigger texture, it would be too slow. This is not for a fancy FX Demo with a couple tris in a scene, running on a 3 Ghz machine, but for the average pc running a full game level.
Currently I am using a quad that covers the screen in blendmode 3, containing a blured 128 Texel texture that was made using Renderworld with a small CameraViewPort.
Rendering takes several millisecs, copyrect is pretty quick, somewhere around 1 millisecond. Bluring takes a few millisecs too, depending und the number of passes. I tried to optimize the burring hardly, but it still takes too much time IMHO.
Currently I do something like:
rgb(i,j)=((rgb(i-1,j) and $FEFEFF)shr 1) + ((rgb(i,j) and $FEFEFF)shr 1)
This will mix 2 Pixels 50:50. Since it doesn't need to split RGB, it's pretty quick, comparend to some other blur methods. I do this in 4 directions, the result is nicely blured.
But maybe there are faster methods?
I'd also like to know how to fix the flickerng that is caused by this method.
BTW. I cannot use more blur passes and a bigger texture, it would be too slow. This is not for a fancy FX Demo with a couple tris in a scene, running on a 3 Ghz machine, but for the average pc running a full game level.