ПрограммированиеФорумГрафика

2D RayTracing существует в реалтайме в 2019? (6 стр)

Страницы: 1 2 3 4 5 6
#75
9:00, 12 ноя 2019

http://on-demand.gputechconf.com/gtc-kr/2018/pdf/HPC_Minseok_Lee_NVIDIA.pdf

вот тут немного как юзать tensor core, правда, через cuda

#76
9:50, 14 ноя 2019

Prescott
Обходим все пиксели начиная от источника света по спирали, для каждого проверяем видимость трассировкой до источника методом Брезенхэма. НО! Если луч попадает между двумя лучами, ранее пропущенными через некоторый пиксель (рассматриваем пиксель как квадрат с некоторыми размерами, для луча считаем с субпиксельной точностью координаты входа), то если у тех двух одинаковый результат на пути до источника (достиг/не достиг), то и у рассматриваемого луча результат будет тот же. Я думаю, можно сделать освещение сцены за O(число пикселей)

P.S. Есть идеи и для 3D, излагал в теме про Рендеринг в Minecraft, самому пока лень сделать

#77
9:56, 14 ноя 2019

Aslan
> Обходим все пиксели начиная от источника света по спирали, для каждого
> проверяем видимость трассировкой до источника методом Брезенхэма. НО! Если луч
> попадает между двумя лучами, ранее пропущенными через некоторый пиксель
> (рассматриваем пиксель как квадрат с некоторыми размерами, для луча считаем с
> субпиксельной точностью координаты входа), то если у тех двух одинаковый
> результат на пути до источника (достиг/не достиг), то и у рассматриваемого луча
> результат будет тот же
можно то же самое сделать через обычный обход в ширину. вопрос тут не в том, как это сделать, а как это эффективно реализовать на gpu, потому что в твоём случае каждый пиксель оказывается потенциально зависим от всех пикселей, обработанных до него, то есть самый отстойный вариант для gpgpu.

также результатом работы твоего алгоритма будет освещение от одного источника света, а для расчёта GI нужно то же самое, только считая каждый пиксель источником.

#78
15:02, 14 ноя 2019

твит в тему https://twitter.com/viniciuskps/status/1194746016446189568
реалтайм GI на вулкане(с низкой нагрузкой на GPU)
код уже в вулкан-репозитории Godot, но там все течет и падает лишь как демонстрация годиться покачто

#79
16:33, 14 ноя 2019

Suslik
> можно то же самое сделать через обычный обход в ширину
нет, потому что более близкий к источнику света пиксель может оказаться позже достигнутым
> каждый пиксель оказывается потенциально зависим от всех
> пикселей, обработанных до него
И лежащих вблизи того же луча к источнику. Алгоритм возможно распараллелить

#80
20:36, 14 ноя 2019

ещё по теме)
https://twitter.com/TeemuVaisanen/status/1125869673470464001
https://twitter.com/TeemuVaisanen/status/1125484112826044417

#81
20:37, 14 ноя 2019

Mr F

мне тут мысль пришла про ускорение ray-trace - может у nvidia сделано что-то вроде параллельной проверки - типа за один вызов чекаем 1K трианглов ?

#82
20:44, 14 ноя 2019

проверки - типа за один вызов чекаем 1K трианглов

Скорей всего.

#83
20:48, 14 ноя 2019

innuendo
троллируешь?) вроде гпу не славятся однопоточностью)

#84
20:54, 14 ноя 2019

Наверно у Инуендо однопоточный GPU :)

#85
20:55, 14 ноя 2019

Mr F
> троллируешь?) вроде гпу не славятся однопоточностью)

не в многих потоках - типа SIMD

если знаешь как nvidia ускоряет rt - расскажи

#86
21:02, 14 ноя 2019

Mr F
> ещё по теме)
> https://twitter.com/TeemuVaisanen/status/1125869673470464001
> https://twitter.com/TeemuVaisanen/status/1125484112826044417

выглядит как https://www.shadertoy.com/view/ltyyD1
сложение кадров, практически уверен что так

#87
23:22, 14 ноя 2019

innuendo
> не в многих потоках - типа SIMD
а, в этом плане - понял.
ну кто бы знал, может быть, а может и не быть. я не встречал пейперов с такими подробными деталями.

Danilw
ну аккумуляция какая-то явно происходит, но разве ж в этом что-то плохое

#88
23:32, 14 ноя 2019

Mr F
> я не встречал пейперов с такими подробными деталями.

а как ещё можно  радикально ускорить?

#89
22:20, 15 ноя 2019

Mr F

кстати, в dx12 семплах есть raytrace fallback - можно посмотреть как емулируется

Страницы: 1 2 3 4 5 6
ПрограммированиеФорумГрафика

Тема в архиве.