Skip to content

За значения отвечает CMake

Флаги сборки

Данные флаги - настройки для сборки через CMake. С ними вы можете взаимодействовать через cmake-gui или файлом кеша CMakeCache.txt.

  • FS_INCLUDE_GLM
    Отвечает за включение в сборку библиотеки GLM, изначально включено. Отвечает за математические операции. Выключать крайне не рекомендуется, т.к. у программного слоя нету fallback-а (аварийной альтернативы).
  • FS_INCLUDE_FT
    Отвечает за включение в сборку библиотеки FreeType, изначально выключено. Без данной библиотеки не будет работать пакет fs.ui, но самому программному слою она не нужна.
  • FS_INCLUDE_IMGUI
    Отвечает за включение в сборку библиотеки ImGui, изначально включено. Отвечает за работоспособность отладочного интерфейса. Выключать можно - это некритичный элемент.
  • FS_INCLUDE_NVTX
    Отвечает за включение в сборку библиотеки NVTX, изначально выключено. Библиотека выводит дополнительную информацию для NVIDIA Nsight. При включённом состоянии может влиять на производительность.
  • FS_INCLUDE_OGL
    Отвечает за включение в сборку библиотек GLAD и GLFW, изначально включено. Отвечат за отрисовку на OpenGL. Выключать крайне не рекомендуется, т.к. у программного слоя слишком много зависимостей от OpenGL. Если вам не нужна отрисовка в принципе, то используйте флаг FS_HEADLESS.
  • FS_INCLUDE_OS
    Отвечает за включение в сборку библиотеки PortableFileDialogs, изначально включено. Отвечает за доступность диалогов на различных ОС (Windows, Linux, MacOS).
  • FS_BUILD_TESTS
    Отвечает за постройку тестов. Для обычного билда не нужно. Изначально выключано.
  • FS_HEADLESS
    Отвечает за включение в сборку библиотек GLFW и GLAD, изначально включено. Отвечает за окна и отрисоку в принципе.
  • FS_LOADER_FBX
    Отвечает за включение в сборку загрузчика моделей типа FBX, изначально включено.
  • FS_LOADER_GLTF
    Отвечает за включение в сборку загрузчика моделей типов GLTF и GLB, изначально включено.
  • FS_LOADER_OBJ
    Отвечает за включение в сборку загрузчика моделей типа OBJ, изначально включено.
  • FS_ONLINE
    Разрешает Firesteel скачивать файлы с интернета.
  • FS_PKGS
    Отвечает за включение в сборку сторонних пакетов, изначально включено.
  • FS_PKGS_ALLOW_OVERRIDES
    Если включено, то сторонним пакетом разрешено модифицировать процесс сборки CMake своими CMakeLists.txt файлами, изначально выключено.
  • FS_DISABLE_SUBMODULES
    Если включено, то все библиотеки и подмодули не будут строиться. Изначально выключено и включение не рекомендуется.

Флаги после сборки

Данные флаги используятся в блоках препроцессора. Они определяются Флагами сборки в CMake.

  • FS_HEADLESS
    Используется ли библиотека GLFW и в принципе любой отрисовщик.
  • FS_INCLUDE_NVTX
    Включена ли библиотека NVTX.
  • FS_LOADER_FBX
    Включён ли загрузчик моделей FBX.
  • FS_LOADER_GLTF
    Включён ли загрузчик моделей GLTF и GLB.
  • FS_LOADER_OBJ
    Включён ли загрузчик моделей OBJ.
  • FS_PFD
    Включена ли библиотека PortableFileDialogs.
  • FS_RENDERER_OGL
    Включена ли поддержка OpenGL.

Определения после сборки

Данные флаги вы можете использовать как константы.

  • FS_VERSION
    Предоставляет текущее значение версии Firesteel.

За значения отвечает использование в коде

Для корректной работы определения #define ФЛАГ, установите его до включения любых файлов движка.

  • FS_PRINT_DEBUG_MSGS
    Включает вывод дополнительных отладочных сообщений. Может повлиять на производительность.
  • FS_WIN_NEW_VERSION_CHECK
    Заменяет старую проверку версии на новую, рекомендуемую Microsoft. Использование не рекомендуется, т.к. она выдаёт более неконкретные значения.
  • FS_CONTEXT_MAJOR
    Отвечает за вызываемую версию отрисовщика. То есть если значение равно 4, то будет установлен контекст OpenGL 4.x.
  • FS_CONTEXT_MAJOR
    Отвечает за вызываемую подверсию отрисовщика. То есть если значение равно 3, то будет установлен контекст OpenGL x.3.
  • FS_NO_COMPONENTS
    Полностью отключает всё систему компонентов и типов данных.
  • FS_NO_JSON
    Выключает встроенное использование JSON. Если включен, то некоторый функционал может быть потерян.
  • FS_NO_REG_DEFAULT_SHADER
    Отключает установку fallback-а шейдеров.
  • FS_NO_REG_TYPES
    Отключает изначальную регистрацию стандартных типов данных. Если отключено, то вам придётся регистрировать типы данных самим.