Работа загружена в текстовом формате PDF - файл легко редактируется, форматируется в текстовом редакторе, конвертируется.
Целью данной работы является разработка программы, обеспечивающей генерацию изображения для построения карты игрового уровня и использование карты в игровом проекте. Задачи, которые решались в ходе исследования:
1) Изучение алгоритмов процедурной генерации.
2) Исследование выбранного алгоритма.
3) Проектирование реализаций алгоритма и игрового проекта.
4) Реализация алгоритма и итогового игрового проекта
5) Анализ результатов.
Работа выполнена с использованием библиотеки Pygame на языке Python.
ВВЕДЕНИЕ 7
ГЛАВА 1 ИССЛЕДОВАНИЕ МЕТОДОВ И АЛГОРИТМОВ ПРОЦЕДУРНОЙ ГЕНЕРАЦИИ 8
1.1 Обзор предметной области 8
1.2. Обзор применяемых для генерации уровней методов и алгоритмов 11
1.3 Выбор алгоритма и подхода к структуре изображения. 23
1.4 Общее описание алгоритма коллапса волновой функции 25
1.5 Основные этапы работы алгоритма и проектирование изменений 29
1.6 Математическая основа алгоритма 34
ГЛАВА 2. ПРОЕКТИРОВАНИЕ ПРОГРАММНОЙ РЕАЛИЗАЦИИ И ИГРОВОГО ПРОЕКТА 38
2.1 Проектирование структуры для реализации алгоритма 38
2.2 Краткое описание игрового проекта 44
2.2 Файловая структура игрового проекта 47
2.3 Структура и логика игрового проекта 49
ГЛАВА 3 РАЗРАБОТКА ПРОГРАММНОЙ РЕАЛИЗАЦИИ 55
3.1 Программная реализация алгоритма 55
3.2 Программная реализация игрового проекта 74
ГЛАВА 4 ТЕСТИРОВАНИЕ И АНАЛИЗ РЕЗУЛЬТАТОВ 93
4.1 Обзор и критерии оценивания 93
4.2 Тестирование 93
4.3 Результаты тестирования 110
ЗАКЛЮЧЕНИЕ 116
СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ 117
СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ
1. Алгоритм Diamond-Square [Электронный ресурс]. – URL:
2. Диаграмма Вороного. Триангуляция Делоне. [Электронный ресурс] –URL:
3. Квантор всеобщности [Электронный ресурс]. – URL:
4. Простая процедурная генерация мира, или Шумы Перлина на Python. Хабр [Электронный ресурс] URL:
5. Shaker N., Togelius J., Mark J. N. Procedural Content Generation in Games // Springer, — 2016. — C. 6-7.
6. Fortunes Algorithm: An intuitive explanation. [Электронный ресурс] URL:
7. Хинчин А. Я. Понятие энтропии в теории вероятностей // Российская академия наук, — 1953. — Т. 8, №3. — С. 4—7.
8. Информационная энтропия [Электронный ресурс]. URL:
9. WaveFunctionCollapse. [Электронный ресурс] URL: