Сыпешь много лучей в каждый пиксель, считаешь как именно эти лучи попали в этот пиксель, трейсишь лучи дальше, повторяешь пока луч не попадёт на источник света. Если упал, то все предыдущие точки пути обновляют значение света/цвета.

2023-04-14 12:33:27


сообщение удалено

2023-04-14 12:34:45


Это про кэширование предыдущих рассчетов для того, чтобы меньшим количеством лучей освещать сцену. И оно всё ещё есть на любых картах

2023-04-14 12:37:20


Если я правильно понял о чём речь в вопросе

2023-04-14 12:37:36


То есть, в отражении свет от выстрела будет угасать дольше, чем угасает сам источник света

2023-04-14 12:39:53


сообщение удалено

2023-04-14 12:44:30


Конвертят только старые игры из-за того, что раньше расчёт освещения был более простым, так называемый "форвард рендеринг", который позже вытеснился "дефёрред рендерингом" который позволяет использовать промежуточные состояние пайплайна для начала накладывания отдельных эффектов. Сам процесс конверсии довольно примитивный:

2023-04-14 12:47:27


1. Старый движок полностью рендерит всю геометрию сцены 2. Геометрия переносится в рей трейсинг френдли представление. Как я понимаю - BVH 3. Сверху сыпятся лучи, дальше по описанию алгоритма пас трейсинга выше

2023-04-14 12:49:25


Исходя из этого подхода может показаться, что тогда чем больше источников света, тем быстрее считается освещение, из-за того, что нужно меньше баунсов до попадания на источник света, но это не совсем так. На деле количество баунсов ограничено константой, поэтому лучи не нашедшие источник света просто отказывают меньшее влияние

2023-04-14 12:38:52