Hi,
I thought it would be nice if fs2_open supported post-processing...
Full pack (patch, builds, demo mission, shaders)
Original pack (with some bugs): Full pack Almost everything (but HUD and some other things) is rendered to a texture (using Frame Buffer Object) and then drawn using shaders pair "post-*.sdr". This enables huge number of new effects to use in fs2_open, I've implemented the simplest ones: (de)saturation, contrast, distort noise. Additionally, now it would be easy to implement full frame motion blur.
In order to customize post-processing effects I added three new sexps: set-saturation (0% - 100%), set-contrast (from -100% to +100%), set-distort-noise (0 - 100).
I believe this patch can be improved in the area of code reusability - I'm still not very familiar with all source code and fs2_open internal architecture doesn't help. Any feedback will be appreciated.
Post-procesing requires glsl and fbo enabled and flag -post_process set.
Example Screenshots:
Saturation: 0%Saturation: 0%, Distort Noise: 50Saturation: 100%, Distort Noise: 50Demo mission after 5 seconds sets saturation to 0, then after next 10 seconds sets distort noise to 50, then after 15 seconds sets saturation back to 100% and finally after 10 seconds sets contrast to +25%.