Simple sharpen shader
Use the mouse to adjust the sharpness:
shader code, GLSL snippets and shader techniques
View All TagsUse the mouse to adjust the sharpness:
Gamma correction in openGL is very easily to achieve, but why do you need gamma correction? Let's keep it simple... First of all your textures you use as input for your openGL renderer are most likely in non linear color space. Your renderer on the other hand is probably calculating light under the assumption of linear color spaced color values in your loaded textures. So you might be working in two different color spaces. After your renderer is done it writes the colors to the screen, which uses non linear color space like your textures do! So what happens is, that your calculation might be visually wrong...
So how can you solve this?
The answer is very easy:
Why post processing antialiasing ? Because of two reasons. A good and fast post processing filter like fxaa or cmaa can achieve almost the same visual output like the usual multisampling counter part (msaa) and costs way less on the GPU because you dont need multiple samples per fragment/pixel! Another restriction is the rendering pipeline you might choose. A deferred renderer uses multiple framebuffers to achieve multiple different effects and using multiple samples on each of those framebuffers might have a really big impact on performance. Additionally it is practically impossible to use mxaa in a deferred renderer, because multisampling the position framebuffer results in wrong values around objects!
Let's have a look on the code:
The 2012 engine was built for OpenGL ES on Symbian. Symbian died in 2013, so I ported everything to desktop OpenGL and started again from scratch. The new renderer got the name Quark. This post collects the notes from August 2013 until March 2015.