I am always confused about when we have a ray in the example, where does this ray come from? Do we pick up it randomly?
How 'many' ray-scene intersection tests would it take to justify the amortized cost? Or would running this more than once already be more efficient?
How does the preprocessing work here?