Тема: Процедурная Генерация Контента
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
1. Основная структура данных
1.1 Постановка задачи………………………………………………..……5
1.2 Мозаика Вороного……………………………………………..…..…10
1.3 Алгоритм Фортуна……………………………………………….…..12
1.4 Алгоритм Ллоида…………………………………………….………22
1.5 Смежные графы вершин и граней
2. Заполнение карты
2.1 Генерация участка суши ………….……………………..…………..27
2.2 Карта высоты…………………….………………...……...………….29
2.3 Генерация рек………………….……………………………….…….30
2.4 Карта влажности…………………………………….…………….…31
2.5 Типы местности
3. Описание реализации
3.1 Краткое описание
3.2 Классы и Методы
3.3 Результаты выполнения программы
Заключение
Список литературы
📖 Введение
Процедурная генерация (ПГК) — это группа методов, в которых при помощи особых вычислительных алгоритмов создаются модели, которые изображают различные объекты — дома, растения, ландшафт, текстуры [1. 1].
Построение моделей различных объектов методом ПГК—распространенная задача, которая находит применение во многих сферах, связанных с компьютерной графикой, например, в создании компьютерных игр или мультфильмов. Этот метод используется тогда, когда нужно получить большое множество моделей с уникальными характеристиками, которое нельзя получить в разумные сроки и при разумных трудозатратах обычным способом построения вручную.
Например, при создании текстур вручную, художники используют два метода или их комбинацию. Первый метод основан на использовании реальных фотоизображений с последующим редактированием. Второй — это создание текстуры полностью при помощи графического планшета. Эти методы обладают серьезным недостатком — невозможностью быстрого итерирования вариантов текстуры. В обоих случаях такие текстуры лишены даже минимальной параметризации картинки и как следствие — возможности быстрого изменения путём редактирования этих параметров.
Кроме того, создание текстур этими методами сводится к рутинной работе: множество движений кисточкой, бесконечное перебирание фототекстур в поисках подходящей и ретуширование с целью правки нежелательных элементов. При процедурной генерации текстуры, цвет каждого пикселя изображения формируется алгоритмически, что позволяет избежать всю рутинную работу и значительно снизить трудозатраты [2. 1].
По сравнению с традиционными методами создания графического контента, процедурная генерация обладает следующими значительными преимуществами:
Возможность вносить изменения в любой этап формирования изображения (недеструктивное редактирование).
Возможность увеличения или уменьшения размера изображения без потерь детализации.
Высокая скорость создания нового контента на основе существующих наработок путём их модифицирования и комбинирования.
Быстрое создание подобных изображений. После того, как реализован процедурный генератор, формирующий необходимое изображение, для получения подобного нужно всего лишь изменить входное значение у генератора случайных чисел.
Малый размер хранимых данных, который не зависит от разрешения картинки. В файл сохраняется только описание алгоритма, занимающее несколько килобайт.
После анализа научной литературы по этой теме, были сформулированы две основные задачи, решению которых посвящена данная работа:
1. Исследование существующих алгоритмов ПГК для создания карт и их возможностей.
2. Реализация метода процедурной генерации контента посредством объектно-ориентированного программирования, а именно языка Java.
✅ Заключение
В результате выполнения бакалаврской работы разработана программа-генератор двухмерных карт местности, в основе которой лежит гибкая структура данных, обеспечивающая возможность ее дальнейшего расширения с последующим интегрированием в компьютерную игру для мобильных устройств.
В дальнейшем планируется добавить несколько вариантов типа местности, изображенной на карте, помимо островной (таких как материк или архипелаг), и возможность построения островных форм другими методами, помимо генерации синусоиды (например, с использованием функции Шума Перлина).



