Warning: unfinished & not verified!
By far the simplest of Voronoi algorithms is to paint pixels according to the color of their closest site. Such a shader will work with any definition of distance, weighted or not. Speed is awfully slow, in
O(n*x*y). The results are pixels (canvas), not an abstract layout.
See also Painting Euclidian Voronoi.