loomgui.com ↗

v0.11 → v0.12

Version 0.12 moves Loom’s fullscreen overlay into the URP render pipeline. The bridge API has not changed, so most projects only need a one-time setup pass.

What changed

v0.11v0.12
UI compositionGenerated uGUI canvasURP renderer feature
Loading coveruGUI objectPart of the URP render pass
Supported rendering pathGPU sharing with a CPU fallbackGPU-only on Metal, D3D11, and D3D12
Scene setupLoomUI creates the render stack at runtimeThe setup menu also configures every URP renderer
  1. Update Loom, then restart Unity.

    Update the com.loomgui package to the 0.12 release. Fully quit and reopen the Editor so Unity loads the new native plugin.

  2. Check the render pipeline for every quality level.

    Open Project Settings → Quality and confirm that every quality level uses a Universal Render Pipeline asset, either directly or through the default pipeline in Project Settings → Graphics. The Built-in Render Pipeline and HDRP are not supported.

  3. Run Loom setup again in the startup scene.

    Open the scene that contains your Loom UI GameObject and run:

    Loom -> Setup UI in Current Scene

    The command installs LoomRendererFeature on every renderer in every URP asset used by the project’s quality levels. If the scene already contains a LoomUI component, Loom leaves it in place and only updates the renderer setup.

  4. Verify the overlay in Play mode.

    Press Play and check that the loading cover and UI appear over the final game camera. Test each quality level your game can select at runtime. If a camera uses a non-default renderer, test that camera too; the setup command installs the feature on those renderer entries as well.

If you customized the old render stack

The documented LoomUI workflow needs no C# or TypeScript changes. If your code directly referenced LoomTicker, LoomLoadingCover, or LoomRenderEvent, remove those references. The URP renderer feature replaces those components in 0.12.

Do not create a Loom canvas, RawImage, or ticker yourself. Keep the LoomUI component in the startup scene and use its existing loading-cover fields to control the cover color and fade duration.