Skip to content
C++ openFrameworks addon for solving and drawing 2D fluid systems based on Navier-Stokes equations and Jos Stam's paper "Real-Time Fluid Dynamics for Games" http://www.dgp.toronto.edu/people/stam/reality/Research/pdf/GDC03.pdf
C++ Makefile QML C
Branch: master
Clone or download
Latest commit c18bbc2 Feb 2, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
example addon_config and example qtcreator project Jan 31, 2019
src replace gl* with of* Feb 3, 2019
.gitignore gitignore Feb 1, 2019
README.md updated readme to include Cinder compatibility info Sep 25, 2012
addon_config.mk addon_config and example qtcreator project Jan 31, 2019
license.md first commit Sep 24, 2012

README.md

ofxMSAFluid

Introduction

C++ openFrameworks addon for solving and drawing 2D fluid systems based on Navier-Stokes equations and Jos Stam's paper "Real-Time Fluid Dynamics for Games" http://www.dgp.toronto.edu/people/stam/reality/Research/pdf/GDC03.pdf

Demo at www.memo.tv/msafluid/

Other useful resources and implementations I looked at while building this library:

Licence

The code in this repository is available under the MIT License.
Copyright (c) 2008-2012 Memo Akten, www.memo.tv
The Mega Super Awesome Visuals Company

Installation

Copy to your openFrameworks/addons folder.

Dependencies

  • MSACore

Compatibility

openFrameworks 0072
I am generally testing only with openFrameworks, however it should work with Cinder too. If it doesn't, please file an issue.

Known issues

Probably will not work with Cinder without some (minor) changes

Version history

v2.1 23/09/2012

  • compatible with OF0072
  • renamed (uppercase) MSA namespace to (lowercase) msa. (kept MSA as an alias for backwards compatibility)
  • all classes are now inside a new namespace 'msa::fluid::'

v2.0

  • move to centralized MSALibs (requires MSACore)
  • everything is msa:: namespace
  • u[] and v[] condensed to (Vec2f uv[])
  • r[], g[], b[] condensed to (Vec3f color[])
  • unified API for getting and setting info:
    • all vel & colors set and get with the structs
    • all getters and setters have 3 functions, index, (i, j), Vec2f pos

v1.2 02/05/2009

  • unified API with processing.org version
  • solver u, v, r, g, b arrays now public
  • drawer can incDrawMode and decDrawMode
  • loads of optimizations by Maa (http://www.lagraine.com/ - new content coming soon)

v1.1 07/04/2009

  • changed license to revised BSD (a lot more more permissive than GPL)

v1.0

  • added RGB or monochrome functionality (enableRGB())
  • vector drawing implemented
  • get and set info much improved
  • added draw mode system
  • setup() now only takes dimensions, other parameters have their own setters

v0.9 04/12/08

  • initial version
You can’t perform that action at this time.