Это проект по разработке прототипа игрового движка, написанного на языке C++. Одновременно с движком разрабатывается работающая на нем игра "Змейка" (очередная реализация классической игры).
Прототип движка разрабатывается в рамках проекта "Создание игры - взгляд изнутри". Его цель - создать игру и подробно описать весь процесс ее разработки во всех аспектах: от проработки концепции и составления гейм-дизайнерской документации до проектирования архитектуры игрового приложения и нюансов реализации с использованием выбранного ЯП и библиотек.
Статьи, написанные в рамках проекта, рассчитаны на читателя, уже реализовавшего до конца хотя бы одну простую игру. Статьи должны помочь начинающему разработчику игр пройти путь от первых, созданных "на коленке" игрушек до полноценных игровых проектов, реализованных на профессиональном уровне. Сам проходя этот путь, я стараюсь подробно описать, с какими проблемами и задачами я столкнулся, и как их решал.
Сайт проекта - http://thegamedev.ru/.
Этот проект - это только прототип игрового движка, в нем заведомо не будет многих подсистем, которые должны присутствовать в полноценном движке. О моем видении архитектуры игрового движка можно прочитать в этой статье: Проектирование на уровне приложений и движков. В настоящий момент в той или иной мере реализованы следующие подсистемы:
- Графический движок
- Менеджер ресурсов
- Оконный менеджер
- Подсистема пользовательского ввода
- Подсистема UI
Следующие подсистемы не будут реализованы в рамках данного проекта:
- Звуковой движок
- Менеджер архивов
- Сериализация/десериализация
В настоящий момент проект, вероятно, должен работать на платформах Windows и Linux. Полноценной проверки пока не проводилось; гарантии, что проект и далее будет оставаться кроссплатформенным, нет. Кроссплатформенность будет поддерживаться до тех пор, пока это не будет требовать значительных усилий.
Для сборки проекта под Windows вы должны в файле Test.pro
в строке INCLUDEPATH += "D:/Soft/gtest-1.7.0/include/"
указать путь к include
каталогу библиотеки Google Test. Для сборки проекта под Linux вы должны расположить файл libgtest.a
в каталоге usr/lib/
.
Для запуска игры скопируйте содержимое каталога Build/Files
в сборочный каталог, на один уровень выше исполняемого файла игры (например, build-Snake-Desktop_Qt_5_5_0_MinGW_32bit-Release/Build
). Сейчас сборочный скрипт в Build.pro
копирует только файлы, лежащие непосредственно в каталоге Files
, в будущем он будет доработан для копирования также файлов из вложенных каталогов.