Now we have the same functionality as before, with REALLY STUPID parallelization by ray!