Transparent HUD background
The plugin renders Web HUDs with a transparent background by default. Each layer fills its anchor rect; only opaque pixels in your page block what's behind. No extra setup needed.
What the plugin does
UBindableWebBrowseris constructed withbSupportsTransparency = true— CEF allocates a transparent surface.After page load, the bridge injects:
html<style>html,body{background:transparent !important;}</style>This neutralizes the user-agent default white and any
body { background: ... }you set.
CSS pitfalls
Don't set
body { background: <color> }— the injected!importantrule wins.Don't set
html { background-color: ... }— same.Want a solid panel? Render an opaque
<div>on top of the transparent body:tsx<div style={{ background: '#0a0e14', padding: 16, borderRadius: 12 }}>…</div>
Opting out (debug only)
Project Settings → Plugins → Unreal React Bridge → Force Background Transparent → false. Injection is skipped on the next page load. Re-enable before shipping.
Mac UE 5.7 known issue
Semi-transparent regions render fully opaque black
On UE 5.7 Mac, rgba(0,0,0,.5) or a transparent body renders as fully opaque black. Engine regression — bSupportsTransparency = true IS reaching SWebBrowser correctly, but the Slate/Metal compositor drops it.
Tried and didn't help:
bSupportsTransparency+TargetedRHIs=SF_METAL_SM5- Removing intermediate UMG containers
Works on UE 5.6.1 with the same plugin and page. Expected to be fixed on UE 5.8.
Workaround for Mac UE 5.7: design with opaque panels, or disable bForceBackgroundTransparent so the page's natural color renders predictably.
Mac UE 5.7 — initial white flash
~100ms of opaque white on first mount
~100ms of opaque white on first layer mount before React renders. This is the WKWebView NSView default fill.
Tried and didn't suppress it:
SWebBrowser::BackgroundColorShowInitialThrobber(false)EVisibility::HiddenSetRenderTranslation
Treat as cosmetic until UE 5.8.
See Troubleshooting & FAQ for the full list of known issues.