Symptoms → causes
“ABI mismatch: native v0.0.1 reports ABI N, C# package expected M”
The native binary and the C# code are from different releases. Either:
- You replaced the native binary manually but didn’t reinstall the Unity package, or
- You updated the Unity package but Unity is still loading an old binary
from
Library/PackageCache/.
Fix: Delete <Project>/Library/PackageCache/com.loomgui@*/Plugins/ and
restart Unity. The package will reinstall on the next launch.
The Splash screen never advances
The bridge isn’t getting state updates. Common causes:
- No bridge registered. Did you call
bridge.RegisterWithLoom()beforeLoomRuntime.Initialize()? SampleBootstrap(or your equivalent) isn’t in the scene. Confirm viaHierarchy— there should be a GameObject with your bootstrap component.- Vite is serving the wrong UI. Kill any orphan Vite processes with
pkill -f viteand restart Play.
”The type or namespace name ‘Bridge’ could not be found”
The source generator hasn’t run. From the Unity menu, Loom → Regenerate Types. If that doesn’t help, check that your C# class is partial and the
[Bridge] attribute is exactly [Bridge] (not [Loom.Bridge] etc.).
npm install hangs forever
Usually a registry resolution issue. The bundled tarballs are at
file:./.loom/... paths, which don’t need network — but if you have other
deps in UI/package.json pointing at the public registry, they do. Check
that the registry URL in your .npmrc is reachable.
After Editor restart, the first Play shows a blank UI
A known startup race on the very first Play after a fresh Editor launch. Workaround: Stop, Play again. Will be fixed in a future plugin release.
”Mobile Dependency Resolver required” warning on opening the project
This is a Unity Editor warning unrelated to Loom; it surfaces because some package in your project (probably an analytics or ads SDK, not Loom) has declared a dependency on the Mobile Dependency Resolver. You can dismiss the warning; Loom is unaffected.