77360

Параллельный рендеринг воксельной графики

Научная статья

Информатика, кибернетика и программирование

В данной статье описывается разработка средств распараллеливание воксельной графики используемой для представления больших объемов данных получаемых в результате компьютерного моделирования сложных процессов. Обычно данных представляются в виде 3х мерного массива. Затем вычисляется ближайшая точка пересечения этого луча с областью данных параллелограммом. После этого алгоритм движется по трёхмерному массиву данных с шагом в одну ячейку до попадания в не пустую точку.

Русский

2015-02-02

27.5 KB

2 чел.

Параллельный рендеринг
воксельной графики

И.О. Михайлов

Институт математики и механики УрО РАН, УрФУ

В данной статье описывается разработка средств распараллеливание воксельной графики, используемой для представления больших объемов данных, получаемых в результате компьютерного моделирования сложных процессов.

В самом общем случае воксельная графика предусматривает хранение объекта в виде набора(облака) точек. Обычно данных представляются в виде 3-х мерного массива. Одним из основных преимуществом воксельной графики по сравнению с полигональной является возможность продемонстрировать внутреннюю структуру объекта. А основным недостатком высокие требования по памяти и малое распространение специализированных аппаратных средств для расчёта графики.

Базовым алгоритмом рендеринга использованным в работе является трассировка лучей (точнее Ray casting). Этот алгоритм заключается в следующем из каждой точке изображения строится луч. Затем вычисляется ближайшая точка пересечения этого луча с областью данных(параллелограммом). После этого алгоритм движется по трёхмерному массиву данных с шагом в одну ячейку, до попадания в не пустую точку. Основным преимуществом данного метода является большие возможности распараллеливания (вплоть до каждой точки изображения), а основным недостатком большая вычислительная сложность.

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

В данной работе используются плотные октодеревевьев в виде набора 3х-мерных массивов. Первый из них в 8 раз меньше массив исходных данных, каждый последующий в 8 раз меньше предыдущего. В каждом элементе массива хранится количество не пустых ячеек в соответствующей области основного массива (с данными). Это даёт возможность быстро пропускать пустые участки при трассировке лучей. Этот подход даёт те же преимущества что и разряженные октодеревья, кроме экономии памяти, однако значительно упрощает доступ к отдельным вокселям и их модификацию. Алгоритм прямого хода эффективен за счёт пропуска уже заполненных точек, но не поддерживает прозрачность. Для корректного отображения полупрозрачных данных необходимо использовать алгоритм обратного хода.

Первые результаты были получены на многоядерном персональном компьютере. При этом использовалась технология OpenMP, для параллельного рендеринга точек изображения. Область данных была общая для всех потоков.

Область данных представляет собой 3-х мерный массив из 4-байтовых целых чисел, в котором ненулевые ячейки задают объект, а нулевые считаются пустыми. Не нулевые ячейки содержат информацию о цвете и прозрачности точек объекта. Возможно расширения до 8-байтовых целых чисел, для хранения вспомогательной информации. В текущей реализации используются кубические массивы со стороной равной степени двойки (от 128 до 512). Для ускорения работы строится набор вспомогательных массивов, хранящих информацию о группах пустых ячеек для быстрого их пропуска. Затем эксперименты были перенесены на суперкомпьютер Уран ИММ УрО РАН, где для реализации использовалась библиотека MPI. При этом узлы были разделены на несколько групп. Области данных внутри одной группы дублировались. Сперва производился независимый рендеринг изображений в каждой группе, а затем полученные изображения совмещались в одно с учётом буфера глубины.

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

Работа выполнена в рамках программы Президиума РАН № 18 "Алгоритмы и математическое обеспечение для вычислительных систем сверхвысокой производительности" при поддержке УрО РАН (проект 12-П-1-1034).


 

А также другие работы, которые могут Вас заинтересовать

19867. Предмет біржового права 63.5 KB
  Тема 1. Предмет біржового права. Мета: Освітня: Ознайомити студентів з виникненням і розвитком бірж в Україні і світі. Вивчення правового статусу світових бірж гарантій майнових прав бірж. Виховна: моделювання поведінки студента як майбутнього спеціаліста на основі
19868. Правове положення товарної біржі 64 KB
  Тема 2. Правове положення товарної біржі . Мета: Освітня: Ознайомити студентів з установчими документами для реєстрації біржі. Вивчення правового статусу біржі гарантій майнових прав біржі. Виховна: моделювання поведінки студента як майбутнього спеціаліста на основ
19869. Угоди на товарній біржі 69.5 KB
  Тема 3. Угоди на товарній біржі. Мета: Освітня: Ознайомлення та складання угод. Ознайомлення з правилами біржових торгів порядком реєстрації біржових угод. Виховна: моделювання поведінки студента як майбутнього спеціаліста на основі отриманих знань та навичок. Розв...
19870. Правове положення фондової біржі 64.5 KB
  Тема 4. Правове положення фондової біржі. Мета: Освітня: Ознайомлення з установчими документами фондової біржі та її функціонуванням. Навчитися складати статут фондової біржі та визначити порядок реєстрації фондових бірж. Виховна: моделювання поведінки студента як...
19871. Цінні папери, порядок їх випуску та обігу 76 KB
  Тема 5. Цінні папери порядок їх випуску та обігу. Мета: Освітня: визначення порядку заповнення цінних паперів. Вивчення реквізитів. Виховна: моделювання поведінки студента як майбутнього спеціаліста на основі отриманих знань та навичок. Розвиваюча: Оволодіння навич...
19872. Угоди з цінними паперами на фондовій біржі 72.5 KB
  Тема 6. Угоди з цінними паперами на фондовій біржі. Мета: Освітня: Ознайомити студентів видами і формами угод з цінними паперами на фондовій біржі навчитися визначати їх істотні умови та особливості укладання. Виховна: моделювання поведінки студента як майбутнього сп...
19873. Валютна біржа 88 KB
  Тема 7. Валютна біржа. Мета: Освітня: Ознайомити студентів з діяльністю валютної біржі. Вивчення правового статусу біржі гарантій майнових прав біржі. Складання угод та договорів на валютній біржі Виховна: моделювання поведінки студента як майбутнього спеціаліста на...
19874. Поняття, суть і завдання кримінального процесу. Поняття стадій кримінального процесу та їх система 91 KB
  Поняття суть і завдання кримінального процесу. Поняття завдання та зміст кримінального процесу. Поняття стадій кримінального процесу та їх система. Поняття завдання та зміст кримінального процесу Конституція України є Основним Законом нашої д
19875. Кримінально-процесуальний закон 45 KB
  ТЕМА 2: Кримінальнопроцесуальний закон План 1. Поняття суть і завдання кримінальнопроцесуального закону. 2. Дія кримінальнопроцесуального закону в просторі часі та щодо осіб. 1. Поняття суть і завдання кримінальнопроцесуального закону Під поняттям кримінал