Skip to content

UniScreenOverlayRender

Minecraft-independent entry point for overlays rendered on top of active GUI screens.

Overview

UniScreenOverlayRender registers layers targeting UniRenderTarget.SCREEN_OVERLAY. These layers render on top of any open screen (vanilla inventories, mod containers, custom screens) without replacing the underlying screen hierarchy.

Use Cases for Screen Overlays

Screen overlays are suited for features that remain persistent across menu transitions:

  • Recipe and item browsers (JEI/REI/EMI style sidebars).
  • In-game notifications and toasts displayed above open menus.
  • Debug inspectors and UI hierarchy visualizers.
  • Pinned tooltips or assistance windows.

Registering a Screen Overlay

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

API

UniScreenOverlayRender::clear()

clear()

Clears and closes all registered screen overlays.

UniScreenOverlayRender::register(UniRenderLayer)

register(UniRenderLayer)

Registers a configured UniRenderLayer as a screen overlay with default visibility and priority 0.

Parameter Type Description
layer UniRenderLayer Configured UniRenderLayer.

Returns UniRenderLayerRegistration: Registration handle..

UniScreenOverlayRender::register(UniRenderLayer, Predicate, int)

register(UniRenderLayer, Predicate, int)

Registers a UniRenderLayer as a screen overlay with visibility condition and priority.

Parameter Type Description
layer UniRenderLayer Render layer to register.
visibility Predicate Visibility predicate tested before rendering.
priority int Rendering order priority.

Returns UniRenderLayerRegistration: Registration handle..

UniScreenOverlayRender::register(Widget)

register(Widget)

Registers a root widget as a screen overlay with default settings.

Parameter Type Description
root Widget Root widget to render.

Returns UniRenderLayerRegistration: Registration handle..

UniScreenOverlayRender::register(Widget, UIContext)

register(Widget, UIContext)

Registers a root widget with an explicit UIContext as a screen overlay.

Parameter Type Description
root Widget Root widget to render.
context UIContext UIContext to bind.

Returns UniRenderLayerRegistration: Registration handle..