Основное требование к системе было следующим: генерация проекта для iOS, MacOS, Android, Windows, Linux одним скриптом. Мы успели попробовать Premake, SCons, Bazel и CMake. По разным причинам остановились на проверенном временем CMake.В последние годы CMake стал практически стандартом для C++ библиотек. Практически все, начиная от abseil и заканчивая SDL, можно подключить к своему CMake проекту буквально в несколько строк. Есть конечно и исключения, как OpenSSL или V8, с которыми пришлось немного попотеть. Поверх голого Цмейка мы разработали небольшой фреймворк (всего порядка 3000 строк). Основные возможности:Модульность. Отдельные части движка оформлены в виде модулей. Например, звук, UI, физика, сеть и т.п. Каждый модуль может иметь собственные ассеты (например, шейдеры) и может иметь зависимости от других модулей.Конечное приложение на движке (игра, редактор, утилиты) подключает только те модули, которые ей необходимы. Немного особняком стоит модуль core, который является зависимостью для большинства других модулей. Core имплементирует точку входа, главный цикл приложения, взаимодействие с операционной системой и другие базовые сущности.Thirdparty модули. Наш фреймворк позволяет в несколько строк скачать git репозитарий или архив, распаковать, собрать, скопировать библиотеки и/или исходники. На сегодняшний день у нас 66 таких thirdparty модулей: аналитика, сторонние файловые форматы, middleware вроде физики, звуковой библиотеки и т.п.
Комментарий недоступен
Кажется, это должно быть в "Gamedev", не?
Комментарий недоступен
Комментарий недоступен
Там 4 девушки минимум, а скорее всего 5. 5ая скорее всего это рыжая справа сверху, там просто очень маленький кусок не позволяющий произвести идентификацию, но парни патлачи обычно не красят волосы и так челку не зачесывают
Комментарий недоступен
Даже двух девушек достаточно, чтобы обвинить кого-то в домогательствах