---
title: "QuartzUISceneBackdrop: declaration reference"
description: "Quartz UI 0.57.0-dev: QuartzUISceneBackdrop: declaration reference. Source-reviewed guidance, usage and limitations."
status: approved
visibility: public
sourceRevision: fe5b709ec900e282b50e58b819a25041945005f9
reviewedAt: 2026-09-24
---

# QuartzUISceneBackdrop: declaration reference

> **0.57.0-dev · beta source documentation.** Native, Blueprint, Editor and rendering examples are source-reviewed, not executed in Unreal during this scan. See [validation and limits](https://betterbuilt.games/docs/quartz-ui/evidence).

Pinned source (source: `Source/QuartzUIRuntime/Public/QuartzUISceneBackdrop.h`) · [integration recipe](https://betterbuilt.games/docs/quartz-ui/inventory#quartzuiscenebackdrop) · [practical guide](https://betterbuilt.games/docs/quartz-ui/rendering)

## FQuartzUISceneBackdropRegion

**Advanced type.** One validated browser-local scene-backdrop region, normalized to the web view.

**Prerequisites / integration:** Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials. Use the [QuartzUISceneBackdrop recipe](https://betterbuilt.games/docs/quartz-ui/inventory#quartzuiscenebackdrop) in the host module `QuartzUIRuntime`.

**Minimal example / lifecycle:** Mark HTML data-quartzui-backdrop=frost; set exact player. Per-view snapshots feed render-owned textures; teardown removes regions.

**Avoid:** Expecting arbitrary CSS filters or cross-browser blur. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.

Exact source line (source: `Source/QuartzUIRuntime/Public/QuartzUISceneBackdrop.h#L9`)

## FQuartzUISceneBackdropSnapshot

**Advanced type.** Immutable result of one bounded DOM layout snapshot.

**Prerequisites / integration:** Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials. Use the [QuartzUISceneBackdrop recipe](https://betterbuilt.games/docs/quartz-ui/inventory#quartzuiscenebackdrop) in the host module `QuartzUIRuntime`.

**Minimal example / lifecycle:** Mark HTML data-quartzui-backdrop=frost; set exact player. Per-view snapshots feed render-owned textures; teardown removes regions.

**Avoid:** Expecting arbitrary CSS filters or cross-browser blur. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.

Exact source line (source: `Source/QuartzUIRuntime/Public/QuartzUISceneBackdrop.h#L17`)

## FQuartzUISceneBackdropBlurPlan

**Advanced type.** Bounded render plan for the shared quarter-resolution scene blur.

**Prerequisites / integration:** Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials. Use the [QuartzUISceneBackdrop recipe](https://betterbuilt.games/docs/quartz-ui/inventory#quartzuiscenebackdrop) in the host module `QuartzUIRuntime`.

**Minimal example / lifecycle:** Mark HTML data-quartzui-backdrop=frost; set exact player. Per-view snapshots feed render-owned textures; teardown removes regions.

**Avoid:** Expecting arbitrary CSS filters or cross-browser blur. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.

Exact source line (source: `Source/QuartzUIRuntime/Public/QuartzUISceneBackdrop.h#L27`)

## FQuartzUISceneBackdropRenderPolicy

**Internal type.** Pure policy separated from RDG submission so its cost bounds stay testable.

**Prerequisites / integration:** Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials. Use the [QuartzUISceneBackdrop recipe](https://betterbuilt.games/docs/quartz-ui/inventory#quartzuiscenebackdrop) in the host module `QuartzUIRuntime`.

**Minimal example / lifecycle:** Mark HTML data-quartzui-backdrop=frost; set exact player. Per-view snapshots feed render-owned textures; teardown removes regions.

**Avoid:** Expecting arbitrary CSS filters or cross-browser blur. This named helper is runtime-owned; inspect/use it through the owner above rather than constructing it in gameplay.

Exact source line (source: `Source/QuartzUIRuntime/Public/QuartzUISceneBackdrop.h#L36`)

## FQuartzUISceneBackdropContract

**Advanced type.** Parsing and browser bootstrap contract for scene-aware backdrop regions.

**Prerequisites / integration:** Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials. Use the [QuartzUISceneBackdrop recipe](https://betterbuilt.games/docs/quartz-ui/inventory#quartzuiscenebackdrop) in the host module `QuartzUIRuntime`.

**Minimal example / lifecycle:** Mark HTML data-quartzui-backdrop=frost; set exact player. Per-view snapshots feed render-owned textures; teardown removes regions.

**Avoid:** Expecting arbitrary CSS filters or cross-browser blur. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.

Exact source line (source: `Source/QuartzUIRuntime/Public/QuartzUISceneBackdrop.h#L44`)

## FQuartzUISceneBackdropRenderer

**Advanced type.** Internal render integration used by each SQuartzUIBrowser.

**Prerequisites / integration:** Exact-player app/view and real supported RHI for rendering; project-owned HTML/materials. Use the [QuartzUISceneBackdrop recipe](https://betterbuilt.games/docs/quartz-ui/inventory#quartzuiscenebackdrop) in the host module `QuartzUIRuntime`.

**Minimal example / lifecycle:** Mark HTML data-quartzui-backdrop=frost; set exact player. Per-view snapshots feed render-owned textures; teardown removes regions.

**Avoid:** Expecting arbitrary CSS filters or cross-browser blur. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.

Exact source line (source: `Source/QuartzUIRuntime/Public/QuartzUISceneBackdrop.h#L61`)

## Complete header

Source snapshot, not an additional example. Unreal annotations distinguish exposed Blueprint nodes from native-only/private methods.

```cpp
#pragma once

#include "CoreMinimal.h"
#include "Layout/Geometry.h"

class ULocalPlayer;

/** One validated browser-local scene-backdrop region, normalized to the web view. */
struct QUARTZUIRUNTIME_API FQuartzUISceneBackdropRegion
{
	FVector4f NormalizedRect = FVector4f(0.0f, 0.0f, 0.0f, 0.0f);
	float BlurRadius = 0.0f;
	float CornerRadius = 0.0f;
};

/** Immutable result of one bounded DOM layout snapshot. */
struct QUARTZUIRUNTIME_API FQuartzUISceneBackdropSnapshot
{
	int32 Revision = 0;
	int32 CssViewportWidth = 0;
	int32 CssViewportHeight = 0;
	float DevicePixelRatio = 1.0f;
	TArray<FQuartzUISceneBackdropRegion> Regions;
};

/** Bounded render plan for the shared quarter-resolution scene blur. */
struct QUARTZUIRUNTIME_API FQuartzUISceneBackdropBlurPlan
{
	int32 DownsampleFactor = 4;
	int32 BlurPassCount = 0;
	float MinimumBlurRadius = 0.0f;
	float MaximumBlurRadius = 0.0f;
};

/** Pure policy separated from RDG submission so its cost bounds stay testable. */
class QUARTZUIRUNTIME_API FQuartzUISceneBackdropRenderPolicy
{
public:
	static constexpr int32 DownsampleFactor = 4;
	static FQuartzUISceneBackdropBlurPlan BuildBlurPlan(TConstArrayView<float> PhysicalBlurRadii);
};

/** Parsing and browser bootstrap contract for scene-aware backdrop regions. */
class QUARTZUIRUNTIME_API FQuartzUISceneBackdropContract
{
public:
	static constexpr int32 MaxRegions = 8;
	static constexpr int32 MaxPayloadCharacters = 32 * 1024;

	/** Parses untrusted page JSON into a strictly bounded, normalized snapshot. */
	static bool TryParseSnapshot(
		const FString& PayloadJson,
		FQuartzUISceneBackdropSnapshot& OutSnapshot,
		FString& OutError);

	/** Installs the data-quartzui-backdrop observer used by normal packaged pages. */
	static FString MakeInitializationScript();
};

/** Internal render integration used by each SQuartzUIBrowser. */
class QUARTZUIRUNTIME_API FQuartzUISceneBackdropRenderer
{
public:
	static void Startup();
	static void Shutdown();
	static void UpdateView(
		const void* ViewKey,
		const FGeometry& Geometry,
		const FQuartzUISceneBackdropSnapshot& Snapshot,
		bool bEnabled, ULocalPlayer* LocalPlayer = nullptr);
	static void RemoveView(const void* ViewKey);
};
```

Canonical HTML: https://betterbuilt.games/docs/quartz-ui/reference-quartzuiscenebackdrop
