syfluid - Mirko's interactive fluidum
done by sy2002 on-again-off-again in 2011, 2013 and 2014
Version 1.2 released on 20th of July 2014
syfluid is a funny toy as well as a real simulation. It simulates a fluid or
a gas in a very colorful, graphic and sometimes psychodelic way. In realtime!
Drag while your right mouse button is pressed to "draw" the fluid/density
field. Drag while your left mouse button is pressed to make the whole thing
move, i.e. to "draw" the "forces" that you're adding to the fluid/density
field. Press "r" to clear the screen and "m" to open the menu.
Press "1" .. "7" to switch the color presets; press "8" to use random colors.
Press SPACE to pause/unpause, RIGHT to single-step while paused and "s" to
save your work as either as JPG or PNG picture.
syfluid is written in C++ using OpenGL. Even though it is heavily performance
optimized and using OpenGL Shading Language (GLSL), it is a performance hog.
Use "f" to show the FPS. If they are lower than 30, then reduce the quality
parameter that you find in the menu from 200 to e.g. 100. For very fast
graphic cards, try 400 and above.
syfluid runs on Windows and OSX desktops as well as on the iPad.
I am glad to hear your feedback, so contact me at: email@example.com
Visit http://www.sy2002.de for more sy2002 projects.
Licensed under CC BY 3.0: http://creativecommons.org/licenses/by/3.0/
You are free
to Share - to copy, distribute and transmit the work
to Remix - to adapt the work
to make commercial use of the work
as long as you credit it to sy2002 and link to http://www.sy2002.de
GETTING STARTED ON A DESKTOP (WINDOWS OR MAC):
Download the appropriate executable:
Windows: Choose syfluid-v1.2-win.zip
Mac: Choose syfluid-v1.2-osx.zip
Unzip the package and just double-click the executable to enjoy syfluid:
If you have a Retina enabled Mac and Mac OSX 10.8 (Mountain Lion) or newer,
then you might want to use the executable "syfluid-Retina", which is located
in an additional ZIP file called "syfluid-Retina.zip". This ZIP s part of the
OSX executable download bundle.
GETTING STARTED ON THE IPAD:
Use two fingers to "draw" the fluid/density field. Use one finger to make the
whole thing move, i.e. to add forces.
The currently available iPad version is experimental and is only utilizing
a pretty low screen resolution since I only use the CPU and not yet the GPU.
syfluid for iPad is not yet available in the iTunes App Store. Due to Apple's
security policy it is not possible to provide you an alternate download link
for the iPad executables other than the App Store. Therefore, until I manage
to distribute syfluid for iPad via the iTunes App Store, you'll need to
compile it for yourself. See HOW-TO-COMPILE below.
After you've played a bit with the standard settings of syfluid, try some of
the presets: Press 'm' to enter the menu and choose one "syfluid Preset":
- Fancy: A blue-ish fluid with a natural behaviour. Nice and easy.
- Pudding: A rather high viscocity value combined with a high velocity
precision leads to a sticky behaviour, just like pudding.
- Smoke: Black and white colors and a high diffusion value lead to the
impression of a pretty smoky behaviour.
- VJ: The Video Jockey mode (VJ) is very funny, if you play some electronic
music in the background and then work like this: Hit '8' in the rythm of
the beat to constantly and randomly change the colors. In parallel, keep
the right mouse button pressed, to add density and constantly move the
mouse. From time to time, while keeping the right mouse button pressed,
press the left mouse button and swirl the fluid. Don't forget to do
everything rhythmically and constantly keep hitting '8' in the rythm of
- Retro Plasma: Very low resultion ("Quality") in combination of a passive
lighting and smooth mouse behaviour. It resembles indeed to oldschool
demo coding and plasmas.
- Sensitive: A pretty high Velocity Precision leads to a very smooth
and sensitive mouse interaction feeling.
Uses the Cinder toolbox
Based on Jos Stam's "Real-Time Fluid Dynamics for Games"
3D Lighting and gradient usage inspired by Phagor's Processing Sketch "Fluid"
Gradient class inspired by Toxi's gradient class
You can compile syfluid for OSX and for Windows. Get the sources from
I am currently still releasing syfluid as a 32bit application, even though
from version 1.1 on, the source code can also be compiled for 64bit
platforms. The reason why I am doing so is compatibility: 32bit runs
"everywhere" and 64bit currently doesn't.
For 32bit releases, you need to use Cinder version 0.8.4. For 64bit releases
Cinder 0.8.5 is mandatory. Please read lib/README.TXT for more details on
Cinder and how to get it.
Use XCode to compile. For 32bit builds, XCode 4.0 is sufficient.
For 64bit builds, you need XCode 4.6 or newer and you need to activate
the C++11 features.
The project files are in syfluid/xcode.
Use Visual Studio / Visual C++ 2010 (particularly, if you use the
prepackaged Cinder 0.8.4 Option #1 as described in lib/README.TXT). I did
not test newer versions of Vision C++, yet. I also did not try to build a
64bit version on Windows, yet, so no hints for that at this time. But using
Cinder 0.8.5, you should be able to create a 64bit build also on Windows.
The project files are in syfluid/vc10.
Use XCode 4.6 or newer in conjunction with Cinder 0.8.5 (have a look at
lib/README.TXT on how to get Cinder 0.8.5).
You need to be a registered iOS developer, if you'd like to deploy syfluid
for iPad on your own iOS device: https://developer.apple.com/programs/ios/
Nevertheless, you can run it on the XCode iPad emulator, without registering.
The project files are in syfluid/xcode_ios.
README.TXT updated by sy2002 on 20th of July 2014