Skip to content

NRD in DSLE (Dark Souls 2 & 3 PT) #100

Description

@Ganaboy2k

Hello Dzhdan,

Thanks for all your support so far. As discussed we can use this consolidated thread from here on. I will start with this template so is easier.

Problem Statement :

  1. Passing Confidence inputs to NRD - Reblur so that it can disocclude regions of shading change temporally. Most noticeable with Shadows of Moving/Animated objects when Reblur is used to denoise Direct and Indirect lighting together from LocalLightSources (Point/Spot/Area Lights)

Solution Plan:

  1. During SHARC Rendering(5x5 Downscale). Output the following properties Visibility Buffer - HitInstance, PrimitiveId, Radiance Buffer Raw. This pass technically need not be with SHARC, but is useful to combine
  2. Fetch Previous Buffers output from 1(Visibility buffer, Radiance). GetPosition in PreviousFrame, Run the path tracer loop again, note we already know the previous frame seed used. Compared the results and output to a buffer.
  3. Blur the Output from 2 multiple times, do a 1 frame temporal accumulation with Confidence Output Buffer from Previous. Finally Upscale the output to full resolution(Bilinear), which will be confidence input to NRD.

PS : Maybe I can reuse the 2nd path trace loop to update the SharcCache as well. Improving cache quality. As the SHARC cache operates in world space

Let me know what you think of my plan.

Regards,
Ganesh

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions