syfluid Code
Fancy interactive fluid simulation for gfx fans, VJs and demo coders
Brought to you by:
sy2002
File | Date | Author | Commit |
---|---|---|---|
glsl | 2013-04-28 |
![]() |
[3b9943] GLSL: Ported AddForce function to GLSL, which l... |
lib | 2018-09-29 |
![]() |
[ea6e75] libcinder: updated download paths |
resources | 2014-07-20 |
![]() |
[b9d4b8] updated help image for release v1.2 |
src | 2014-07-20 |
![]() |
[67f4ce] fix quality-change-after-pause bug |
vc10 | 2014-07-20 |
![]() |
[7a8376] new help image for non-retina and windows v1.2 |
xcode | 2014-07-20 |
![]() |
[7a8376] new help image for non-retina and windows v1.2 |
xcode_ios | 2014-07-20 |
![]() |
[b804ae] Retina and iOS versions are ready for the versi... |
.hgignore | 2014-07-06 |
![]() |
[fcd4f0] Added PAUSE and single step feature |
.hgtags | 2014-07-20 |
![]() |
[007306] Added tag V1.2 for changeset 7a837688cef3 |
README.TXT | 2014-07-20 |
![]() |
[b804ae] Retina and iOS versions are ready for the versi... |
WARNING-RETINA.TXT | 2014-07-20 |
![]() |
[b9d4b8] updated help image for release v1.2 |
WHATSNEW.TXT | 2014-07-20 |
![]() |
[c9a306] v1.2 release |
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 ABOUT: ====== 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: code@sy2002.de 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: http://sourceforge.net/projects/syfluid/files/executables/ 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: Windows: syfluid.exe Mac: syfluid Retina Displays: 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. PRESETS: ======== 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 the beat. - 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. ACKNOWLEDGEMENTS: ================= Uses the Cinder toolbox http://libcinder.org Based on Jos Stam's "Real-Time Fluid Dynamics for Games" http://www.dgp.toronto.edu/people/stam/reality/Research/pdf/GDC03.pdf 3D Lighting and gradient usage inspired by Phagor's Processing Sketch "Fluid" http://openprocessing.org/visuals/?visualID=197 Gradient class inspired by Toxi's gradient class http://toxi.co.uk/p5/gradient/gradient.pde HOW-TO-COMPILE: =============== You can compile syfluid for OSX and for Windows. Get the sources from SourceForge: https://sourceforge.net/projects/syfluid/files/src/ 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. OSX: 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. Windows: 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. iPad: 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