Code Monkey home page Code Monkey logo

Comments (6)

tigrazone avatar tigrazone commented on May 18, 2024 1

Thank you for answers

from gpu-raytracer.

jan-van-bergen avatar jan-van-bergen commented on May 18, 2024

The QBVH (4-way tree) and CWBVH (8-way tree) are both constructed by first building a 2-way tree (using full SAH, no binning yet) and then collapsing it (also based on SAH).
The time it takes to collapse is negligable compared to the first building step.

On my laptop (with a Geforce 845m) the frame times for Sponza are as follows:

BVH Type Time
BVH 416 ms
SBVH 402 ms
QBVH 210 ms
CWBVH 92 ms

So each BVH is about twice as fast to traverse as the previous.

from gpu-raytracer.

tigrazone avatar tigrazone commented on May 18, 2024

Is your CWBVH build code is good without enable_bvh_optimization?
or for CWBVH building enable_bvh_optimization is needed?
optimization took too much time

from gpu-raytracer.

jan-van-bergen avatar jan-van-bergen commented on May 18, 2024

No BVH optimization is not strictly needed for good performance, but it can be used to squeeze out the last bit of performance at the cost of more preprocessing time.
I guess I should actually disable it by default to get faster startup time.

from gpu-raytracer.

tigrazone avatar tigrazone commented on May 18, 2024

One more question. Did CWBVH faster then sbvh in traversing?

from gpu-raytracer.

jan-van-bergen avatar jan-van-bergen commented on May 18, 2024

The SBVH is also a 2-way BVH, so the CWBVH is significantly faster.
I've updated my previous comment to include SBVH in the table, as you can see its only slightly faster than standard SAH BVH

from gpu-raytracer.

Related Issues (15)

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.