Neos-Metaverse / NeosPublic

A public issue/wiki only repository for the NeosVR project
197 stars 9 forks source link

Fluid simulation for research purposes #2215

Open alexderpyfox opened 3 years ago

alexderpyfox commented 3 years ago

Is your feature request related to a problem? Please describe.

Fluid simulation to simulate water flow and flooding Could be used to simulate effect of rising sea levels on country's below sealevel and education to study the effects

Additional

It can be used for education and research purposes in universities

Toxic-Cookie commented 3 years ago

A library like this could be potentially incorporated: https://assetstore.unity.com/packages/tools/physics/obi-fluid-63067

Khosumi commented 3 years ago

Warning: Please note that fluid simulation is a very demanding task. Be aware of its performance implications before using it.

What to use it for:

What NOT to use it for:

Frooxius commented 3 years ago

This isn't unfortunately something we'd consider adding anytime soon. General Fluid simulations are typically very heavy for realtime usage, especially when a lot of other stuff is already going on, so it'd either be relatively simplified one, mostly for the visual, or offline simulation that gets baked and played back.

I'm not too sure if those could be usable for education as well, typically those seem to use also more specialized off-line fluid simulations that are designed to model the desired effects, because fluid sims like you'd find in Blender and such aren't necessarily suitable for research purposes or large scale simulations.

Usually in games you'd use simplified systems that are designed for your specific use-case instead of a general fluid sim, because those can be made a lot more performant and behave the way you need.

I'd say specifically for research this would probably something left to implement externally, rather than provided for us. We could potentially provide a fluid sim in similar style to Blender for baking effects or very simplified one for graphical effects, so that kinda depends on what exact type you're looking for, but in either case they'd not be on priority list right now.

Zandario commented 3 years ago

TL;DR - All that is needed is a grid or lattice system that can cheaply access its neighbors

As someone who is incredibly determined to get fluid simulation done well in Neos, full blown support isn't required. Really all we (I) need can be summed down to one thing: A Simple grid or lattice support.

The main calculations done in Fluid Dynamic Simulation is done by taking a cell's neighbors, getting the average value and doing whatever computation you want.