From BlenderWiki

Jump to: navigation, search
Note: This is an archived version of the Blender Developer Wiki. The current and active wiki is available on wiki.blender.org.

Week 2

What's been done

  • I optimized the liquid inflow (which Mantaflow needs to create a mesh). Before I was using the bounded raycasting function to determine points inside a mesh; Ideasman42 pointed me to the better (geometry) raycasting function which I am using now. (rBf13e9ccc6159, rB492e457afaab)
  • I experimented with the Mantaflow mesh smoothing functions as the mesh surfaces that Mantaflow produced were much rougher than the Elbeem ones. Using them improves surface smoothness. However, they are not so performant and my mentor advised me against using them. (rBbe151d5ebd9e, rBb7d4d4a440b5)
    The roughness problem was solved differently: What determines the mesh surface roughness is the randomness factor in the Mantaflow particle sampling function (sampleLevelsetWithParticles()). I am now using a much smaller randomness value (was 0.4). However, GUI access would be nice in the future.
  • I was able to find out more about deprecating modifiers - my question from last week. Apparently, the last time a modifier was "killed" was during the transition to bmesh in v2.63.
    What's important to me is that deprecating modifiers has been done before. Why? I will continue to build the Mantaflow liquids around the smoke modifier and leave the fluid modifier untouched. That way, the smoke modifier will turn into a "correct" and "more complete" fluid modifier (handling gases (smoke, fire) and liquids). And if desired at some point, one can deprecate Elbeem by removing the old fluid modifier.

Next up

  • Integrate the liquid cache so that Blender loads the .bobj.gz files automatically.
  • Check how sampleLevelsetWithParticles() handles distances
  • Create comparision video "Falling drop" for Mantaflow vs. Elbeem

Questions

  • (low-prio) Ask bmesh developers about their experience deprecating a modifier.