A semi-Lagrangian contouring method for fluid simulation