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).


 

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

58951. Урок української літератури. 6 клас. «А ми співаємо, весну зустрічаємо!» 941.5 KB
  Мета: продовжити знайомити учнів з українськими народними піснями весняного календарного циклу; розвивати творчі здібності дітей, залучати до успадкування українського фольклору; виховувати любов до національних традицій і бажання відроджувати, оберігати їх.
58952. Вечір-реквієм до Дня Перемоги 40.5 KB
  Жива людська пам’ять, не старіє вона з роками. Вона стукає в наші серця дзвоном Хатині, попелом Лідіце, обелісками в полі. І поки існуватиме наш рід, існуватиме і пам’ять, бо без неї немає в нас майбутнього. А майбутнє в наше в наших дітях.
58953. Стежинами рідного міста 153 KB
  Сьогодні ми з вами поговоримо про місто Донецьк. І тому я пропоную сьогодні здійснити подорож до краєзнавчого музею і якомога більше дізнатися про наше чудове місто.
58954. Володимир Винниченко. «Федько - халамидник». Щедрий на добро внутрішній світ героя. Федько як особистість. Образи Федька і Толі 57 KB
  Мета: допомогти учням розібратися в складнощах характерів та вчинків героїв оповідання; розвивати навички виразного читання, переказу, виділення головних епізодів та деталей, висловлення власного ставлення до прочитаного, обґрунтування своєї думки...
58955. Микола Вороний. «Євшан – зілля». Поема про необхідність повернення людині історичної пам’яті, усвідомлення своєї національної приналежності 51 KB
  Мета: створити умови для ознайомлення учнів із життям і творчістю Миколи Вороного з історичною основою та змістом поеми Євшан-зілля; сприяти розвитку навичок вдумливого виразного читання; коментування прочитаного визначення особливостей літературного твору...
58956. Пристрої введення та виведення інформації 178.71 KB
  Що таке інформація За допомогою чого передають інформацію Види інформації Як називають повідомлення яке не несе корисної інформації Що називають елементною базою компютера Що таке швидкодія Що розуміють під терміном апаратне забезпечення...
58957. Виховний захід: «Прощавай, початкова школо!» 87.5 KB
  Всі вони народилися в одному селі ходили до однієї незвичайної школи і навіть вчилися в одному класі. Вперше чую Важко уявити Це мабуть був клас одних вундеркіндів Їх що збирали в клас з усього селища Ведуча. Починаємо пряму трансляцію із загальноосвітньої школи...
58958. Вплив антропогенних факторів на репродуктивну функцію людини 162 KB
  І кожен з вас мріятиме щоб його дитина була гарною розумною а головне здоровою. Коли маля росте здоровим розвивається фізично і розумово то батьки безмежно щасливі. Щоб вона стала здоровою батьки йдуть на все.
58959. Урок. Пори року 348 KB
  Мета: розвивати початкові навички використання елементів взаємодії з комп’ютером – списків та закладок у діалогових вікнах; ознайомити учнів з особливостями погоди в різні пори року; розвивати елементи логічного мислення, пам’ять, увагу, кмітливість...