google / liquidfun

2D physics engine for games
http://google.github.io/liquidfun
4.7k stars 641 forks source link

How to Manipulate Density/Force on a Body dynamically using LiquidFun.js #65

Open roshanpshajan opened 8 years ago

roshanpshajan commented 8 years ago

Hi, I am trying to use the JavaScript version of LiquidFun to achieve a density based interactive simulation, where I change the density of a ball dynamically so that it floats or sinks or partially float. I took the TestSoup.js example code as my base code. I tried assigning density values to the ball and the liquid molecules, in the hope that the physics would play out itself and the ball would do the expected accordingly. However, it didnt make any difference and the ball some or the otherway always goes to a floating position.(just like in the TestSoup example, unless you use the mouse to force and place it at the bottom) Shouldn't the density property alone do the needful for my case? Or if it doesn't, is there a way to apply a continual force(just on the ball), so that it will stay sinked or float or partially float , depending on the values I specify. selection_036

stewartmiles commented 8 years ago

Density is applied an entire particle system to simplify the simulation and make it performant on a majority of target platforms. Michael Leviston over on the LiquidFun group put together a really neat demo of density / temperature per particle https://groups.google.com/forum/#!topic/liquidfun/pYP6lvW39Sg . If you ask (beg) nicely he may share a patch as a starting point :)

Cheers, Stewart

On Thu, Jul 14, 2016 at 1:29 AM, Roshan P Shajan notifications@github.com wrote:

Hi, I am trying to use the JavaScript version of LiquidFun to achieve a density based interactive simulation, where I change the density of a ball dynamically so that it floats or sinks or partially float. I took the TestSoup.js example code as my base code. I tried assigning density values to the ball and the liquid molecules, in the hope that the physics would play out itself and the ball would do the expected accordingly. However, it didnt make any difference and the ball some or the otherway always goes to a floating position.(just like in the TestSoup example, unless you use the mouse to force and place it at the bottom) Shouldn't the density property alone do the needful for my case? Or if it doesn't, is there a way to apply a continual force(just on the ball), so that it will stay sinked or float or partially float , depending on the values I specify. [image: selection_036] https://cloud.githubusercontent.com/assets/8302288/16833053/1ed8377a-49cb-11e6-8dd1-5be9dd26a651.png

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/google/liquidfun/issues/65, or mute the thread https://github.com/notifications/unsubscribe/AFw1RMBQKRK4_nVOTDwbhg4k0Ss0366yks5qVfODgaJpZM4JMMoo .