Git Product home page Git Product logo

Comments (6)

elvencache avatar elvencache commented on June 8, 2024 2

thanks for this excellent survey of techniques. i appreciate the amount of work that must have gone into preparing this. and on top of that you also made it quite slick looking!

looking over the code examples, i found a couple spots that look like typos, though.

in the clamp rejection code snippet, return max(radiance, maxRadiance);, should the max be min instead?
ray tracing gems section 17.3 gives the following example on clamping for fireflies, c' = min(c,t)

in several examples of filtering across some kernal in x and y, there's a check to skip the center pixel.
if (xx != 0 || yy != 0) { continue; }
which i read as "if x isn't zero, or y isn't zero, skip." but it seems like you only want to skip the opposite case, where both x and y are zero.

from alainxyz-comments.

flouroantimonic avatar flouroantimonic commented on June 8, 2024 1

Thanks Alain, currently writing a basic game engine with sparse voxel octrees...having all of this information in one place is absurdly helpful.

from alainxyz-comments.

redorav avatar redorav commented on June 8, 2024 1

Thanks Alain, excellent post. Just a quick typo correction, I found a line that says this, where it should say 7x7 Gaussian Kernel.

int radius = 3; // ⚪ 3x3 Gaussian Kernel

When I read further up that denoisers use a 3x3 kernel 5 times, it sounds like an affordable amount of work, especially if they can all be done within a single compute shader. However, does this typo imply that it is actually a 7x7 kernel, 5 times? If so it's a lot more expensive, so it's worth clarifying.

from alainxyz-comments.

TH3CHARLie avatar TH3CHARLie commented on June 8, 2024 1

Thanks for this great post! It's definitely gold for people who want to improve their naive path tracer's performance(YES THAT'S ME)

from alainxyz-comments.

alaingalvan avatar alaingalvan commented on June 8, 2024

Thanks @redorav, you're right, that example is a 7x7 kernel, I went ahead and updated that section to reflect this, thanks so much!

from alainxyz-comments.

kieroooo avatar kieroooo commented on June 8, 2024

Great post, thank you. Just a small issue, i think something got messed up in the HLSL code snippet:

float histlen = tHistoryLength, ipos, 0).r; <- something ate the .Load() there

from alainxyz-comments.

Related Issues (19)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.