Currently using the "elastic" flags for particle behavior, which looks decent when it is flowing downwards but when the icecream collects in cup it is too liquidy. Also this gives it a springy bounce which I am not sure how to take out. I am wondering how I should make it thicker more solid along but to stay a bit elastic? Can I change behavior of particle after it is created?

I have tried with a "spring" flag and "viscous" flag but it looks sort of the same.

Demo Clip


  -- Create Particle System
  local particleSystem = physics.newParticleSystem{
    filename = _PRT,
    radius = 1,
    imageRadius = 2

  offset_x = _C.x + 70
  offset_y = _UL.y + 100
  -- Paramaters for red particle faucet

  local particleParams_red =
          flags = { "elastic"},
          linearVelocityY = -10,
          color = { 1, 0, 0.1, 1 },
          x = offset_x,
          x = offset_x + display.contentWidth * 0.15,
          x = offset_x + display.contentWidth * -0.15,
          y = offset_y,
          lifetime = 60.0,
          radius = 5,

Check out the powder toy: enter link description here

The ice cream you are attempting to create is a lot more like a collection of soft bodies:

See this video for demonstration please.

It doesn't need to be liquidy once it's in the cup. The liquid could be visually in another layer just to simulate the smooth movement of ice-cream pouring down.

The real icecream (that will stay in the cup) does not have to be liquidy going down. You should consider using soft bodies with little bounce and high friction and a small mass. You can use the liquid for the visual effect of pouring and use a lot of possibly blurred tiny soft bodies cause ice-cream is a lot more like sticky sand than liquid and will look when tweaked right, more realistic as such.

Another option if you don't plan to move continue with the physical simulation, is to build the solid shape of the ice-cream programatically by adding mass where the liquid hits.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .