Вход

Игровой движок на языке С++ для создания игры "MainCraft"

Рекомендуемая категория для самостоятельной подготовки:
Дипломная работа*
Код 547630
Дата создания 2023
Мы сможем обработать ваш заказ (!) 6 мая в 12:00 [мск]
Файлы будут доступны для скачивания только после обработки заказа.
1 780руб.
КУПИТЬ

Описание

Создание 3D движка - это процесс разработки программного обеспечения, которое позволяет создавать, отображать и управлять трехмерными моделями в интерактивном режиме. Такие движки используются в различных областях, включая компьютерные игры, архитектурное проектирование, визуализацию данных и многие другие.

Разработка 3D движка требует глубокого понимания математики, физики и компьютерной графики. Она также требует знания программирования на различных языках, таких как С++, Java, Python и других. Создание 3D движка начинается с выбора подходящей архитектуры и алгоритмов, которые будут использоваться для обработки трехмерных данных. Далее необходимо разработать систему отображения, которая позволит выводить модели на экран. Важным этапом является создание системы управления камерой, которая будет позволять пользователю перемещаться внутри трехмерной среды.

В процессе разработки 3D движка также необходимо учитывать производительность и оптимизацию. Ведь чем более сложные и детализированные модели будут использоваться, тем больше ресурсов понадобится для их отображения. Поэтому оптимизация производительности является важным фактором при разработке 3D движков.

Целью работы является создание игрового движка на основе языка С++ [1]. Движок должен предоставлять возможность создания игрового приложения.

Задачи:

1) разобрать материалы по настройке IDE [2],

2) изучить алгоритмы для реализации 3D графики [3],

3) проанализировать аналоги,

4) разобрать материалы по работе с физикой и анимацией,

5) разработать игровой движок [4],

6) создать игру на основе игрового движка,

7) протестировать проект.

Несколько преимуществ собственного движка:

□ создание собственного игрового движка позволяет разработчикам создавать уникальные игры, которые могут отличаться от других игр на рынке;

□ игровой движок, созданный под конкретную игру, может быть более гибким и лучше соответствовать потребностям игры, чем универсальный игровой движок;

□ разработка движка позволяет разработчикам оптимизировать его для конкретной игры и платформы. Это может привести к лучшей производительности и меньшему количеству ошибок;

□ разработчики имеют полный контроль над всеми аспектами игры, включая движок, что может быть важным для реализации определенных функций или достижения определенного визуального стиля.

Разработка 3D движка для игр является актуальной и важной задачей в современной компьютерной индустрии. С ростом популярности видеоигр и их использования как средства развлечения и культурного обмена, требуется все более совершенный и мощный 3D движок, который бы обеспечивал высокую скорость работы, реалистичность отображения и поддержку различных платформ.

Исследования, направленные на создание 3D движка для игр, могут быть использованы для создания более качественных и интерактивных игровых миров, улучшения графических возможностей и увеличения производительности игровых приложений.

Содержание

ВВЕДЕНИЕ 4

1. Инструменты разработки 7

1.1. Microsoft Visual Studio 7

1.2. C++ 7

1.3. SFML 8

1.4. CMake 9

2. Проектирование 10

3. Разработка проекта 12

3.1. Функционал проекта 12

3.2. Реализация 3D графики 13

3.2.1. Проецирование точек на плоскость экрана 13

3.2.2. Матрица проекций 16

3.2.3. Матрица экранного пространства, матрица масштабирования, перемещения, поворота и мировая система координат 17

3.3. Камера и клиппинг 20

3.4. Реализации физики 27

3.4.1. Алгоритм GJK 28

3.4.2. Алгоритм EPA 31

3.5. Реализация анимации 32

3.5.1. Линейная анимация 32

3.5.2. Кривые Безье и bounce анимация 33

4. Разработка игры 36

4.1. Структура 36

4.2. Реализация игрового мира 37

4.3. Управление персонажем 38

4.4. Реализация основной игровой механики 39

5. Тестирование 41

ЗАКЛЮЧЕНИЕ 42

СПИСОК ЛИТЕРАТУРЫ 47

ПРИЛОЖЕНИЕ 48

Список литературы

1) Ленгьель, Э. Mathematics for 3D Game Programming and Computer Graphics / Эрик Ленгьель. – Бостон: 2012. – URL: https://canvas.projekti.info/ebooks/Mathematics%20for%203D%20Game%20Prog ramming%20and%20Computer%20Graphics,%20Third%20Edition.pdf (дата обращения 16.03.2023). - ISBN: 978-1-4354-5886-4. – Текст: электронный.

2) Данн, Ф. 3D Math Primer for Graphics and Game Development / Ф Данн, Я. Парбери – Лондон: 2011 – URL: https://gamemath.com/book/intro.html (дата обращения 16.03.2023). - ISBN: 978-1-4398-6981-9. -Текст: электронный.

3) Ленгьель, Э. Part 2: Foundations of Game Engine Development / Эрик Ленгьель. – Бостон, 2019. - ISBN: 978-0-9858117-4-7– Текст: непосредственный.

4) Ленгьель, Э. Part 1: Foundations of Game Engine Development / Эрик Ленгьель. – Бостон, 2016. - ISBN: 978-0-9858117-5-4– Текст: непосредственный.

5) Прата, С. Язык программирования C++. Лекции и упражнения / С. Прата. – Кентфилд, 2012. - ISBN: 978-5-8459-1950-2 – Текст: непосредственный.

Очень похожие работы
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.0048
© Рефератбанк, 2002 - 2024