Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/neilmendoza/ofxPostProcessing
This openFrameworks addon gives you an easy way of putting together a chain of GLSL post-processing effects.
https://github.com/neilmendoza/ofxPostProcessing
Last synced: 5 days ago
JSON representation
This openFrameworks addon gives you an easy way of putting together a chain of GLSL post-processing effects.
- Host: GitHub
- URL: https://github.com/neilmendoza/ofxPostProcessing
- Owner: neilmendoza
- Created: 2013-01-07T15:39:14.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2020-04-30T23:30:28.000Z (over 4 years ago)
- Last Synced: 2024-08-02T17:36:26.178Z (3 months ago)
- Language: C++
- Homepage: www.neilmendoza.com/ofxpostprocessing
- Size: 1.88 MB
- Stars: 345
- Watchers: 37
- Forks: 84
- Open Issues: 18
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# ofxPostProcessing
This openFrameworks addon gives you an easy way of putting together a chain of GLSL post-processing effects.
www.neilmendoza.com/ofxpostprocessing
NB This addon uses the branch setup as OF itself, the stable branch corresponds to the most recent release (i.e. the version that is downloadable from the OF site) and the master branch is the develop branch. If you have downloaded from the website, the you will want to use the stable branch...
https://github.com/neilmendoza/ofxPostProcessing/tree/stable
## Features
At the moment, it comes with the following effects (some ported from other sources and some original) that I'll gradually add to over time:
* Bloom
* Convolution (Blur)
* Depth of field (with bokeh)
* Depth of field alternative (more features but heavier)
* Frei-Chen Edge Detector
* FXAA anti-aliasing
* Kaleidoscope
* Noise warp
* Pixelate
* SSAO
* Toon
* Godrays
* Tilt shift
* Fake subsurface scattering
* Many others, please see src directory## Usage
In your OF app declare an instance of **ofxPostProcessing**...
```cpp
ofxPostProcessing post;
```In your **setup()** function initialise the post-processing class and then add some effects...
```cpp
post.init(ofGetWidth(), ofGetHeight());
post.createPass();
post.createPass();
```Call **post.begin()** and **post.end()** around the the scene that you want to render...
```cpp
post.begin();post.end();
```If you are using an **ofCamera** pass this to **post.begin()** and it takes care of the rest for you...
```cpp
post.begin(cam);post.end();
```## TODO
* Add support for ofGLProgrammableRenderer with version 150 shaders
* More FX
* OpenGL ES, it's based around power of two textures so it should be fairly quick to get working.