well, if software shader still count then i've improved the software shader of bloom
ive made a function with more control, sorry but its the same speed (well its better speed but now its more options so it makes it the same speed), and better bloom.
taylor - patch :
http://planet.nana.co.il/itay390d/bloom.txtthere is bloom and bloom2 function, bloom is the previous function and now bloom2 is the currect
the problem that the screen is being lighten when there is friendly ship closing or when you shoot still exsists. i don't know how to solve this because im not expert in freespace source but it comes from the read pixels and draw pixels function and not from the bloom function.
some documention about bloom2 function.
void bloom2(unsigned char *pixeldata,unsigned char *blurlayer,int w, int h, int kernelsize,int minbrightness, int multiplation);
*pixeldata is the pointer to the original freespace image. which will be bloomed at the end.
*blurlayer is the pointer to the blurred freespace image.
w - the width of the window you want to bloom
h - the height of the window you want to bloom
kernelsize - the recommended value is 5 i think. as the number is higher, the bloom getting more widen , or blurred, being more spread. also, as the kernelsize number is higher the bloom is being produced slower.
minbrightness - this is a special feature with the new bloom2 function (well it was also in bloom ver 1 but it was bugged) you can specify from what brightness i.e. "gamma" the bloom will take place. for exmaple, if you want only explosions and jumps and bright stuff to get bloomed, so the minbrightness should be 100 or more. if you want everything to get bloomed then the value is 0.
multiplation - this is a number you multiply the blurred image, more higher value means greater glow. recommended value is 2.
640x480 fps is normally 7 on 2ghz computer. (that's the price you have to pay for using software)
pay attention that the function is optimized. ive tried to do some tricks and 'kiks over the function to get some bits of extra fps. (the starting fps was 1-2) that's the best i could do. without my tricks it would've be x3 shorter function.
images
=====
640x480 images
http://img92.imageshack.us/img92/3692/1it5.jpg http://img133.imageshack.us/img133/6659/2du4.jpghttp://img98.imageshack.us/img98/1927/3kj8.jpghttp://img134.imageshack.us/img134/9875/4lz9.jpg1024x768 images (diffrent pictures)
http://img136.imageshack.us/img136/930/5vf0.jpghttp://img88.imageshack.us/img88/6066/6ox3.jpghttp://img150.imageshack.us/img150/701/7gx3.jpghttp://img150.imageshack.us/img150/9482/8kp2.jpg - pay attention that when there is tremndeous amount of light the surrounding area is being blurred.
well, that's it. im done with software. im not going to make another upgraded bloom.. im moving to hardware.