openFrameworks addon: visualize Reaction Diffusion systems using GPU
Latest commit 4f17c96 Dec 23, 2016 @matsune update readme
Failed to load latest commit information.
examples fix camera position Dec 23, 2016
src add 3D Mesh Example Dec 22, 2016
.gitignore modify gitignore Nov 19, 2016 update readme Dec 24, 2016
ofxaddons_thumbnail.png add ofxaddons_thumbnail.png Nov 20, 2016

ofxReactionDiffusion is openFrameworks addon for visualizing Reaction-Diffusion System using GPU.


Copy to openFrameworks > addons.

Reaction Diffusion System

Reaction–diffusion systems are mathematical models which correspond to several physical phenomena: the most common is the change in space and time of the concentration of one or more chemical substances: local chemical reactions in which the substances are transformed into each other, and diffusion which causes the substances to spread out over a surface in space. (from Wikipedia)


Reaction-Diffusion System has a few mathematical models and ofxReactionDiffusion implements three models of them.

- Gray-Scott

- FitzHugh-Nagumo

- Belousov-Zhabotinsky


Models are defined ReactionDiffusionMode .
You can switch drawing model by void setMode(ReactionDiffusionMode _mode) .

Since each mode has its own parameters, it is necessary to use the parameters properly according to the mode being used.

- Gray-Scott

float feed;
float kill;
float Du;
float Dv;

- FitzHugh-Nagumo

float a0;
float a1;
float epsilon;
float delta;
float k1;
float k2;
float k3;

- Belousov-Zhabotinsky

float alpha;
float beta;
float gamma;


Examples > example_mesh

Values, concentration of substances, are stored in FBO(texture) and they are represented as RGB in texture in ofxReactionDiffusion. You can get source texture by getSourceTexture.

For example, reaction diffusion values can use for depth of VBOMesh. (See Examples > example_mesh)