User:Sebbas/Reports/2019

= Reports 2019 =

December 16 - 20

 * General:
 * Cleanup in fluid code, sort of a "post master merge cleanup" (bda4a28, a04573f)


 * Next up:
 * Fluids bug fixes and work on nodes in 2020!

December 09 - 13

 * General:
 * The Mantaflow patches (T59995) have been reviewed
 * Fixed all the issues that came up during the review (fc557cdd138c, 82d75a46ce37, f4db26f01b78, 881b90b9229f, 2fcf705a17dd, 63b0377e9619, c54fd66c0a17, a3328a8699ad, c98a82b7d5c7, 5d009982b151, 3d4e5a89eb57, d9328f69b827, b75c38ee8369)


 * Next up:
 * Land the Manta patches in master.
 * Write a "known issues" section for the new fluids system

December 02 - 06

 * General:
 * Added some more explanations to some of the diffs in the Manta review task (T59995).
 * Tried out all the macOS bugs from the workboard on phabricator to get on overview of the state of OSX bugs.


 * Next up:
 * Get reviewers attention for the Manta patch (T59995).

November 25 - 29

 * General:
 * The "Replay" cache is now able to reset the cache after changing any of the values from the domain settings (6feca2c).
 * In the "Final" cache type, you can now bake the entire simulation at once (5628318).
 * I added functionality to the flame vorticity field. For some reason, it had just been sitting there with no effect on the simulation. That's now fixed (aaa0cec, e96877c).


 * Review:
 * The review for the Manta fluids patch (T59995) is fully in sync with the fluid-mantaflow branch again.
 * An issue in the Manta C API has been addressed as well (6b7b619).


 * Bugs:
 * I helped Clément with a macOS bug fix (T71147). All credits to him though, I just typed away his debugging ideas on my Mac.


 * Next up:
 * Get reviewers attention for the Manta patch (T59995).

November 18 - 22

 * General:
 * I committed a bigger update for liquids. The update obviously included the patch for the liquid "blockiness" issue (e1aa388) but there were also some helpful smaller changes: There is now an option to constrain the number of simulation steps per frame (13124fa), and it's now also possible to manually set the FLIP ratio.
 * Another change is in the build system. The Mantaflow source files are now in  where they actually belong to (20933a1).


 * Bugs:
 * There was really annoying bug that didn't allow the user to render the scene. That's fixed now (baceb91).
 * An offset issue with liquid particles has been fixed (after changing the origin the simulation wasn't displayed at the correct location) (b0f221b).
 * Liquids are now finally completely visible in solid mode (b0b9271).
 * There was bug where Eevee was trying to draw a smoke volume although the domain was set up as a liquid domain. Not sure if anybody ever noticed this bug, but it's fixed now (98d7f35).
 * A mesh deallocation, which was leaking memory, has been fixed (fcb49d8).


 * Next up:
 * Spend more time on the actual review, update the patches and help the reviewers as much as possible to get branch into master.

November 11 - 15

 * General:
 * I finally managed to get the liquid "blockiness" issue under control. That's all.


 * Next up:
 * Commit all fixes for the liquid "blockiness" issue
 * Prepare the Manta review task. Didn't get to it last week and will definitely focus on it this week.

November 04 - 08

 * General:
 * This week I spent more time researching the liquid second order obstacles mode in Mantaflow itself. I managed to find the issue and was able to verify it in Manta. I also notified Nils about my findings.


 * Bugs:
 * Fix in addition to T61432: Sampling Subframes not working 2.8. This commit fixes the missing subframes when smoke is being emitted from particles.


 * Next up:
 * Go through more Manta bug reports on Phabricator
 * Mostly same as last week
 * Prepare the Manta review task T59995 for master merge (i.e. update diffs and descriptions)

October 28 - 01

 * General:
 * Minor cache improvements
 * Andy tried out the fluid-mantaflow branch and was able to point out some issues:
 * Bake jobs not fully multithreaded: For some reason BLI_task_parallel_range in manta.c had very inappropriate default parameters which were preventing proper multithreading. With Bastien's help this has been fixed: Mantaflow: Optimization for parallel tasks
 * Liquid "blockiness": Liquids are not yet using the second order obstacles mode and therefore flow around inclined obstacles results in "blockiness". I researched the problem, resolved 1 of 2 subtasks that solve this issue and am in contact with Nils to clear up the issue in Manta directly.


 * Next up:
 * Follow up on some discussions from the Mantaflow Task on Phabricator. They got a bit left behind as I was more focused on improving existing features and internal bug reports.
 * Try to fix the liquid "blockiness" issue. If fixed, Andy can re-simulate the beach scene.
 * Add a checkbox indicating static obstacles and run the geometry calculation step (i.e. update obstacles location) for such obstacles only once. This should speed up scenes with static obstacles a bit more.

October 21 - 25

 * General:
 * Continued cache optimizations from previous week.
 * Blender Conference

October 14 - 18

 * General:
 * This week I looked at the caching situation in the fluid-mantaflow branch: I thought it would be nice to see the baking progress in the viewport as well. So I started implementing a new "Cache Type" option.
 * The options for the cache type are "Replay" and "Modular".
 * Replay: It's similar to the current smoke caching in master (i.e. "press play to bake"). For manta, I was able to apply this to liquids too.
 * Modular: Is equal to the existing manta bake system (i.e. bake data, mesh, particles all separately).
 * The new option is located in the "Cache" panel. It's a first version, things like cache invalidation still need to be implemented.
 * Code: Mantaflow: Added first version of new cache system


 * Bugs:
 * Reviewed D6076: Volumetric: Debug Voxel Size

October 07 - 11

 * General:
 * Looked into some OSX bugs on the bug tracker, especially T64024 (remains unresolved). All in all interesting, OSX bugs might become a niche area of mine (besides physics maintenance).
 * Mantaflow: More research on particles as smoke emitters T70175. Was resolved partially two weeks ago. The unresolved part looks more like unfortunate settings - i.e. not a bug.
 * Confirmed to be unproblematic: T70531.


 * Bugs:
 * Fix TT70511: Mantaflow modifier does not fully copy parameters when linked (ctrl+L) from one object to multiple other objects.
 * Fix T61432: Sampling Subframes not working 2.8
 * Fix Github issue #34: Liquid Sim | When resolution >64 Blender crashes after finishing simulation

September 30 - 04

 * General:
 * Searched for bottlenecks in the baking system. Found that writing cache files and certain Mantaflow internal functions still take disproportionately long (e.g. in secondary particles plugin).
 * Idea to fix caching bottleneck: Caching needs to be divided into two modes:
 * Preview: Equal to existing bake system (e.g. pause + resume functionality, higher overhead due to file IO)
 * Final: Only bake files that are required for replay of final scene (e.g. only load liquid mesh or secondary particle system, ignore supporting liquid grids or secondary particle life + velocities, no pause + resume functionality)
 * Preprocessed Manta code in intern/mantaflow/intern/manta_develop/ from now on also formatted with clang-format (for better readability, still read-only though) (4f33838)


 * Mantaflow repository (Bitbucket):
 * Fixed crash with secondary particles being out of bounds (7d603c6 )
 * Refactored secondary particles emission: Multi-threading support (21dc483)
 * General refactor (ec81b2c, 5a96e17, fb5985b, 7420331, 1c3ca3b, 39d60d1)

September 23 - 27

 * General:
 * Mantaflow: Fixed viewport issue with voxel indicator cube in fluid domain object (f1c3777)
 * Mantaflow: Fixed crash that occurred during "Bake Free" when using an unknown / non-existent / invalid cache directory. (Only found this bug through the attached .blend file from T70175) (a937bb8)
 * Mantaflow: Fixed issue with missing materials (regression bug) (0d31127)


 * Bugs:
 * Fix T70176: Modifier added to object after mantaflow does not show in stack
 * Fix part of T70175: Mantaflow not using subframes for particle emitters in Gas sim


 * Miscellaneous:
 * Tested overall usability of new fluids bake environment + playing with denoise settings in Cycles (Vimeo)