Age | Commit message (Collapse) | Author |
|
Note that `BKE_library.h`/`library.c` were renamed to
`BKE_lib_id.h`/`lib_id.c` to avoid having a too generic name here.
Part of T72604.
|
|
|
|
Fluid guiding functionality was broken in the bake / read cache loop in fluid.c. Committing this to the release branch as otherwise fluid guiding would not have worked as expected (i.e. not at all).
|
|
Important fix that needs to go into the release. The upscaled noise cache was not read into upscaled grids.
|
|
Cache files are currently loaded via the Manta Python API. With very big caches this can slow down the viewport playback. Especially smoke simulations, which just load grids and no meshes, can suffer from this. This fix solves this problem by directly loading the cache files from disk (no Python). This fix has been in the works for some time. The developer of this patch is ready to handle any potential fall-out of this patch quickly.
|
|
off into account
This is a small optimization that makes sure the adaptive domain only considers active inflow objects. Ones with disabled fluid flow are skipped and thus the adaptive domain will not try to cover them.
|
|
Added sanity check in the flow / obstacle object loops that check if the modifier data is valid. Ideally this should not be needed. However, in remove_particle_systems_from_object() the fluid modifier can get freed. It is not yet clear whether the modifier free call is really needed or not.
|
|
Reverting some changes that were made in 33317b464777
|
|
Use OpenVDB by default, smaller particle radius to avoid volume increase, and shorter names for combined fluid particle systems.
|
|
This commit cleans up the flow emission code (i.e. the code that determines where flow is generated). It also addresses an issue with initial velocities.
Related issues (that might be fixed through this commit) are: T73422, T72949
|
|
Added an extra check in the flow object loop that compares flow object type and domain type prior to writing to flow maps.
|
|
In addition to 4670c68e3dd9544fe14656dacdff641fcabcd540 which removed the unused high-res emission maps.
|
|
- Initial velocities are no longer influenced by surface distance value.
- Added optimizations for different flow types (e.g. skip part of loop for liquid flow objects).
- Comments style cleanup and removed old todos.
|
|
This code is currently not in use and so removing it based on the YAGNI principle. If there really is need for a high-res emission loop it could be easily added again. However, I believe for the smoke noise it is sufficient to upscale the base emission map. A high-res emission map can easily be achieved by increasing the base resolution. Note also that in the new fluid system base loop and noise loop are decoupled making the need for a high-res emission loop even more unneccessary.
|
|
The initial value for phi was too high.
|
|
Added missing check that prevented bake from being executed correctly.
|
|
The smoke mesh geometry always needs to be updated when using the adaptive domain.
|
|
The combined export was using the old flag format.
|
|
Cache file loading for mesh and particle files now works through the direct update_structures functions. The final cache mode now also only bakes the most essential files and is therefore not resumable anymore.
|
|
|
|
Incorporated suggestions from the task discussion
|
|
into Mantaflow
Having this loop in directly Manta is faster and potentially fixes issues T72783 and T72894.
|
|
Relative paths in the cache are no longer converted into absolute paths automatically.
|
|
|
|
|
|
Expose BKE_fluid_modifier_* functions for readfile versioning.
|
|
Flag reset needs to be placed outside the object loop
|
|
|
|
|
|
The term guide makes sense on it's own in this context.
|
|
Create/Destroy are more commonly paired terms in BLI/BKE API's.
|
|
|
|
Fixed sized strings are always initialized & this is not done
elsewhere before calling BLI_path_join.
Remove since it's not needed and makes it read as if the function
might not initialize the output argument.
|
|
|
|
|
|
|
|
|
|
|
|
Allows enabling debug prints in this file easily,
differentiates it from code which has been disabled for other reasons.
Also remove unused DEBUG_TIME.
|
|
|
|
Probably the most significant changes are in smoke.c.
New functionality includes:
- support for adative time steps (substeps)
- write flow objects to grid structure so that Mantaflow can generate levelsets
- no more distinction between FLUID_3D and WTURBULENCE objects. Everthing that communicates with Mantaflow now lives in a FLUID object.
Reviewed By: sergey
Maniphest Tasks: T59995
Differential Revision: https://developer.blender.org/D3861
|