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

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

Страницы: 15 6 7 820 Следующая »
#75
20:58, 8 июля 2020

Сложнее заполнять последний уровень

Прошло более 7 месяцев
#76
0:34, 25 фев 2021

Запустить видео по клику - Как делать игрыЗапустить видео по клику - Как делать игры

#77
2:30, 25 фев 2021

damik
на Intel HD 3000 пойдет?

#78
17:49, 25 фев 2021

Misanthrope
Вряд ли. У автора какая-то из старших нвидий судя по твиттеру. https://twitter.com/ProgrammerLin

#79
19:01, 25 фев 2021

абсолютно ничего нового, что уже не применялось в играх
в целом как мегатекстуры, направленно скорее на артовиков

Прошло более 1 года
#80
14:04, 27 мая 2022

Продублирую свои тезисы из лички:

Если K число нелистовых узлов октодерева, а N число листовых, то
8×K=K+N-1
N=7×K+1

Логически есть листы - полные или пустые воксели
Но хранить их проще в виде 8 бит в родителе
Пока такое придумал:
4 вида узла: solid voxel, empty voxel, Subtree, Patch (8 детей voxel)
Для Subtree храним маску 16 бит (тип 2 бит для 8 детей) и указатель 32 бит = 48 бит
Для Patch храним маску 8 бит (solid/empty) и все
Узлов, которые имеют среди детей Subtree - их меньше, чем самих Subtree, 1/8 от общего числа узлов
Остальные 7/8 - Patch по 8 бит
В среднем получаем 48/8+7/8*8=13
А общее число узлов, как помним, 1/7 от числа листьев
13/7<2 бит/воксел
Дети (8 штук) выделяются единным куском размером от 8 до 48 байт

При рейкасте надо переходить к соседнему по коорд оси voxel
В среднем намного короче идти не от корня дерева, а снизу вверх до общего родителя, а потом вниз
X координата корня 0 -
X координаты узлов 1го уровня: 0, 1
X координаты узлов 2го уровня: 00, 01, 10, 11 итд
столько бит, каков уровень
узел I и сосед J, пропускаем сверху столько уровней дерева, сколько лидирующих 0 в I xor J
индекс voxel можно уместить в int64 - по 20 бит на xyz и 4 - уровень

#81
14:17, 27 мая 2022

Aslan
всё это уже придумали, и это реализуется умнее и быстрее, чем ты описал: https://jankautz.com/publications/AcceleratedSSRT_HPG15.pdf

например, там не совсем xor для определения общего родителя, всё расписано предельно подробно. нет смысла изобретать велосипед для того, что уже придумано и работает хорошо, там хватает ещё что можно велосипедить, используя это. например, в листьях гораздо круче хранить не просто воксели и не плоскости (как они делают), а разного рода плотные структуры данных: 8x8x8 brick map'ы, sdf, мешлеты и тому подобное.

#82
14:22, 27 мая 2022

Suslik
Screen space это то вообще?

#83
15:53, 27 мая 2022

Aslan
какая разница, маршировка октри везде одинаковая

#84
17:30, 27 мая 2022

invis
> Сейчас заметил что в Команче

помню Команч в 98 на P133 - опупеть :)

#85
18:15, 27 мая 2022

innuendo
В DeltaForce еще был воксельный ландшафт
И в F22 незнаю какой, но бескрайний

#86
18:36, 27 мая 2022

damik
Фига себе, убийца Майнкрафта!

#87
18:55, 27 мая 2022

Suslik
Уже из анотации видно, что твоя статья не по теме
> всё это уже придумали, и это реализуется умнее и быстрее, чем ты описал
Лишь бы ляпнуть

#88
20:59, 27 мая 2022

innuendo
> помню Команч в 98 на P133 - опупеть :)
Я про Команч 92-го года, он делался под 386-486, наверное.
https://github.com/s-macke/VoxelSpace

#89
6:13, 28 мая 2022

invis

Запустить видео по клику - Как делать игрыЗапустить видео по клику - Как делать игры

Страницы: 15 6 7 820 Следующая »
ПрограммированиеФорумГрафика