anonymous@RULINUX.NET~# | Last login: 2024-08-22 04:05:50 |
Регистрация Вход | Новости | Разметка | Пользователи | Галерея | Форум | Статьи | Неподтвержденное | Трекер | Правила форума | F.A.Q. | Ссылки | Поиск |
Форум - Talks | [RSS] |
Я тут давно пишу воксельный рендерер. Ссылка на github. Продвинулся не то чтобы очень далеко, результаты на картинках. Скорость рендеринга зависит от формы объекта -- чем меньше в нём дырок и чем он выпуклее, тем быстрее. Чайник рендерится примерно 30 кадров в секунду, череп -- 25. Ещё можно удалять и добавлять воксели в объект прямо на лету. Ещё я намеренно не использую возможности видеокарты, рендеринг целиком на CPU. Если интересно, инструкции по сборке по ссылке. Увы, требуется уникальная для FreeBSD и MacOS библиотека -- Grand Central Dispatch, позволяющая распараллелить работу по нескольким ядрам. Под linux тоже работает, но соответственно, медленнее. Можно ускорить, создав файл с содержимым
Vasily(*) (2016-06-14 09:38:44)
Отредактировано Vasily по причине "не указана"
Mozilla/5.0 (X11; FreeBSD amd64; rv:40.0) Gecko/20100101 Firefox/40.0
|
|
|
![]() |
![]() |
![]() |
Скрыть
Re:Воксельный рендерерЭто запросто. Называется октодеревья. Берем все воксели и считаем для них bounding box, а также точку (x0,y0,z0), такую, что при разбиении пространства на 8 частей плоскосями x=x0, y=y0, z=z0, в полученных подмножествах будет примерно равное количество вокселей. Я предположил, что распределение вокселей примерно равномерно и считаю просто среднее из координат вокселей. Далее для каждого из подмножеств повторяем процедуру, пока количество вокселей в каждом отдельном подмножестве не будет меньше некоего числа. Строим из этих разбиений дерево |
![]() |
Скрыть
Re:Воксельный рендерерАга, рейтрейсинг. А почему тогда у черепа куча побочных пикселей, висящих в воздухе? Это раз. Второе - почему всё такое корявое? |
![]() |
Скрыть
Re:Воксельный рендерер"Побочные пиксели" находятся в самом датасете. Просто в датасете хранится трехмерный массив с плотностью в каждой точке, а в дереве хранятся полностью непрозрачные воксели. Вот у побочных просто была высокая плотность. |
![]() |
anonymous(*)(2016-06-14 16:53:45)
Mozilla/5.0 (X11; Linux x86_64; rv:43.0) Gecko/20100101 Firefox/43.0 SeaMonkey/2.40 |
![]() |
Скрыть
Re:Воксельный рендерерА МПХ сможешь отрендерить? Алсо, вроде кто-то пилил вагнеров под линукс. Там тоже воксели были. И даже вроде что-то у них там работало. Ну увы, быдло с фулЭЙЧДИ уже не оценит. |
![]() |
Скрыть
Re:Воксельный рендерерВыточи себе МПХ из черенка от лопаты, тебе походу там все равно нечем занять))) Или механизаторов попроси, пусть тебе из города привезут из секшопа))) anonymous(*)(2016-06-15 02:32:47)
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36 |
![]() |
Скрыть
Re:Воксельный рендерерШли нам свой мпх в цифровом виде, сходи кт сделай. А мы потом поставим тебе диагноз |
![]() |
anonymous(*)(2016-06-16 00:15:29)
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36 |
![]() |
vilfred(*)(2016-06-17 15:05:34)
Mozilla/5.0 (Windows NT 6.3; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0 |
![]() |
Скрыть
Re:Воксельный рендерерТы ведь сам, без посторонней помощи догадался что там череп изображен, да? |
![]() |
![]() |
|
|
|
Этот тред читают 1 пользователь: |
Анонимных: 1 Зарегистрированных: 0 |
Re:Воксельный рендерер
> я намеренно не использую возможности видеокарты, рендеринг целиком на CPU.
Необычный способ уничтожить всё человечество посредством нагревания атмосферы.
Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:46.0) Gecko/20100101 Firefox/46.0