Skip to content

Переход на BGFX + GLFW, удаление SFML, добавление формата latbin#34

Merged
ElectroZybr merged 45 commits into
ElectroZybr:mainfrom
vxjnc:refactor/bgfx-glfw-latbin
Apr 28, 2026
Merged

Переход на BGFX + GLFW, удаление SFML, добавление формата latbin#34
ElectroZybr merged 45 commits into
ElectroZybr:mainfrom
vxjnc:refactor/bgfx-glfw-latbin

Conversation

@vxjnc
Copy link
Copy Markdown
Contributor

@vxjnc vxjnc commented Apr 16, 2026

Изменения

Рендеринг

  • Создан новый рендер на базе BGFX (RendererBGFX, Renderer3DBGFX)
  • ImGui переведён с imgui-sfml на imgui_impl_bgfx
  • Шейдеры перенесены в папку Rendering/, добавлена кроссплатформенная генерация embedded-шейдеров
  • Оптимизирован RendererBGFX::drawAtomsImpl, максимальное количество атомов увеличено до 268 435 456
  • Запись видео переработана через bgfx::requestScreenShot, теперь работает в отдельном потоке, поддерживает разные форматы пикселей, yflip перенесён на сторону ffmpeg

Оконная система

  • SFML полностью удалён, окно создаётся через GLFW
  • Удалены sf::Color, sf::Texture, sf::Image, sf::View
  • sf::Vector2f, sf::Vector2i, sf::Vector2u заменены на шаблонные Vec2f, Vec2i, Vec2u

Формат latbin

  • Добавлен новый формат сохранения сцен .latbin на базе zpp_bits
  • Добавлено сжатие через zstd
  • Сохранения и запись поддерживают разные форматы пикселей

Формат lat

  • Сохранения и запись поддерживают разные форматы пикселей

Прочее

  • AtomStorage переделан. Добавлен метод init для инициализации атомов из std::span
  • Демо-сцены перенесены в формат latbin
  • OverlayState::draw переписан на imgui
  • Шрифты встроены в бинарник
  • CMakeLists.txt разбит на отдельные файлы
  • Добавлена поддержка ccache
  • Добавлен Camera::resetView
  • Переделан turboColor, убраны тёмные участки

Исправления

vxjnc added 30 commits April 16, 2026 11:19
@vxjnc vxjnc force-pushed the refactor/bgfx-glfw-latbin branch 2 times, most recently from dfc21d7 to dbfba12 Compare April 16, 2026 11:57
@vxjnc vxjnc force-pushed the refactor/bgfx-glfw-latbin branch from dbfba12 to 8f691b7 Compare April 16, 2026 14:42
@ElectroZybr ElectroZybr merged commit 8f691b7 into ElectroZybr:main Apr 28, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants