Перейти к содержанию

UniScreenOverlayRender

Точка входа для оверлеев, отрисовываемых поверх открытых игровых экранов.

Обзор

UniScreenOverlayRender регистрирует слои для цели UniRenderTarget.SCREEN_OVERLAY. Эти слои отрисовываются поверх любого активного экрана (инвентарей, контейнеров или кастомных GUI), не нарушая их работу.

Сценарии использования оверлеев экранов

Оверлеи экранов идеально подходят для компонентов, остающихся видимыми между экранами:

  • Браузеры рецептов и предметов (боковые панели стиля JEI/REI/EMI).
  • Уведомления и всплывающие окна, отображаемые поверх меню.
  • Инспекторы отладки и визуализаторы дерева виджетов.
  • Закреплённые подсказки или окна помощи.

Регистрация оверлея экрана

Widget sidebar = new RecipeSidebarWidget();
UniRenderLayerRegistration reg = UniScreenOverlayRender.register(
    new UniRenderLayer(sidebar),
    screen -> true,
    100
);

API

UniScreenOverlayRender::clear()

clear()

Очищает и закрывает все зарегистрированные оверлеи экранов.

UniScreenOverlayRender::register(UniRenderLayer)

register(UniRenderLayer)

Регистрирует настроенный слой UniRenderLayer как оверлей экрана со стандартной видимостью и приоритетом 0.

Параметр Тип Описание
layer UniRenderLayer Настроенный слой UniRenderLayer.

Возвращает UniRenderLayerRegistration: Дескриптор регистрации..

UniScreenOverlayRender::register(UniRenderLayer, Predicate, int)

register(UniRenderLayer, Predicate, int)

Регистрирует UniRenderLayer как оверлей экрана с условием видимости и приоритетом.

Параметр Тип Описание
layer UniRenderLayer Регистрируемый слой отрисовки.
visibility Predicate Предикат видимости, проверяемый перед отрисовкой.
priority int Приоритет порядка отрисовки.

Возвращает UniRenderLayerRegistration: Дескриптор регистрации..

UniScreenOverlayRender::register(Widget)

register(Widget)

Регистрирует корневой виджет как оверлей экрана со стандартными настройками.

Параметр Тип Описание
root Widget Корневой виджет для отрисовки.

Возвращает UniRenderLayerRegistration: Дескриптор регистрации..

UniScreenOverlayRender::register(Widget, UIContext)

register(Widget, UIContext)

Регистрирует корневой виджет с явным UIContext как оверлей экрана.

Параметр Тип Описание
root Widget Корневой виджет для отрисовки.
context UIContext Привязываемый контекст UIContext.

Возвращает UniRenderLayerRegistration: Дескриптор регистрации..