К содержимому

SusConsoleService

SusConsoleService

Оверлей dev-консоли — перехватывает логи Unity, показывает их поверх всего интерфейса с подсветкой по уровню и выполняет команды с автодополнением по Tab и фильтрацией.

Пакет

SusCore · Devtools (бесплатно)

SusConsoleService — обычный C#-сервис-оверлей, не .sharq-компонент: вставлять в шаблон нечего. Подключите его один раз — и он слушает лог-канал Unity всё время работы приложения.

Использование

csharp
#if DEVELOPMENT_BUILD || UNITY_EDITOR
var console = new SusConsoleService
{
    OverlayHost = SusBootstrap.GetOrCreateOverlay(uiDocument.rootVisualElement),
    ToggleKey = KeyCode.BackQuote, // ~
    MaxEntries = 500,
};
console.Attach(); // subscribes to Application.logMessageReceivedThreaded, spawns the hotkey driver
#endif

Нажмите ~ (или вызовите Toggle()), чтобы открыть консоль снизу экрана. Строки лога окрашены по уровню (серый/жёлтый/красный для Log/Warning/Error), автопрокрутка идёт к новой записи, пока вы не прокрутили список вручную вверх, а сузить список можно чипами фильтра All / Log / Warn / Err или полем поиска. Поле команды выполняет зарегистрированную команду по Enter и дополняет введённый префикс по Tab; встроены clear, help и filter <all|log|warn|error> — остальные регистрируются через RegisterCommand.

ЧленРоль
OverlayHostСлой оверлея, в который монтируется консоль (категория Console — самая верхняя)
ToggleKeyХоткей открытия/закрытия консоли (по умолчанию ~)
MaxEntriesРазмер кольцевого буфера захваченных строк лога
IsOpenОткрыта ли консоль сейчас
Attach() / Detach()Запустить/остановить перехват лога и драйвер хоткея
Show() / Hide() / Toggle()Открыть/закрыть оверлей
SetFilter(ConsoleFilter) / SetSearch(string)Сузить видимые строки лога
RegisterCommand(name, handler, help)Добавить команду в поле ввода
ExecuteCommand(input)Выполнить команду программно

Заметки

  • Бесплатно — поставляется вместе с sus-core, покупка SusKit не нужна.
  • Оборачивайте создание в #if DEVELOPMENT_BUILD || UNITY_EDITOR, чтобы не попасть в релизные сборки.
  • Полный разбор настройки и регистрации команд — в гайде Dev Console пакетной документации.