Progressive CPU-GPU Ray Tracer | Wonderland: A Ray Tracing Voxel Engine | Devlog

Ойындар

This is a showcase of my new progressive CPU-GPU ray tracer implementation I'm working on for my voxel engine Wonderland. I try to solve the problem that GPU has no enough memory to store large voxel scenes by uploading the needed scene information from CPU progressively by a ray traversal path

Пікірлер: 15

  • @GabeRundlett
    @GabeRundlett26 күн бұрын

    Hey Daniil, glad to see you post again! I wish you explained more what a progressive ray traversal algorithm is, as its something even I personally am not familiar with, and I think people would be interested to know!! Edit - the explanation part didn't make a lot of sense to me, it sounded just like it was addressing the issue of streaming voxel data. Maybe I am missing something

  • @delphicdescant

    @delphicdescant

    25 күн бұрын

    Maybe it makes sense to separate the idea of "streaming," which deals with the CPU->GPU flow of data, from the thing that determines what data needs to be streamed next. This determination of what is needed next might be what Daniil is calling a "progressive" approach, referring to the last-frame dependency each new frame has. Just my guess.

  • @danygankoff

    @danygankoff

    23 күн бұрын

    @@delphicdescant, thanks for your clarification. You are right. In this video I do not accent on voxel streaming but on the data to select for the next frame. @GabeRundlett, nice to meet you on my videos. Again, really love your work. I will try to explain more the details in the next video. In this one, I do not focus on the explanation but only brief what I'm working on.

  • @tatyanasvet4645
    @tatyanasvet464526 күн бұрын

    Какая красота !!! Как будто погружаешься в мировой океан , сколько труда в этой работе!

  • @evilwizardtherapist
    @evilwizardtherapist26 күн бұрын

    Yay Daniil! 🧙🏾‍♂️

  • @gostan2718
    @gostan271826 күн бұрын

    Very cool

  • @delphicdescant
    @delphicdescant25 күн бұрын

    If you're using a ring buffer, are you somehow ensuring only the Least-Recently-Used voxel data falls off the end and gets discarded? Or does voxel data that you still need for the next frame just fall off the end of the buffer and get re-acquired immediately again afterward?

  • @danygankoff

    @danygankoff

    23 күн бұрын

    You are right with your idea. I want to implement LRU (like as @voxelbee described), but I'm in search for optimal measure or criterion (sorry for my English) to select (and do it fast) from voxels I have. In this video it's not done. For now, I only delete nodes on down-top merging and this could cause overflow

  • @phineas9809
    @phineas980925 күн бұрын

    dope

  • @linovermac
    @linovermac9 күн бұрын

    Please, source code github link ;)

  • @metalim
    @metalim25 күн бұрын

    boooooring. another static octree renderer

  • @Z_Z.t

    @Z_Z.t

    24 күн бұрын

    you mean, final model isnt animated like in john lin's sandbox?

  • @danygankoff

    @danygankoff

    23 күн бұрын

    The main goal of this project is to create a feeling of nature. Firstly, as I think, it should be spacious. I've tried another solutions [1-3] to make the scene dynamic, but these ones do not deal with huge scenes. Now I'm focusing on the scene size. Maybe there's a golden mean with use of dynamic particles or so over the static scene, but for now I have no answer [1] kzread.info/dash/bejne/Y3mTl7ufedKzY6w.html [2] kzread.info/dash/bejne/oI2OyNSIodGwlJM.html [3] kzread.info/dash/bejne/qoqZ08GYcsnVcps.html

  • @Z_Z.t

    @Z_Z.t

    23 күн бұрын

    @@danygankoff i know that in john lin's sandbox animated voxels are acutally just rasterized polygons within voxel volume, so its kinda stupid (for those who says static voxel rederers are boring) to expect that the entire volumetric canvas could be updated in realtime.

Келесі