Fluvio - Fluid Dynamics for Unity

Discussion in 'Assets and Asset Store' started by Thinksquirrel, Jul 3, 2011.

  1. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    [​IMG]

    Real-time fluid dynamics.

    Fluvio is Thinksquirrel's middleware solution for real-time fluid dynamics. With both a 2D and 3D solver, Fluvio can simulate accurate fluid physics including but not limited to:
    • Incompressible/slightly compressible fluid dynamics
    • Liquids and gasses (fire, volumetric smoke)
    • Fluid interaction (oil and water)

    Multiple particle emitters, attractors, and plugins are supported. Fluvio also includes refractive shaders, particle shadows, and more.

    Fluid dynamics on all platforms.

    Fluvio currently supports all platforms (except for Flash currently). Console developers: We can work with you to get Fluvio up and running on your platform.

    Build. Create. Extend.

    Fluvio has an easy-to-use interface built right into the Unity editor. It also provides a fully documented API.

    All of the tools available to you.

    Fluvio 2 Professional contains all source code (C#). Fluvio 2 Standard contains all of the functionality of Fluvio 2 Professional, at a lower price. Enterprise and Free editions are available as well.

    Available in the Asset Store.


    Fluvio 2 can be purchased now in the Unity Asset Store.

    Media



    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]
    Last edited: Jul 28, 2014
  2. I am da bawss

    I am da bawss

    Member

    Joined:
    Jun 2, 2011
    Messages:
    2,361
    I am very interested. what's the implementation like? How do you add it to the scene?
  3. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Thank you for your interest! Fluids are implemented using a modular component structure. One component defines the fluid and its properties. The other components are emitter components that control where the fluid comes from, or fluid plugin components, which do...just about anything. Finally, you can emit a prefab with every fluid particle, which can contain particle plugins. You can place as much or as little as you need for your project requirements.

    The whole workflow is pretty organic and what you would expect to do in Unity, and is documented. I'll be making a workflow video very soon to show these different features.
  4. zine92

    zine92

    New Member

    Joined:
    Nov 13, 2010
    Messages:
    1,347
    Hmm. I thought i saw this got submitted before or something like dat before. Fluid sim is one thing that is very hard to make and well i think it is def worth the money. Will check it out.
  5. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Just wanted to announce that Fluvio has been released, and is currently on sale for $50 USD! Hurry and pick it up before it reaches its normal price of $75 USD.

    http://u3d.as/1Zf
  6. unity_sg

    unity_sg

    New Member

    Joined:
    Sep 14, 2010
    Messages:
    90
    Hi guy, nice job
    Is it possible to simulate some kind of sand, fluid physics and nice renderer ?
    If yes can you show it with a webplayer please ?
  7. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Messages:
    10,961
    The online web demo keeps sending me to download unity webplayer but I have it. Any videos instead?
  8. outtoplay

    outtoplay

    Member

    Joined:
    Apr 29, 2009
    Messages:
    696
    Looks great! And thanks for addressing Mobile in your Product post! Will definitely check it out.
  9. Micha.Stettler

    Micha.Stettler

    Member

    Joined:
    Jun 11, 2009
    Messages:
    139
    Had the same problem, try to reload the webpage multiple times, that helped for me.
  10. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Hey seb, and thanks! Sand simulation is possible, but a plugin would need to be written to handle things like sand wetting properly. Better built-in granular physics is on the roadmap.

    I've noticed this issue too. I'm currently working on it. Also, I should have a video out by next week.

    Thank you! =)


    Wanted to let you guys know that 1.1 is on the way - it has a few minor bug fixes, some more documentation, and a couple of features. I'll have more information on 1.1 by the end of the week.
  11. jesta

    jesta

    Member

    Joined:
    Jun 19, 2010
    Messages:
    260
    Very interested in buying, but I have the same problem as others with your web demo. Will wait until then, but great work nonetheless ;)
  12. Tinus

    Tinus

    Member

    Joined:
    Apr 6, 2009
    Messages:
    389
    Looking great! Gotta brainstorm me some physics puzzlers. :)

    Hey ThinkSquirrel, I seem to recall your original post mentioning aerodynamics processing, right? Could you specify how that would work? From what I can tell from the demo all the fluids use a particle-based approach? Is that how aerodynamics are handled as well, or do you use a navier stokes solver that interacts with colliders? Oh, and any of this in the current release? I'm asking this because I like tinkering with subsonic flight dynamics (think gliders and parachutes), but my own implementations of the physics are quite lacking and I'm looking for something better.
    Last edited: Jul 14, 2011
  13. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Hey folks, just wanted to give an update:

    I've got the shader running on mobile devices now! Unfortunately, since Unity mobile doesn't currently support depth textures, getting the fluid to composite properly in 3D scenes currently takes some creative camera work.

    Unfortunately, aerodynamics got cut from the initial release, in order to focus more on a particle approach. I am currently looking at more applications to use the solver besides just particle physics, though, and aerodynamics is high on the list.

    Speaking of 1.1, I have some more info for you guys about the release (which will be coming within the next few weeks):

    • Vertex softbodies - Advect meshes instead of particles for softbody simulation! Allows you to create softbodies with your own meshes.
    • More emitters - Line emitter (random and uniform), plane emitter (random and uniform), cube emitter (random and uniform), circle emitter, and ellipsoid emitter.
    • Buoyancy demo - A simple demo scene showing how simple buoyancy can be achieved (for boat simulations, floating objects, etc.)
    • Video tutorials, footage, and documentation - More documentation will be included with 1.1. I will also be releasing some videos of Fluvio in action.

    Please note that the 1.1 release will mark the end of Fluvio's introductory sale, and the price will raise to $75 USD.

    Thank you to everyone who has purchased Fluvio! Please feel free to show your support by leaving a review. Also, don't hesitate to contact me with any questions regarding product issues and support.
    Last edited: Dec 19, 2012
  14. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
  15. BigB

    BigB

    Member

    Joined:
    Oct 16, 2008
    Messages:
    458
    The webplayer doesn't work in either Chrome or IE.
    Both return "invalid file length.
    Any chance to see a video of it ?
  16. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Sorry about that - it was still uploading when I posted it. Try refreshing the page or going to the link in the first post.

    Videos will be coming very soon =)
  17. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Wanted to let you guys know that I've decided to do an overhaul in the class structure/splitting off the API and some major performance boosts (no more instantiating/destroying particles!) for the 1.1 release.
  18. zine92

    zine92

    New Member

    Joined:
    Nov 13, 2010
    Messages:
    1,347
    Maybe a web build after all is done would be good. Sounds like a good plan to make it smoother and if there's no instancing/destroying, how do you make the particles? By disabling/enabling them?
  19. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Correct. It enables/disables the particles and their solvers and uses instance caching (up to the max particle amount) - it'll only create new objects if that number is increased, and periodically destroy if the number is decreased substantially.

    I'll definitely upload a webplayer when this stuff is done, along with (finally) some videos. Just finished some of the editor scripts tonight =)
  20. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Just finished a video of the 2D demo. I'll post a 3D and mobile showcase, as well as a workflow video soon.



    EDIT: This video is outdated, check the first post
    Last edited: Dec 19, 2012
  21. bigkahuna

    bigkahuna

    Member

    Joined:
    Apr 30, 2006
    Messages:
    5,420
    Looks cool.
  22. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Finally! Finished refactoring and documenting all of the code. I have created a scripting reference: http://thinksquirrel.com/docs/fluvio/reference/

    If you've already purchased Fluvio and want to try the 1.1 beta, just send me an email at beta@thinksquirrel.com.

    I plan on releasing 1.1 by the end of the week. Just a heads up that the price will increase to $75 USD, so this week is the last chance to take advantage of the introductory sale.
    Last edited: Aug 11, 2011
  23. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Wrapping up 1.1 for submission - just finished recording the first video tutorial as well.

    Here's a pic of the new editor:

    [​IMG]

    EDIT: This pic is outdated, check the first post
    Last edited: Dec 19, 2012
  24. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    1.1 has been submitted. For those that are interested:

    ******** VERSION 1.1 ********
    Fluvio:
    • Major refactoring to increase code stability. Please uninstall any old versions of Fluvio prior to installing 1.1!
    • Fluids are now instance managed. No more Instantiate() and Destroy()! up to a 50% mobile speed increase.
    • Introducing the Fluvio API! Check the online documentation for more information.
    • Fixed particle raycaster issues.
    • Raycast skin width can now be adjusted.
    • Added new particle collision types.
    • 2D fluid shader now works with forward rendering (and on mobile!)
    • New emitters!
      • Cube emitter
      • Line emitter
      • Burst emitter
      • Ellipsoid emitter
      • Mesh emitter
    • Fluids and all emitters now have custom editors, including emitter/particle visualization!
    • Fluids now always emit up to max particles while emit = true.

    Example Project:
    • Fixed various bugs and issues.
    • Fixed MP3 file warning with the Fluvio example project.
    • Simplified example project layer setup.
    • Added a second 3D example scene.
    • Added a new tutorial scene, as seen in the 1.1 tutorial video.

    Issues:
    • Vertex softbodies are not fully implemented. Results can be unpredictable.
    Last edited: Aug 12, 2011
  25. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Just released Part 1 of the video tutorial!
    EDIT: This video is outdated, check the first post



    Also, 1.1.5 is coming soon (just submitted) - I've added fluid collision events and a FluidCollision class. Now any GameObject with a collider can use:

    • OnFluidCollisionEnter(FluidCollision other)
    • OnFluidCollisionStay(FluidCollision other)
    • OnFluidCollisionExit(FluidCollision other)

    These events are sent to both the collider and the rigidbody, similar to Unity's physics events.

    Fluid particle plugins can additionally use:

    • OnFluidSelfCollisionEnter()
    • OnFluidSelfCollisionStay()
    • OnFluidSelfCollisionExit()
    • OnFluidCollisionEnd() - passed after a delay of one physics frame from the exit event.

    Edit: 1.1.6 adds three more events:
    • OnFluidAnyCollisionEnter()
    • OnFluidAnyCollisionStay()
    • OnFluidAnyCollisionExit()

    Messaging can be enabled or disabled on a per-fluid basis.
    Last edited: Dec 19, 2012
  26. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    I'll just leave this here....

    EDIT: This image is outdated, check the first post
    [​IMG]

    Pre-baking fluid animations with lots and lots of particles =) Coming very soon.
    Last edited: Dec 19, 2012
  27. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Just wanted to let you guys know that 1.2 has entered the beta phase. I will be sending out emails this week to my past beta testers.

    If you have purchased Fluvio and would like to test the beta, please send an email to beta@thinksquirrel.com with your Invoice ID (you should have received this from the Asset Store).
  28. mrbdrm

    mrbdrm

    Member

    Joined:
    Mar 22, 2009
    Messages:
    483
    im having a problem importing the files under the editor file .
    none of the files get imported .
  29. nevaran

    nevaran

    Member

    Joined:
    May 21, 2010
    Messages:
    127
    this takes way too much performance, maybe some day when all computers are good...
  30. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Could you elaborate on this? I haven't had any problems importing. Are you getting an error or is the package not working?

    This is the #1 concern that I receive with Fluvio and a concern with fluid dynamics in general. In 1.2, I added support for pre-baking fluid physics into animation files (physics can easily be toggled on if it hits a specific object or another event occurs), and plan on adding more LOD features and optimizations. I've also been looking into multicore support for Fluvio as well. Go ahead and send me a PM and I can get you the beta for 1.2.

    The best way to get performance out of the fluid physics is to manage the smoothing distance, and use things like destructors/particle life to keep from having too many particles on screen at once.
    Last edited: Sep 6, 2011
  31. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    CPU usage for Fluvio after implementing multi-threading. Multiply by 2 for hyperthreading on 8 virtual cores. =D

    [​IMG]

    Currently working on re-implementing the neighbor search and threading that as well.
  32. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Hey folks,
    I'd like to share an interview done by the Houston Unity Group - it discusses Fluvio and the Asset Store, and also gives some insight into owning a startup company here in Houston.

    http://sqr.li/ZZo

    Also, I made a blog post about 1.2:

    http://sqr.li/ZZS
    Last edited: Sep 10, 2011
  33. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    The new version has been submitted to the asset store! Animations are finally here, and multithreading has made it into this version, as well :)

    Documentation/Changelog:
    http://thinksquirrel.com/docs/fluvio/reference

    Demo - split into a fluid demo and a smoke demo (all demo scenes are included with Fluvio):
    http://thinksquirrel.com/products/fluvio/demo

    I'll be posting a Getting Started Guide, as well as some more documentation this week.

    Again, if you've purchased Fluvio, I'd love to hear your feedback! You can reach me on this thread, through PM or at http://thinksquirrel.com/contact. Thanks again!

    Next on the roadmap (after which Fluvio will be considered feature-complete) will be a new shader with a proper lighting model (already in the works), and *finally* polishing up softbody support.
    Last edited: Sep 12, 2011
  34. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    I have a free Fluvio iOS app, FluidBox, coming to the App Store very soon! I may create a tutorial on how to build this as well (the entire app was created in about 72 hours, with the main features in about an hour, using the Fluvio API).

    Fluvio works on any device from the iPhone 3GS and up and is optimized for the iPad 2.
    Last edited: Dec 19, 2012
  35. mrbdrm

    mrbdrm

    Member

    Joined:
    Mar 22, 2009
    Messages:
    483
    i have a problem , all the emetters are upside down
    i have tested the included projects only .
  36. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Make sure to follow all installation steps at http://thinksquirrel.com/docs/fluvio/reference.

    Could you elaborate more on the problem? Is the entire camera view upside down, or are particles coming out the wrong way? An image would help.
  37. Tinus

    Tinus

    Member

    Joined:
    Apr 6, 2009
    Messages:
    389
    Hey Thinksquirrel, Fluvio is looking great so far! I'm just poking you again for details on the aerodynamics processing, since I've resumed my search for possible alternative physics solutions for Volo. :)
  38. Carwash

    Carwash

    New Member

    Joined:
    Nov 12, 2009
    Messages:
    95
  39. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Did you hit the G key at all? Try hitting that (to re-enable gravity if it was disabled), then hit R to reset.

    If that doesn't work, can you send me a screenshot? I heard about this issue and am very confused (I've never seen anything like it).

    Unfortunately, I'll probably be leaving aerodynamics out of Fluvio Core - putting that in explicitly will end up taking Fluvio in a different direction than where it is going. It can probably be done using the Fluvio.Solvers namespace and some fluid dynamics knowledge:

    http://thinksquirrel.com/docs/fluvio/reference/namespace_fluvio_1_1_solvers.html

    I can work with you and help you implement that feature. Also, if you've already purchased Fluvio and would rather use another solution, I can get you a refund.
    Last edited: Sep 21, 2011
  40. Carwash

    Carwash

    New Member

    Joined:
    Nov 12, 2009
    Messages:
    95
    Didn't hit G, here's a screen as requested. This screen is taken as soon as the webplayer loads, i've touched nothing, not G, not R not nothing.

    On Firefox 6.0.2, unity 3.4.1 pro installed, win 7 64 ultimate

    Attached Files:

  41. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Ah, seems to be a shader issue (probably with D3D). I'll look into this. What is your GPU?
    Last edited: Sep 22, 2011
  42. Carwash

    Carwash

    New Member

    Joined:
    Nov 12, 2009
    Messages:
    95
    GeForce GTS 250
  43. nightflyaz

    nightflyaz

    New Member

    Joined:
    Sep 27, 2011
    Messages:
    1
    How does the fluid handle shading? Say you were doing a water sim, would you use a cube map for reflection? Can you apply regular unity shaders to the fluid surface mesh?
  44. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    Currently it uses a custom screen-space shader - I'm working on a revamped fluid shader (with lighting), as well as true mesh geometry for the next release - it's a high priority on the roadmap.
  45. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
  46. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
  47. mrbdrm

    mrbdrm

    Member

    Joined:
    Mar 22, 2009
    Messages:
    483
    hi
    did you fix the upside down problem with the emitters ?
    i did what you say in the install guide with no luck .
  48. Thinksquirrel

    Thinksquirrel

    Member

    Joined:
    Feb 8, 2011
    Messages:
    904
    I'm trying to track that one down currently. The current version has a new shader (Fluvio-Composite-NoClip) - can you try replacing the composite shader in the fluid camera with the new one?
  49. mrbdrm

    mrbdrm

    Member

    Joined:
    Mar 22, 2009
    Messages:
    483
    where exactly ?
    in the fluid camera under main camera ?
  50. mrbdrm

    mrbdrm

    Member

    Joined:
    Mar 22, 2009
    Messages:
    483
    found it and changed it , still the same problem :(