README.md

Компоненты игрового движка

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

Содержимое

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

  • Базовый рендеринг OpenGL (набор базовых примеров, от треугольника до сцены из нескольких мешей и свободной камеры)
  • Система компонентов (entity component system)
  • Система событий (event system)
  • Управление ресурсами (resource management)

Сборка

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

Ниже идет инструкция по сборке, которая предположительна должна быть актуальна для любой платформы (Windows, Linux, MacOS)

Системные требования к сборке

  • CMake (должен быть добавлен в PATH)
  • Python (должен быть добавлен в PATH)
  • Пакетный менеджер python - pip (введите pip в командной строке для проверки доступности, обычно устанавливается вместе с python)
  • Conan (устанавливается командой команда pip install conan, должен быть добавлен в PATH, доступность проверяется командой conan)
  • IDE с поддержкой CMake (CLion, Visual Studio 2022, Visual Studio Code + CMake tools)

Инструкция

  • Если это первое использование conan, вам необходимо создать профиль, который будет содержать в себе информацию о вашей системе сборки (компилятор, ОС, архитектура и т.д). Для этого введите conan profile detect, после чего будет создан файл профиля (обычно в директории <папка-пользователя>/.conan2/profiles)
  • В каталог с профилями могут быть добавлены и другие файлы профилей (созданные вручную). Если не достаточно профиля по умолчанию, можете создать свои профили, список всех настроек профиля можно найти здесь
  • Перейдите в каталог проекта, запустите следующую команду conan install . -pr <название вашего профиля> -b missing. Если вы не создавали своих профилей, то в качестве названия профиля можно указать default либо вовсе не указывать параметр -pr. Параметр -b missing соберет необходимые отсутствующие для загрузки бинарники.
  • После выполнения команды (пере)запустите конфигурацию основного CMake проекта (при помощи IDE или команды)

Внимание!

На системах Linux некоторые пакеты conan могут нуждаться в системных пакетах. Для того чтобы conan инициировал их автоматическую установку необходимо в профиле указать следующее:

[conf]
tools.system.package_manager:mode=install

На некоторых дистрибутивах могут возникнуть сложности при автоматической установке системных пакетов из-за нехватки прав доступа. В таком случае можно попробовать установить отсутствующие зависимости вручную от имени sudo пользователя, после чего повторить установку пакетов conan (список отсутствующих системных пакетов, скорее всего, будет предоставлен в сообщении об ошибке). Если это не сработало - можно установить conan (pip install conan) в том числе и для root пользователя, а затем, единожды запустить команду conan install для вашего проекта от имени root), после чего, очистить генерированные файлы (папка build и файлы CMakeUserPresets.json, это можно будет сделать только с root правами) и перезапустить установку conan пакетов уже от обычного пользователя.

Описание

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

Конвейеры
0 успешных
0 с ошибкой