Blender Git Loki
Git Commits -> Revision f593333
Revision f593333 by Alexander Gavrilov (master) August 2, 2016, 16:47 (GMT) |
Fix T43220, T47551: collider scaling or rotation causes smoke to explode. The problem happens because smoke collides only with the surface of the collider and uses incompressible fluid solver. This means that scaling the collider tries to compress or decompress fluid within the volume of the collider, which can't be handled by the simulation. Fast rotation likely also causes transient scaling due to emulation of arcs by chords. This can be fixed by finding compartments completely isolated by obstacles from the rest of the domain, and forcing total divergence within each one to be zero so that equations are solvable. Physical validity is somewhat dubious, but without this the solver simply breaks down. From the physics point of view, the effect of the correction should be similar to opening a hole from every cell to another dimension that lets an equal amount of air to pass through to balance the change in volume. Reviewers: miikah, lukastoenne Reviewed By: lukastoenne Subscribers: dafassi, scorpion81, #physics Maniphest Tasks: T43220, T47551 Differential Revision: https://developer.blender.org/D2112 |
Commit Details:
Full Hash: f5933330998dc6c1aff9dc9fca32469717bf4dc3
Parent Commit: ae9e970
Lines Changed: +145, -1