Мощности GPU вплотную подошли к тому что это возможно. Но есть ли уже такой движок, который мы бы могли использовать для создания игры?
Поискав я нашел следующие интересные вещи:
http://www.luxrender.net & https://code.google.com/p/sfera/
http://embree.github.io/
Arauna & Brigade от Jacco Bikker
Самое близкое для нашей цели оказался - это http://www.luxrender.net потому что:
-использует OpenCL и работает на всех видеокартах
-имеет облегченную версию smalluxgpu, которая обладает хорошей производительностью
Первые тесты smalluxgpu4 неочень были похожи на real-time, однако игра Sfera сделана на облегченном smalluxgpu одним из разработчиков luxrender, что показывало что это возможно.
Я сделал несколько патчей, часть из которых даже были приняты (однако даже что не стоит пересоздавать тред на кадый кадр пришлось доказывать, у игродела даже мысли не возникнет что можно создать по треду на кадр), теперь стало можно "летать" по сцене вполне себе в real-time:
C luxrender для использовании в играх остается только 2 проблемы, это:
1. Шум. Характерная черта Path Trace на маленьком числе проходов.
2. Динамические сцены. Код построения BVH всюду использует контейнеры типа std::vector<> и не сильно оптимизирован.
В целом его еще нужно довольно сильно изменить, чтобы приспособить к играм, не знаю пойдут ли на это разработчики luxrender.
Brigade же изначально делался с прицелом на игры, тут с динамическими сценами все впорядке. Подробнее можно прочитать тут http://icelaglace.wordpress.com/2012/09/22/what-is-brigade-engine/ и посмотреть тут http://raytracey.blogspot.ru/2013/10/brigade-3.html
Однако теперь это часть OctaneRender и сам движок выше первой версии недоступен. К тому же он поддерживает только cuda, что для игры неприемлимо. Так же проблема с шумом все еще остается.
Неочень понятно почему никто не подумал про denoise, только сейчас Dade (разработчик luxrender) делает новый "A new (optionally Biased) Path Tracing render engine" http://www.luxrender.net/forum/viewtopic.php?f=34&t=10529 , пока только CPU, но результаты подавления шума впечатляют.
Я тоже некоторе время назад решил, что разрозненное доказетельство (POC) возможности есть (если бы совместить luxrender+brigade), добавить только подавление шума и можно использовать для игр.
Вот что в итоге пока получается:
Некоторые детали моего ламерского denoise тут http://ompf2.com/viewtopic.php?p=4362#p4362
В общем, тема очень интересная для меня, возможно кому-то тоже =)
Поискав я нашел следующие интересные вещи:
http://www.luxrender.net & https://code.google.com/p/sfera/
http://embree.github.io/
Arauna & Brigade от Jacco Bikker
Самое близкое для нашей цели оказался - это http://www.luxrender.net потому что:
-использует OpenCL и работает на всех видеокартах
-имеет облегченную версию smalluxgpu, которая обладает хорошей производительностью
Первые тесты smalluxgpu4 неочень были похожи на real-time, однако игра Sfera сделана на облегченном smalluxgpu одним из разработчиков luxrender, что показывало что это возможно.
Я сделал несколько патчей, часть из которых даже были приняты (однако даже что не стоит пересоздавать тред на кадый кадр пришлось доказывать, у игродела даже мысли не возникнет что можно создать по треду на кадр), теперь стало можно "летать" по сцене вполне себе в real-time:
C luxrender для использовании в играх остается только 2 проблемы, это:
1. Шум. Характерная черта Path Trace на маленьком числе проходов.
2. Динамические сцены. Код построения BVH всюду использует контейнеры типа std::vector<> и не сильно оптимизирован.
В целом его еще нужно довольно сильно изменить, чтобы приспособить к играм, не знаю пойдут ли на это разработчики luxrender.
Brigade же изначально делался с прицелом на игры, тут с динамическими сценами все впорядке. Подробнее можно прочитать тут http://icelaglace.wordpress.com/2012/09/22/what-is-brigade-engine/ и посмотреть тут http://raytracey.blogspot.ru/2013/10/brigade-3.html
Однако теперь это часть OctaneRender и сам движок выше первой версии недоступен. К тому же он поддерживает только cuda, что для игры неприемлимо. Так же проблема с шумом все еще остается.
Неочень понятно почему никто не подумал про denoise, только сейчас Dade (разработчик luxrender) делает новый "A new (optionally Biased) Path Tracing render engine" http://www.luxrender.net/forum/viewtopic.php?f=34&t=10529 , пока только CPU, но результаты подавления шума впечатляют.
Я тоже некоторе время назад решил, что разрозненное доказетельство (POC) возможности есть (если бы совместить luxrender+brigade), добавить только подавление шума и можно использовать для игр.
Вот что в итоге пока получается:
Некоторые детали моего ламерского denoise тут http://ompf2.com/viewtopic.php?p=4362#p4362
В общем, тема очень интересная для меня, возможно кому-то тоже =)