Experimental DLSS Neural Rendering
The neural-render pass alone, for when you don't want the upscale
- image
- effect_mask
- depth
- motion_vectors
- image
- runtime_report
DLSS Super Resolution is the boring half of this pack - upscale pixels, keep them stable, done. The interesting half is the experimental neural-rendering pass, and this node runs only that. No resolution change. It takes your frames at whatever size they arrive and pushes them through nvngx_dlssnr.dll - the user-supplied experimental runtime the whole pack orbits around - with a style you pick, and hands back the rendered result.
What does that even do to a normal image? Looking at the author's test sheets: it's not restoration and it's not upscaling. It re-renders the frame with a trained neural look on top - softer skin transitions, added surface texture, a change in facial contrast and local structure. The README is refreshingly honest that a still photograph isn't magically becoming a game-engine render, because the real thing gets geometry, exposure, jitter, and accurate motion vectors from the engine. Here those are estimated from pixels, so the output is a plausible re-lighting, not ground truth. Approach it as a stylistic effect and you'll be delighted; approach it as a physics-correct renderer and you'll be disappointed.
The inputs that shape the look
style- 0 neutral, 1, or 2. Style 0 (neutral) is the safest evaluation look and the one to judge a pipeline with before you get creative. Style 2 is where the visible changes happen.style_strengthandintensity(both default 1) - the requested style blend and the overall effect strength. Crank them down for subtle, up for obvious.local_structure(0–2) - how hard the pass pushes local structure. Faces, in the author's tests, respond strongly here.skin_structure(default -1) - skin-specific control where -1 explicitly leaves the runtime behavior untouched. Set it above 0 only when you know skin is the problem.auto_mask(on) - asks the runtime to apply its own automatic effect mask.
Two more required inputs are easy to misread. pre_scale (1x/2x/4x) is not DLSS Super Resolution - the source code confirms it's a plain bicubic resize applied before the neural pass so you can test at a bigger canvas. If you want the real SR upscale, run it through the Super Resolution or Full Pipeline node first. And depth_inverted flips the depth convention if the pass reads your map backwards.
The optional depth and motion_vectors inputs are all-or-nothing - the node throws an error if you connect one without the other, because feeding the runtime a half guide is worse than feeding it none. effect_mask is different: a ComfyUI MASK you can connect afterward to blend the rendered result back toward the source in specific regions, which is your tool for localizing the effect instead of letting it touch the whole frame.
What you need to actually run it
Both outputs come back as an image and a runtime_report string - the report identifies the pass as DLSS-NR 310.8 Feature 18 and tells you whether guides were present. A single still is internally duplicated to initialize the temporal runtime (the report labels it still-baseline), so multi-frame input is where this node's real behavior shows.
The hard requirement: this node dies without the neural runtime DLL. That means the full DLSS Runtime Setup (One Click) dance - install the pack via ComfyUI Manager (https://github.com/HECer/ComfyUI-DLSS5), point setup at a legally obtained nvngx_dlssnr.dll, let it fetch VapourKit - and then DLSS 5 Runtime Status should report READY before you waste a queue on it. It's Windows + NVIDIA only, and it's experimental alpha; treat the first run on new hardware as a compatibility test, not a promise.
Inputs (12)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| style | COMBO | 3 options: 0 - neutral, 1, 2 | |
| style_strength | FLOAT | 1.000–1 | — |
| intensity | FLOAT | 1.000–1 | — |
| local_structure | FLOAT | 1.000–2 | — |
| skin_structure | FLOAT | -1.00-1–2 | — |
| auto_mask | BOOLEAN | true | — |
| pre_scale | COMBO | 3 options: 1x, 2x, 4x | |
| depth_inverted | BOOLEAN | false | — |
| effect_maskopt | MASK | — | |
| depthopt | IMAGE | — | |
| motion_vectorsopt | IMAGE | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| runtime_report | STRING | — |