Hi, may I ask if there's any reason that SphereTracer performs checks, that the input camera's size is divisible by the ray subsampling factor? This doesn't seem to cause any issues in practice, since from what I can tell, if the image size is not divisible by the subsampling factor, a couple pixels just get ignored, which shouldn't be a problem.
Let me know if I'm missing something, otherwise, I think the checks can be removed.
// sphere_tracer.cu
CHECK_EQ(camera.width() % ray_subsampling_factor, 0);
CHECK_EQ(camera.height() % ray_subsampling_factor, 0);