Closest Point Turbulence for Liquid Surfaces
ACM Transactions on Graphics (to be presented at SIGGRAPH 2013)


Theodore Kim University of California, Santa Barbara
Jerry Tessendorf Clemson University
Nils Thürey Scanline VFX
 


Above: A 1003 Houdini simulation up-resed to 8003 using our method. Mouse-over to see the original Houdini simulation.


   
Abstract

We propose a method of increasing the apparent spatial resolution of an existing liquid simulation. Previous approaches to this "up-resing" problem have focused on increasing the turbulence of the underlying velocity field. Motivated by measurements in the free surface turbulence literature, we observe that past certain frequencies, it is sufficient to perform a wave simulation directly on the liquid surface, and construct a reduced-dimensional surface-only simulation. We sidestep the considerable problem of generating a surface parameterization by employing an embedding technique known as the Closest Point Method (CPM) that operates directly on a 3D extension field. The CPM requires 3D operators, and we show that for surface operators with no natural 3D generalization, it is possible to construct a viable operator using the inverse Abel transform. We additionally propose a fast, frozen core closest point transform, and an advection method for the extension field that reduces smearing considerably. Finally, we propose two turbulence coupling methods that seed the high resolution wave simulation in visually expected regions.

   
    Paper [PDF, 16 MB]           Full Video (scroll down for YouTube):
    Large [MOV, 341.9 MB]
Medium [MOV, 79.2 MB]
Small [MOV, 41.1 MB]
    Source Code           Slides:
    PowerPoint [PPTX, 22.4 MB]
PDF of PowerPoint [PDF, 30.7 MB]
   

   
Supplemental Videos:
   
  Paddle Sequence:
    Original 1003 Houdini simulation [MOV, 12.3 MB]
Direct 2003 Houdini simulation [MOV, 15.5 MB]
Our 2003 simulation [MOV, 16.6 MB]
        Our 4003 simulation [MOV, 18.9 MB]
Our 8003 simulation [MOV, 21.5 MB]
Our 10003 simulation [MOV, 21.6 MB]
  Dam Break Sequence:
    Original 1002 x 50 PhysBAM simulation [MOV, 1.9 MB]
Our 8x iWave, damping = 0.1 [MOV, 18.4 MB]
Our 8x iWave, damping = 0.2 [MOV, 14.1 MB]
Our 8x iWave, damping = 0.3 [MOV, 12.1 MB]
        Our 8x iWave, damping = 0.4 [MOV, 10.8 MB]
Our 8x Wave Eqn., damping = 0.2 [MOV, 14.7 MB]
Our 8x Wave Eqn., damping = 0.3 [MOV, 12.3 MB]
Our 8x Wave Eqn., damping = 0.4 [MOV, 11.0 MB]
  Pouring Sequence:
    Original 1003 PhysBAM simulation [MOV, 8.2 MB]
Our 8x iWave, damping = 0.1 [MOV, 22.1 MB]
Our 8x iWave, damping = 0.2 [MOV, 19.2 MB]
        Our 8x iWave, damping = 0.3 [MOV, 17.1 MB]
Our 8x iWave, damping = 0.4 [MOV, 15.6 MB]
  Extension Strategies:
    Always extend [MOV, 17.7 MB]
Never extend [MOV, 21.9 MB]
Our "frozen core" extension method [MOV, 20.8 MB]
   


This work was supported in part by a NSERC Discovery Grant (Many-Core Physically-Based Simulation) and a donation from Side Effects Software.