Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Спасибо за лонгрид, очень интересная тема

Мы генерируем точки в полусфере с z > 0. Но наш луч отражается по полусфере относительно положение поверхности, то есть её нормали. Поэтому мы переводим сгенерированные точки так, чтобы "вверх" полусферы был направлен в сторону нормали. Это хорошо иллюстрирует этот рисунок. Если интересно прочитать подробно, можете посмотреть сайт, откуда картинка и взята: https://www.scratchapixel.com/lessons/3d-basic-rendering/global-illumination-path-tracing/global-illumination-path-tracing-practical-implementation
Пишем простой Path Tracer на старом добром GLSL