Great idea! The mesh it iterates over is inherently 2D (the surface intersection test just performs a bilinear interpolation between the grid points to compare to the ray height) so Bresenham's algorithm would work here. I'll implement it and see if it offers any significant speed improvements.