#pragma once // ----------------------------------------------------------------------------- // Debug-оверлей (спек 7). Рисуется примитивами raylib ПОВЕРХ уже // отмасштабированного кадра — это единственное исключение из правила // «вся сцена софтверная», и оно dev-only (F1 выключает). // // Кадр лежит в окне со сдвигом и целым масштабом (ScreenFitRect), поэтому // оверлей обязан получать ScreenRect и считать ВСЕ координаты через него. // Рисовать по координатам окна нельзя: на любом мониторе, где кадр не занимает // окно целиком, разметка уезжает относительно картинки. // ----------------------------------------------------------------------------- #include "engine/framebuffer.h" struct Game; struct View; struct Overlay { bool show = true; // F1 bool showLanes = true; // F2 bool showCandidates = false; // F3 bool showMetrics = true; // F4 int tuneIndex = 0; // [ / ] void HandleKeys(); void Draw(const Game& game, const View& view, const ScreenRect& fit) const; };