No re-detail engine is available for this image — a plain model upscale (ESRGAN) will be used.
{/if}
{#if engineChoices > 1}
Engine
{ memoryPrompt = null; pickEngine(v); }}
/>
{#if tileEngine}
{engineKind === "flux1"
? "the climb model below pushes to the target, then this FLUX.1 model re-details every tile with the prompt below — low denoise holds structure without a ControlNet"
: engineKind === "zimage"
? "the climb model below pushes to the target, then this Z-Image model re-details every tile with the prompt below — Base holds structure at low denoise; Turbo (distilled) needs ~0.7 or it blotches"
: engineKind === "krea2"
? "the climb model below pushes to the target, then this Krea 2 model re-details every tile with the prompt below — distilled turbo re-detail at moderate denoise, no ControlNet"
: "the climb model below pushes to the target, then this checkpoint re-details every tile (structure locked by a tile ControlNet) with the prompt below"}
{:else if engineKind === "qwen"}
re-renders the whole frame at ~2MP from your instruction — composition can shift slightly; the climb model below pushes to the target size
{:else if engineKind === "plain"}
deterministic enlargement with the climb model below — add a Restore step for degraded sources (webcam, jpeg, blur)
{/if}
{#if realismAvailable}
{/if}
This quality is bigger than the region's footprint — how should it land?
{ canvasMode = "grow"; }}>
Grow canvas to {grownW}×{grownH}
The whole document scales up and the region lands pixel-for-pixel — full quality kept. The UltraSharp-enlarged image becomes the new Background, so erasing the upscale layer reveals it.
{ canvasMode = "keep"; }}>
Keep canvas at {docWidth}×{docHeight}
The render is rescaled back into the region — re-detailed, but softer than 1:1.