Add PsychoV24, Sobol path sampling, DLSS-RR guide corrections, SHaRC, and Ultra screenshots - #43
Open
PEQHUB wants to merge 6 commits into
Open
Conversation
PEQHUB
force-pushed
the
codex/pr-final-20260810-04-capture
branch
from
August 10, 2026 19:27
1c223d8 to
a77d772
Compare
PEQHUB
force-pushed
the
codex/pr-final-20260810-04-capture
branch
from
August 10, 2026 19:48
a77d772 to
e38fab3
Compare
PEQHUB
marked this pull request as ready for review
August 10, 2026 19:49
Owner
|
I am doing a large refactor, basically a rewrite, so it may take a while before I can respond to the PR. |
Verbatim copy of the RenoDX PsychoV Test30 shader, kept beside psychov24.slang as the pinned reference for the Caustica Slang adaptation. The file is inert to builds: only *.slang sources are compiled and packaged, and its relative include resolves against the RenoDX tree. THIRD_PARTY_NOTICES documents the MIT provenance (Carlos Lopez).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds four renderer changes: selectable PsychoV24 and analytical display transforms, a replacement path-sampling sequence, corrected DLSS Ray Reconstruction guide data with NVIDIA SHaRC indirect-light caching, and an immutable F4 screenshot mode.
The branch remains a clean five-commit stack:
ee8b9f73PsychoV24 and analytical tone mappingd13d8470Sobol path sampling and RIS7184ae66DLSS-RR guide corrections and SHaRCe38fab3cF4 Ultra screenshots985b0bc8Validated SHaRC runtime defaultsPsychoV24 and analytical tone mapping
fc85b7b15585050442ba35412597ecefc9e04cea.uint32.Sobol path sampling and RIS
new-joe-kuo-6.21201. Dimension 0 is evaluated analytically from Gray code. Dimensions 1 through 3 use compact nibble-XOR lookup tables.SecureRandomroots in a GPU buffer-device-address table. Roots are randomized per renderer initialization and independent per continuation branch, bounce, semantic sample group, and coordinate; exact noise patterns are not replayable across restarts.lights.ris-candidateswith range 0 through 32. The renderer profile stays at eight candidates by default, and Off remains selectable. Changing it rebuilds terrain emitter records without resetting DLSS-RR history.float4loads at byte offsets 0 and 16.DLSS Ray Reconstruction and NVIDIA SHaRC
The existing renderer already supplied DLSS Ray Reconstruction with HDR color, hardware depth, motion, diffuse and specular albedo, normals and roughness, reflection motion, matrices, jitter, and reset state. This PR does not claim those as new.
Adds the two missing DLSSD guide inputs:
pInResponsivityMask, backed by anR16_SFLOATimage.pInIsParticleMask, backed by anR8_UINTimage.Marks primary and transmitted sky pixels responsive so DLSSD does not reuse unstable sky history. Marks primary particle hits in the particle mask.
Adds a separate
R16_SFLOATprimary-sky classification image for the display pass. This image is not passed to DLSSD.Publishes exact reversed-Z far depth for primary sky and reprojects infinite sky directions with homogeneous
w=0, removing camera translation from sky motion.Publishes zero depth and motion for transmitted sky, which has no stable destination correspondence through the foreground interface.
Rejects nonfinite clip coordinates, depth, and motion before writing guide images.
Changes particle motion from one centroid displacement copied to every vertex to identity-keyed per-vertex current-minus-previous displacement.
Applies NVIDIA's RR texture LOD recommendation:
log2(renderWidth / displayWidth) - 1.Validates queried RR dimensions and aspect ratio, falls back to full-resolution RT if size negotiation fails, and clears the reset flag only after a successful DLSSD evaluation.
Adds explicit RR history-reset ownership and result-checked feature release. If NGX retains native device ownership during teardown, the renderer stops new RT work and requires a process restart instead of destroying the Vulkan device underneath NGX.
Integrates NVIDIA Spatial Hash Radiance Cache (SHaRC) SDK 1.8.0.0, pinned to
e19ccacd511f42a3df6f850052d508c13c9e9737.Enables directional spherical-harmonic radiance storage, 64-bit hash-grid atomics, material demodulation, separate emissive storage, cache resampling, propagation depth 4, and optional anti-firefly weighting.
Adds sparse SHaRC update ray generation, full-cache compute resolve, and full-resolution query variants for ordinary and Shader Execution Reordering pipelines.
Keeps direct lighting and the current path vertex live. Cold, invalid, dynamic, metallic, malformed, and near-delta queries continue through ordinary tracing.
Adds a six-slot timeline-protected cache frame ring, a 16-frame query warm-up, and explicit update-to-resolve-to-query synchronization.
Adds reset policy for camera cuts, terrain changes, settings changes, dimension sky changes, and End flash discontinuities.
Adds fail-closed checks for packaged SHaRC metadata, shader variants, license,
shaderBufferInt64Atomics,shaderFloat16, andstorageBuffer16BitAccess.Adds SHaRC settings, cache memory reporting, clear-cache, and restore-default controls.
Uses the validated default profile: SHaRC on, 2^22 entries (about 256 MiB), anti-firefly on, primary debug off, 3x3 update tiles, 384 accumulation frames, 128 stale frames, scene scale 32, radiance scale 1000, grid base 3, grid bias 0, and roughness threshold 0. Existing saved configs remain respected.
Compared with the initial placeholder profile, the default cache is four times larger and 3x3 tiles emit about 7.1 times as many update rays as 8x8 at 3840x2130. This is a deliberate quality/stability profile; allocation failure remains fail-closed to ordinary tracing.
Adds native End skybox and End flash reconstruction. The display pass replaces only visible primary End sky; transmitted sky remains owned by the foreground glass or water surface.
Adds an explicit NGX shim ABI version and a new DLSSD evaluation ABI carrying the two new masks.
Queries NGX-required Vulkan instance and device extensions before object creation instead of relying on a manual extension list.
Fails DLSS features closed on ABI mismatch, missing required extensions, truncated extension queries, stale native extraction, or failed old-device shutdown.
Pins and validates the DLSS SDK checkout, required headers, static library, and runtime payloads before rebuilding and packaging
ngxshim.Makes an explicit
-PacceptSharcLicense=falseoverride an environment value ofSHARC_LICENSE_ACCEPTED=true.F4 Ultra screenshots
CausticaJitter.currentPhaseCount()period of fresh DLSS-RR frames. Skipped or stale frames do not advance capture progress.GameRenderer.rendertail and hands it to the vanilla asynchronous PNG writer.Interface changes
DisplayPush.WorldPush.RtDlssFgchanges. Frame Generation continues to use the shared NGX shim/runtime updated by this stack.Validation
buildpassed with all 18 tasks executed.ngxshim.dllwas built, packaged, and checked forngxshim_abi_version,ngxshim_required_extensions,ngxshim_evaluate_dlssd_v2, andngxshim_release.-PacceptSharcLicense=falseeven when the environment containedSHARC_LICENSE_ACCEPTED=true.3FAB4CE46EE252C72351A36943950346372608AC3EB15B57506FF4237AB083A0.A short local Windows/RTX 5090 smoke on
a77d772cinitialized NGX, DLSS-RR, and SHaRC, loaded three worlds, showed no Vulkan timeout or device-loss signature, and shut down normally. Final head985b0bc8adds only the narrow F4 input guards and the validated SHaRC default profile above; it has clean build and static proof but has not been activated in Minecraft. Hosted GitHub Actions is awaiting maintainer approval for this fork workflow. This PR is ready for human code review, but it is not yet merge-ready or release-ready; RTX 3090 reproduction, Linux runtime, HDR/PsychoV24 visual acceptance, F4 completion, and a longer soak remain pending.