Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Help  high viscosity fluid (molten cheese/honey-like)
#1
dear all,

I am currently working on a app that needs to create a high viscosity fluid (molten cheese/honey-like substance). I'm wondering if it is possible to use this asset to create such substance. 

description of what the substance should be able to do: 
 - the substance needs to be stretchy with high viscosity and high stickiness (these properties are adjustable on the app)
 - when poured from above, the substance should be able to maintain a constant flow up to a certain height.
 - like rubber band: it should stretch out by itself and create somewhat of an hourglass shape with the middle part is stretched out thinner than the two ends which kind of blobs out and stick to the surface. 
 - the longer the distance between the point it is poured from and the contact point below, the more stretched out, and thinner the flow gets
 - when the substance is poured from above a certain height, the substance is so stretched out that the flow breaks and snaps - just a little bit- (like when a rubber band tears and snaps).

so in short, I'm hoping to make something that looks that cheese

now i understand many of these properties can be adjust on the app however, I am wondering if it is possible to achieve all of the points above. 
thank you for your time and have a good day.


Attached Files Thumbnail(s)
   
Reply
#2
(18-12-2019, 11:13 AM)duc_nm Wrote: dear all,

I am currently working on a app that needs to create a high viscosity fluid (molten cheese/honey-like substance). I'm wondering if it is possible to use this asset to create such substance. 

description of what the substance should be able to do: 
 - the substance needs to be stretchy with high viscosity and high stickiness (these properties are adjustable on the app)
 - when poured from above, the substance should be able to maintain a constant flow up to a certain height.
 - like rubber band: it should stretch out by itself and create somewhat of an hourglass shape with the middle part is stretched out thinner than the two ends which kind of blobs out and stick to the surface. 
 - the longer the distance between the point it is poured from and the contact point below, the more stretched out, and thinner the flow gets
 - when the substance is poured from above a certain height, the substance is so stretched out that the flow breaks and snaps - just a little bit- (like when a rubber band tears and snaps).

so in short, I'm hoping to make something that looks that cheese

now i understand many of these properties can be adjust on the app however, I am wondering if it is possible to achieve all of the points above. 
thank you for your time and have a good day.

Yes, perfectly doable. However keep in mind that high-viscosity fluids require smaller timesteps to maintain stability (so the computation is costlier), and do not allow for coiling/buckling effects in realtime (these require way more advanced viscosity models than the one we use, based on XSPH).

Here's a pic of the effect you describe, being simulated and rendered at 9 ms/frame in a 4-core CPU:
[Image: gl7sc9D.png]
Reply
#3
(18-12-2019, 11:25 AM)josemendez Wrote: Yes, perfectly doable. However keep in mind that high-viscosity fluids require smaller timesteps to maintain stability (so the computation is costlier), and do not allow for coiling/buckling effects in realtime (these require way more advanced viscosity models than the one we use, based on XSPH).

Here's a pic of the effect you describe, being simulated and rendered at 9 ms/frame in a 4-core CPU:
[Image: gl7sc9D.png]


Thank you josemendez for the quick response

I want to make this in 2D on mobile so it should require a lot less computation. I am assuming this is also possible?
Reply
#4
(18-12-2019, 11:41 AM)duc_nm Wrote: Thank you josemendez for the quick response

I want to make this in 2D on mobile so it should require a lot less computation. I am assuming this is also possible?

Yes, in 2D things get a lot less performance heavy. However keep in mind there's a lot of things affecting performance:
- Amount of particles (fluid resolution). If you need very fine features in the fluid you'll need many particles.
- Particle smoothing radius (larger radii are less performant, but increase simulation quality)
- Timestep/iterations per frame. Depending on your needs this can vary wildly, and have a great impact on performance.
- Rendering resolution vs screen pixel density. Mobile devices are heavily fill-rate limited, so lowering fluid rendering resolution in high-density screens is almost always needed.

So there's not a way to tell for sure if what you want to do will work well enough in a certain device, except for trying it out. My advice would be: unless this is what you game revolves around and you need accurate simulation, fake it. If you absolutely need a physics simulation for this, and this is not secondary eye candy, then go ahead.
Reply