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

Воксельные миры (5 стр)

Страницы: 1 2 3 4 5 6 Следующая »
#60
10:33, 13 июня 2020

Вий
>У тебя есть идеи, как можно ускорить raytrace?
Как минимум можно попытаться пойти по пути voxlap и делать куб из 6 камер, но рендерить не лучами а столбиками лучей и хранить мир тоже столбиками.


#61
10:54, 13 июня 2020

samrrr
Есть исходники voxlap, можно просто взять и запустить.

#62
13:26, 13 июня 2020

Вот такой вопрос - а можно ли иметь в одной сцене несколько независимых воксельных секций, где каждая расположена по произвольной 3*4 матрице? Типа, чтобы в лесу одно и тоже воксельное дерево повторялось с разными поворотами и масштабами.

Вот Суслик предлагает бить сцену на блоки. А расположение блоков в октри - это обязательное условие? Или можно всё-таки, без значительных проблем в алгоритмах, располагать блоки произвольным образом в произвольной структуре - типа bsp или visleaf; а уже внутри блока хранить геометрию в виде 3д-текстуры.

#63
17:16, 13 июня 2020

Вий
Зазубрины на кубиках вблизи намекают на то, что там использован другой способ трейса лучей.

#64
17:27, 13 июня 2020

samrrr
На каких кубиках? Там где 1000 кубов вообще нет ни лучей ни трассировки, обычная растеризация

#65
18:07, 13 июня 2020

Вий
>На каких кубиках?
https://youtu.be/NgpahxDYms0?t=759
На обычнейших кубиках.

#66
18:11, 13 июня 2020

samrrr
Я написал выше как работает voxlap. Какой другой способ?

#67
21:55, 13 июня 2020

короче я пока в сомнениях. на самом деле видюха просто вытягивает 60 миллионов точек, если их в device local память затолкать, поэтому вся вот эта сцена нормально рендерится, даже если вообще никаких телодвижений по оптимизации не совершать:

Изображение
#68
14:16, 14 июня 2020

Voxlap (и Unlimited Detail) уже прошлый век.

Вы видели Mutate (https://mutate.se/)?

https://www.reddit.com/r/VoxelGameDev/comments/groib0/modifying_b… ns_of_voxels/
https://www.reddit.com/r/VoxelGameDev/comments/gqk2id/voxel_engine/

https://imgur.com/eAVkXwC
https://imgur.com/xI2h0Rb
https://imgur.com/ywOqpNT
https://imgur.com/YBk9ljM

#69
14:48, 14 июня 2020

Не невидал, но выглядит эпично, а что там по пределам размера мира?

#70
15:55, 14 июня 2020

вот куда sony ssd нужен, а не для всякой фигни

#71
18:59, 14 июня 2020

PVSector
Интересно. Надо тоже попробовать вот по этой статье сделать
https://newq.net/dl/pub/ModifyingCompressedVoxels-main.pdf

#72
23:10, 16 июня 2020

Вий
https://gamedev.ru/code/forum/?id=252811&page=2&m=5199564#m23
> Для каждого рассматриваемого узла octree определяется его
> bounding box. Проверяется, попадают ли незакрашенные точки
> экрана в этот bounding box
И как это быстро проверить?

> можно взять SVO и отрисовать его при помощи 6 камер
> смотрящих вдоль осей, идя от камеры вдаль, а
> потом натянуть это на кубик как текстуру и вращать его
Можно так крутить твой "Ужас 3D", только для верхней и нижней граней другой рендер (идти от центра квадрата по диагоналям до границы, сдвигать по XY пропорционально текущей глубине)

#73
11:05, 8 июля 2020

Aslan
> И как это быстро проверить?
Экран делим на линии высотой 1 шириной 64 пиксела. Для такой линии используем 64 битное число как маску. 0 - не обработанный пиксель, 1 - закрашенный ранее. 64 таких линии соединяем в квадратик с аналогичной маской для линий. 0 - есть хоть один недокрашеный пиксель в линии, 0 - вся линия готова. И ещё раз 64 квадратика в линии, и в итоге получаем весь экран. Невидимую часть сразу помечаем как готовую.

Для bounding box строим маску на первом уровне, 0 если внутри бокса, 1 если снаружи. Делаем OR. Если остались 0 то для соответствующего элемента углубляемсся на 1 уровень. Так очень быстро проверяем.

#74
19:48, 8 июля 2020

Вий
HiZ или HiMask
можно брать 8х8

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