SusConsoleService

Оверлей dev-консоли — перехватывает логи Unity, показывает их поверх всего интерфейса с подсветкой по уровню и выполняет команды с автодополнением по Tab и фильтрацией.
Пакет
SusCore · Devtools (бесплатно)
SusConsoleService — обычный C#-сервис-оверлей, не .sharq-компонент: вставлять в шаблон нечего. Подключите его один раз — и он слушает лог-канал Unity всё время работы приложения.
Использование
#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 пакетной документации.