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

Поділитися
Вставка
  • Опубліковано 18 тра 2024
  • 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
    @GabeRundlett Місяць тому +4

    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 Місяць тому +2

      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  28 днів тому

      @@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
    @tatyanasvet4645 Місяць тому +1

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

  • @evilwizardtherapist
    @evilwizardtherapist Місяць тому +1

    Yay Daniil! 🧙🏾‍♂️

  • @gostan2718
    @gostan2718 Місяць тому +1

    Very cool

  • @phineas9809
    @phineas9809 Місяць тому +1

    dope

  • @delphicdescant
    @delphicdescant Місяць тому +1

    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  28 днів тому +1

      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

  • @linovermac
    @linovermac 15 днів тому

    Please, source code github link ;)

  • @metalim
    @metalim Місяць тому

    boooooring. another static octree renderer

    • @Z_Z.t
      @Z_Z.t 29 днів тому

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

    • @danygankoff
      @danygankoff  28 днів тому

      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] ua-cam.com/video/1E_5YfIoM3I/v-deo.html
      [2] ua-cam.com/video/nYZfrOqnJd0/v-deo.html
      [3] ua-cam.com/video/xVeq__BfoB8/v-deo.html

    • @Z_Z.t
      @Z_Z.t 28 днів тому +1

      @@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.