|
ФИЗИКО-МАТЕМАТИЧЕСКОГО ЛИЦЕЯ № 30 of 30 Phys-Math Lyceum Tough Environment SystemАвторы:
Научный руководитель проекта: Галинский Виталий Александрович AbstractThe project is devoted to realistic 3D landscape modeling and visualization system implementation. Two approaches were employed to generate landscape, uniform grid based on height field and arbitrary point set with subsequential triangulation. Spatial data rendered with several issues, noise applying, illumination with color map, etc. To visualize the geometry generated we implemented an animation system. The system developed can be used in wide range of tasks, including landscape reconstruction and synthesizing random landscapes.АннотацияПроект посвящен созданию изображений реалистичного ландшафта. Для построения разработаны два подхода: с использованием регулярных данных - униформная сетка с картой высот и с нерегулярными данными - произвольный набор точечных данных с последующей триангуляцией. Пространственные данные подвергаются последующей обработке для достижения реалистичности - наложение шума, освещение с использованием карты высот и т.п. Для визуализации в реальном времени реализована анимационная система. Проект может быть использован как для воссоздания реального рельефа, так и синтезирования произвольных пейзажей.ТезисыВведениеАвторами предпринята попытка разработать систему построения ландшафтов для последующего использования в различных проектах, связанных с 3D графикой и визуализацией. Основные требования к системе: моделирование ландшафтов должно проходить в реальном времени, в модель должны быть включены геометрические и цветовые данные, система должна иметь удобный пользовательский интерфейс. Построение системыВ основе системы лежат алгоритмы генерации геометрических данных для построения рельефа местности. Алгоритмы делятся на две категории:
Построение GRIDАлгоритм построения регулярной сетки - карты высот - основан на подходе, предложенном в [1]. В основе алгоритма лежит идея построения двумерного массива с высотами, полученными из редактора точек. Изначально в ячейки массива заносятся высоты ближайших точек. Затем у еще не обработанных точек высота определяется по ближайшим ячейкам с уже определенными соседями. Алгоритм проводится в несколько проходов, что позволяет добиваться различно степени сглаженности рельефа. Для управления степенью "гладкости" результата применен механизм цифровой фильтрации, которую применяют, как правило, на растровых изображения ([2]). В нашем случае используется сглаживающий фильтр небольшой апертуры, который позволяет визуально улучшить синтезтированный результат.Построение триангуляцииВторой подход - триангуляция произвольно расположенных точек. Предполагается, что точки заданы на плоской поверхности с указанной высотой. Для объединения их в единую структуру используется триангуляция точек плоскости с критерием Б.Н.Делоне ([3]). Авторами разработаны механизмы оптимизации алгоритма за счет учета особенностей триангулируемых данных и выполняется редукция особых случаев его работы. Полученная структура используется наряду с регулярной сеткой для представления данных и последующей из визуализации. Второй этап работы с нерегулярярными данными - последующая их детализация. Придуманный подход основан на внутреннем представлении данных после триангуляции: результат сохраняет информацию не только о треугольниках построенной сетки, но и о ребрах их образующих. Это позволяет путем деления их пополам увеличить детализацию поверхности, при этом новые серединные точки смещаются на небольшую псевдослучайную величину (полученную шумовым способом - см. ниже). Это увеличивает реалистичность модели, понижая регулярность исходной геометрии.Использование шумаМоделирование шума позволяет избавиться от повторяющихся элементов в моделируемой геометрии, а также снизить регулярность структур. Нами используется шумовая функция Перлина ([4]) для смещения точек синтезированной геометрии. Шумовые смещения происходят по оси ординат и по нормалям, построенным в точках как усредненные величины нормалей от смежных граней.ВизуализацияДля визуализации построенной геометрии нами разработана анимационная система, включающая в себя построение различных примитивов (в том числе основных - регулярной сетки и триангулированной геометрии), выполнение освещения примитивов перед выводом, синхронизацией и интерактивным управлением. Для создания реалистичного отображения ландшафта используется механизм таблиц цветов ([5]) с измененной системой применения, позволяющей одновременно производить освещение объектов (карта цветов сопоставляет высоте данной точки рельефа ее цвет - как на бумажных картах). Для редактирования карт цветов в системе предусмотрен специальный редактор и наборы предварительно сформированных цветовых данных. Отображение всей сцены осуществляется посредством графической библиотеки OpenGL ([6]). Вывод в 3D пространстве оптимизируется за счет сокращения передаваемых на отображения данных: регулярная сетка рисуется полосами треугольников (triangle strip), а нерегулярные данные - индексированными примитивами.ЗаключениеРазработанная система позволяет в реальном времени синтезировать произвольный рельеф местности. Программа имеет удобный интерфейс, широкие возможности и варианты степени детализации и вида полученного результата. Проект может быть использован как для воссоздания реального ландшафта, так и синтезирования произвольных пейзажей.Литература
|
|