“Spatially Adaptive FLIP Fluid Simulations in Bifrost”

  • ©Michael B. Nielsen and Robert Bridson

  • ©Michael B. Nielsen and Robert Bridson

  • ©Michael B. Nielsen and Robert Bridson



Entry Number: 41


    Spatially Adaptive FLIP Fluid Simulations in Bifrost



    Spatial adaptivity has great promise for fluid simulation in visual effects. Given that a 2× increase in spatial resolution incurs an 8× increase in memory for 3D, using high resolution only where needed can offer a huge savings for many interesting scenarios. For example, figure 1 shows a large-scale simulation of a creature emerging from deep water: the depth is critical for the bulk motion, but the velocity field away from the creature and surface is relatively smooth and does not require as high resolution. Adaptive fluid simulation was proposed for graphics over a decade ago [Losasso et al. 2004], and the combination of FLIP and octrees seven years ago [Hong et al. 2009], yet it has been slow to catch on in the industry. Instead, FLIP with uniform resolution sparse voxel tiles has emerged as the standard approach. Sparse voxel tiles efficiently cover arbitrary domains, give excellent cache usage and low data structure overhead, and allow the use of popular voxel algorithms for level set computations etc. with barely any changes. By comparison, typical adaptive octree and/or tetrahedral mesh approaches incur sizeable overheads and may rule out many standard voxel algorithms. SPGrid [Setaluri et al. 2014] is one recent option for efficiently achieving octree-like adaptivity via multiple levels of sparse voxel tiles; in this talk we discuss a more aggressive approach using a wide-branching tile tree of voxels. We have fully implemented this in Bifrost in Autodesk Maya, demonstrating that even in uniform resolution we achieve the performance of optimized sparse voxel tile code, and that spatial adaptivity gives significant further improvements in both memory and runtime.


    Ando, R., Thürey, N., and Wojtan, C. 2013. Highly adaptive liquid simulations on tetrahedral meshes. ACM Trans. Graph. 32, 4 (July), 103:1–103:10. Google ScholarDigital Library
    Hong, W., House, D. H., and Keyser, J. 2009. An Adaptive Sampling Approach to Incompressible Particle-Based Fluid. In Theory and Practice of Computer Graphics, The Eurographics Association UK, W. Tang and J. Collomosse, Eds.Google Scholar
    Losasso, F., Gibou, F., and Fedkiw, R. 2004. Simulating water and smoke with an octree data structure. ACM Trans. Graph. (Proc. SIGGRAPH) 23, 457–462. Google ScholarDigital Library
    Museth, K. 2013. VDB: High-resolution sparse volumes with dynamic topology. ACM Trans. Graph. 32, 3 (July), 27:1–27:22. Google ScholarDigital Library
    Setaluri, R., Aanjaneya, M., Bauer, S., and Sifakis, E. 2014. SPGrid: A sparse paged grid structure applied to adaptive smoke simulation. ACM Trans. Graph. 33, 6 (Nov.), 205:1–205:12



ACM Digital Library Publication:

Overview Page: