InteractiveComputerGraphics/SPlisHSPlasH
SPlisHSPlasH is an open-source library for the physically-based simulation of fluids.
24 Releases
Latest: 2w ago
2.17.0Latest
📋 Changes
- added implementation of turbulence method: Kee et al., "Turbulent Details Simulation for SPH Fluids via Vorticity Refinement", Computer Graphics Forum, 2023 (thanks to Min Hyung Kee)
2.16.1
📋 Changes
- bugfix in Projective Fluids solver (thanks to Lukas Hof)
- added implementation of turbulence method: Liu et al., "Turbulent Details Simulation for SPH Fluids via Vorticity Refinement", Computer Graphics Forum, 2021
- Scene files now have a namespace for each pressure and non-pressure solver. This means existing scene files have to be adapted (see doc/file_format.md).
- fixed some bugs in the elasticity solvers
- deactivated avx in Linux wheels due to problems
2.15.0
📋 Changes
- macOS support (thanks to Robin Rademacher)
- update to OpenGL 3.3 (thanks to Robin Rademacher)
- updated CompactNSearch
- updated DiscreGrid
- Fixed CI for Python wheels (thanks to Stefan Jeske)
- Implemented alternative (Blender style) camera controls (thanks to Fabian Löschner)
- updated pybind11 to version 3.0.0
- updated zlib to version 1.3.1
- + 7 more
2.13.0
📋 Changes
- added implementation of surface tension method: Jeske et al. "Implicit Surface Tension for SPH Fluid Simulation", ACM Transactions on Graphics, 2023 (thanks to Stefan Rhys Jeske)
- bugfix: in emitter scenes now all particles are reset correctly
- updated PositionBasedDynamics
- updated GenericParameters
- added citation file
- fixed rigid body colors in visualization
- fixed export of static rigid bodies
- added missing include
- + 9 more
2.12.0
📋 Changes
- added PLY exporter
- improved the DFSPH implementation significantly
- added documentation for DFSPH
- improved GUI
- updated imgui
- removed AntTweakBar
- bugfixes
- implemented an avx version of XSPH
- + 11 more
2.11.0
📋 Changes
- added implementation of elasticity solver by Kugelstadt et al. "Fast Corotated Elastic SPH Solids with Implicit Zero-Energy Mode Control", 2021
- added fast AVX Cholesky solver written by José Antonio Fernández-Fernández
- added a tool to skin a visual mesh to the moving particles of an elastic solid in a postprocessing step
- extended the volume sampling tool by the method of Kugelstadt et al. 2021
- extended the volume sampling tool by the method of Jiang et al. 2015
- now each fluid model has an id
- extended exporters to write one file per object id
- added new foam generator tool to generate spray, foam and bubble particles in a postprocessing step in order to improve the visual realism of the final rendering
- + 1 more
2.10.0
📋 Changes
- added support of embedded Python scripts (must be activated in CMake)
- added possibility to animate rigid bodies in Python
- added Implicit Compressible SPH pressure solver by Gissler et al. 2020
- fixed bug in AnimationField (thanks to Lukas Westhofen)
- improved stability of volume maps
- added ParaView partio plugin
- extended tooltips by json key
- small avx improvements
- + 10 more
2.9.0
📋 Changes
- added new surface tension model (thanks to Fernando Zorilla and Marcel Ritter)
- added a test for reading and writing the state of a simulation
- updated to Eigen 3.3.8
- added a hotkey (m) to rescale the range of the current color map
- color maps range is determined automatically
- all particle fields can now be used for rendering
- improved stability of implicit boundary handling
- improved documentation
- + 8 more
2.8.7
📋 Changes
- updated to Eigen 3.3.8
- added a hotkey (m) to rescale the range of the current color map
- color maps range is determined automatically
- all particle fields can now be used for rendering
- improved stability of implicit boundary handling
- improved documentation
- added DebugTools class which generates additional particle data for debugging
- added Python example to add a particle field, this can be used for visual debugging or to export additional data per particle
- + 6 more
2.8.2
📋 Changes
- fixed Python wheels
2.8.1
📋 Changes
- fixed the python simulator
2.8.0
📋 Changes
- performance improvements
- added GUI based on the imgui library
- added GLFW
- removed dependency on glew
- removed dependency on freeglut
- bugfixes
2.7.0
📋 Changes
- added Python binding using pybind (thanks to Stefan Jeske)
- added Python examples
- performance improvements: Elasticity_Peer2018
- bugfixes
- new command line parameter to overwrite scene settings
2.6.0
📋 Changes
- performance improvement: added AVX support for TimeStepDFSPH, DragForce_Gissler2017, Viscosity_Standard, Viscosity_Weiler2018, MicropolarModel_Bender2017
- added AVX support for 2D simulations
- added VTk export of rigid bodies
- added parameter to control min CFL step size
- cleaned up classes of graphical user interface
- exchanged Static/DynamicBoundarySimulator by SPHSimulator which can handle dynamic and static scenes
- added regular surface sampling
- updated to Eigen 3.3.7
- + 1 more
2.5.0
📋 Changes
- added the boundary handling method "Volume Maps: An Implicit Boundary Representation for SPH"
- added the boundary handling method "Density Maps for Improved SPH Boundary Handling"
- added regular particle sampling
- PartioViewer can play sequences
- PartioViewer can write sequences as jpg files
- PartioViewer can generate movies using ffmpeg
- PartioViewer can render rigid body data
- PartioViewer supports multiphase data
- + 2 more
2.4.0
📋 Changes
- added rigid body export
- added VTK file export (enables the data import in ParaView)
- added file dialog for Windows
- added a Python plugin for Maya to model scenes in Maya and export them to SPlisHSPlasH
- added animation fields to animate particles in an area using a math script
- improved fluid emitters
- added option to simulate without GUI
- added GPU neighborhood search (cuNSearch) which can be selected in CMake
2.3.0
📋 Changes
- added the Implicit SPH Formulation for Incompressible Linearly Elastic Solids of Peer et al. 2017
- added Corotated SPH for deformable solids of Becker et al. 2009
- SPlisHSPlasH now supports 2D simulations
- SPlisHSPlasH now has enhanced particle coloring
- partio export of arbitrary particle attributes is now supported
- renamed Static/DynamicBoundaryDemo to Static/DynamicBoundarySimulator
- added documentation of file format
- added colormaps
- + 3 more
2.2.0
📋 Changes
- added support for multi-phase simulations
2.1.0
📋 Changes
- added implicit viscosity computation of Weiler et al. 2018
- added implicit viscosity computation of Takahashi et al. 2015
- significantly improved performance of Projective Fluids
- added counting class
2.0.0
📋 Changes
- the parameters of all methods are now handled by the library GenericParameters
- the GUI is automatically generated using the information of the generic parameters
- updated PositionBasedDynamics library which now supports arbitrary rigid body collisions
- added Logger
1.3.1
📋 Changes
- added implicit viscosity computation of Peer and Teschner 2016
- fixed drag force computation of Gissler et al. 2017
1.3.0
📋 Changes
- added implicit viscosity computation of Peer et al. 2015
- SPlisHSPlasH now uses MD5 hashes to verify that cache files are valid
- added volume sampling tool
- cleanup fluid model
- added drag force computation of Gissler et al. 2017
- added drag force computation of Macklin et al. 2014
- bugfixes
1.2.0
📋 Changes
- added micropolar model for turbulent fluids (Bender et al., "A Micropolar Material Model for Turbulent SPH Fluids", ACM SIGGRAPH/EUROGRAPHICS Symposium on Computer Animation, 2017)
- added vorticity confinement method
- added fluid emitters
- added partio export for fluid simulations
- updated to Eigen 3.3.4
- bugfixes
1.1.0
📋 Changes
- added new scenes
- added implicit viscosity (Bender and Koschier, "Divergence-free SPH for incompressible and viscous fluids", IEEE Transactions on Visualization and Computer Graphics, 2017)
- added Projective Fluids implementation (Weiler et al., "Projective Fluids", Proceedings of Motion in Games, ACM, 2016)
- updated CompactNSearch
- updated PositionBasedDynamics
- optimized DFSPH
- updated to Eigen 3.3
