Автоматизированный комплекс генерации городских 3D-ландшафтов для систем визуализации тренажеров
Задачи данной работы:
- исследование предметной области;
- изучение потребностей пользователей;
- аналитический обзор существующих решений;
- разработка технических требований;
- разработка архитектуры автоматизированного комплекса;
- разработка алгоритма генерации городских объектов на основе географических данных;
- выбор инструментария.
На сегодняшний день к системам визуализации тренажеров предъявляются требования отображать компьютерную графику соответствующую реальной земной поверхности. Визуализируемое трехмерное пространство должно содержать различные объекты для создания более реалистичной компьютерной графики, и городские объекты являются основными. Расстановка каждого объекта в пределах крупного региона неприемлема, поскольку требует слишком много времени и ресурсов разработчиков. Для решения данной проблемы необходима разработка автоматизированного комплекса генерации городских 3D-ландшафтов.
В качестве объекта исследования принимается интерактивная система процедурной генерации городов Citygen [1] как наиболее проработанная и распространенная. Предметом исследования являются алгоритмы и методы, позволяющие генерировать модель города с применением процедурной генерации.
При сравнении использовались следующие характеристики:
- генерация первостепенной сети дорог;
- генерация второстепенной сети дорог;
- генерация позиций для объектов;
- генерация геометрии и текстуры объектов;
- использование географических данных;
- необходимость ручной работы.
Теоретические и практические решения поставленных задач выполнены с применением теории и методов дискретной математики, теории и методов линейной алгебры, теории множеств, теории алгоритмов, теории информационных систем, теории ошибок, теории вероятности и математической статистики.
Существующие методы и алгоритмы генерации сети дорог не подходят для формирования городов, имеющих высокую степень приближения к реально существующим. Поэтому для автоматизированного комплекса разработан алгоритм формирования 3D-ландшафтов с высокой степенью соответствия к реальным городам. В связи с этим появляется необходимость использования географических данных о расположении дорог, маршрутов и объектов.
Для решения этой задачи в качестве входных данных предлагается использовать открытые векторные карты Open Street Map [2]. Преимущество этих карт заключается в том, что они предоставляют информацию почти обо всех существующих дорогах и обладают высокой точностью. Принадлежность к разным классам дорог (автомагистрали, трассы, уличные, пешеходные и другие) позволяет производить их разделение на первостепенные и второстепенные.
Разработанный алгоритм генерации городских 3D-ландшафтов состоит из следующих основных этапов:
- Построение неориентированного графа дорог, полученного в результате обработки географических данных.
- Нахождение городских кварталов по графу дорог с помощью базиса минимальных циклов.
- Генерация непересекающихся вспомогательных ориентированных прямоугольников внутри кварталов.
- Определение географического положения и атрибутов для зданий с помощью вспомогательных прямоугольников
Автоматизированный комплекс решает задачи расстановки объектов при подготовке локации для системы визуализации тренажеров. В результате использования модуля формируются данные о городских объектах, которые используются при построении статической модели городской локации. Комплекс позволяет генерировать контент без необходимости применения ручной работы и избавляет от работы людей, занятых расстановкой объектов во время подготовки локации.
В результате исследования разработан прототип рабочей версии автоматизированного комплекса процедурной генерации городских 3D-ландшафтов. Предлагаемый алгоритм генерации городских объектов является первым рабочим решением. Архитектура программного модуля без особых затруднений позволяет внести изменения, направленные на повышение качества генерируемых данных. Автоматизированный комплекс позволит повысить эффективность подготовки локации для системы визуализации тренажеров и улучшить качество геоинформационных ресурсов.
[2] www.openstreetmap.org