WEBGL GPU MARCHING CUBES | SPH SIMULATION
Clic and drag to rotate the view



The Controls options are explained below:

totalParticles: changes the number of particles
used in the SPH. Affects fps, so use low values. (*) mass multiplier: change particle´ s mass to
increase all the Forces that affect it. k constant: change the way how pressure
forces work in all the particles. viscosity term: change the way how viscosity
forces work in all the particles. time integrator: change the speed of the
simulation, high times causes divergences. (**) particle Size: size of the particle to be
painted in the 3D texture for the MC. spread: makes a 3d blur in the 3d texture
for the MC. Affects fps, use as low as possible. (*) range: value used to obtain the isosurface,
high values filters noise particles. opacity: changes the final alpha value of the
mesh for blending (transparency) effects. brigtness: mix between the final color and
full black. brigtness: mix between the final color and
gray color (0.5, 0.5, 0.5). finalBlur: 2D blur used to smooth the final
result rendered in the screen. (*) spread Z: 3d variant of the particle size
it makes a hard particle spread in the Z axis. show simulation: renders the simulation as
particles, the particle size affects this.

* The simulation runs around 30 fps in desktops and 20 fps
in laptops, if it goes too slow in your browser lower the total
particles, the spread and the final blur values in the menu.
This would also require to activate the spreadZ flag, and
raise the range value to clear the floating noise bubbles.

** High time integrator values might produce some divergences
in the simulation when the sphere is moved by the user.
Lower the time value to run slower time steps to avoid it.
Framerate also might be raised disabling the interactive mode.

*** This simulation might not work in mobile devices. :(