Shader Malloc (preview) | Voxels Weekend update #16

แชร์
ฝัง

ความคิดเห็น • 66

  • @dottedboxguy
    @dottedboxguy ปีที่แล้ว +27

    very nice ! i totally agree that a big video explaining how your compression works would be amazing, i’d love to see something like this !

  • @lemonke8132
    @lemonke8132 ปีที่แล้ว +4

    Gabe you're a frickin madman! I'm not as smart or ambitious as you, so I would never have been able to do this myself. The fact that you're sharing this with everyone is amazing. I just got my first SWE job - that means disposable income 😏please make a patreon so I can support your endeavors!

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว +2

      Thank you! Congrats on getting your job, that's super exciting. I would love to make a Patreon, I just struggle to find reasonable incentives to provide - considering everything I make, I like to share 😅. I appreciate the kind words man, so thanks again

    • @lemonke8132
      @lemonke8132 ปีที่แล้ว +2

      ​@@GabeRundlett I wanna support the free content for everyone! I know where you're coming from though.

  • @DouglasDwyer
    @DouglasDwyer ปีที่แล้ว +3

    Incredible! The brushes with constant-distance placement make for some very smooth-looking sculptures.
    Just like many other commenters, I would love to see the in-depth technical video. But I encourage you to prioritize engine development first - you've been making such great progress lately :)

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว

      I want to make it, I just struggle with finding the time. Thank you for the kind words Douglas, always a pleasure to see you here. I said this in another comment but I think I'm just going to need to put my head down and work hard on that video!

  • @UliTroyo
    @UliTroyo ปีที่แล้ว +1

    Awesome! I love how quick the painting is.

  • @station82
    @station82 ปีที่แล้ว +3

    It's fun to watch you play around in the end😊

  • @gugu5285
    @gugu5285 ปีที่แล้ว +1

    Very awe inspiring to see so many voxel projects being worked on all across the community, remembering back when the automontage stuff was the peak of what we thought was possible. Incredible work! I'm very excited to see what you end up doing with this amazing engine!

  • @TristanPopken
    @TristanPopken ปีที่แล้ว +2

    This looks really great! I never expected such a huge chunk of world to take in such a small amount of ram. Looking forward to that video!

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว +2

      Thank you!! I want it to be good, so I have been taking my time on it

  • @JoseRomagueraM
    @JoseRomagueraM ปีที่แล้ว +4

    Man thats amazing! I'd really like to see a technical video talking about this allocator, I can't imagine how its used and implemented. It really blows my mind

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว

      totally! I want to make it but I get super perfectionist about it. I'm just going to put my head down and make it good!

    • @JoseRomagueraM
      @JoseRomagueraM ปีที่แล้ว +1

      ​@@GabeRundlett That sounds great! That will make a lot of value for the community

  • @pietrusbauerus1819
    @pietrusbauerus1819 ปีที่แล้ว +2

    I love these voxels weekend updates. Keep it up! It's always exciting to see how the engine evolves and what the actual game (?) will look like.

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว +1

      Thanks for following along, I really appreciate it!

  • @jsierra88
    @jsierra88 ปีที่แล้ว +1

    That's amazing how you manage memory with your allocator. IMO you're on the right path. Keep it up! 👏

  • @lonkwuzhere4433
    @lonkwuzhere4433 ปีที่แล้ว

    Bro that song you had in the intro took me right back to 2010 lol. I haven't heard that in ages!

  • @theitatit
    @theitatit ปีที่แล้ว +2

    very cool! can't wait to see how far you can push this engine.

  • @michisarti4853
    @michisarti4853 ปีที่แล้ว +1

    nice music

  • @-Clickertale_2-
    @-Clickertale_2- ปีที่แล้ว +1

    It looks incredible! :D seeing the world size go upto 2048*2048*2048 is insane! :D Also I love your new profile picture! :D

  • @logicprojectsspeed2023
    @logicprojectsspeed2023 ปีที่แล้ว +1

    Amazing work! I love following this project! Keep it up!

  • @dampfwatze
    @dampfwatze ปีที่แล้ว +2

    5:00 Please do this! I wouldn't have a Problem if it is not absolutely perfect! But what I am really interested in is, how you actually lay out these data structures in linear memory, since it doesn't really lie in the nature of most data structures! And this is really important for caching!

  • @ElliotSterk
    @ElliotSterk ปีที่แล้ว +1

    This is so cool!

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว

      Thank you Elliot! I am excited to make a video going more in-depth with how this works

  • @snail-with-tea
    @snail-with-tea ปีที่แล้ว +7

    Awesome achievement! Is there a plan to use LoDs to expand the world even more?

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว +4

      Yes, that's the plan!

    • @JackTheOrangePumpkin
      @JackTheOrangePumpkin ปีที่แล้ว +1

      @@GabeRundlett I am really excited and looking forward to it :)

  • @NotAFoe
    @NotAFoe ปีที่แล้ว +2

    U are so very smart. LIKE WHHATTT. I cant even make a mesh out of voxels!

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว

      Thank you for following along and the kind words. I always love hearing your music when you post it in Discord 🥰

    • @NotAFoe
      @NotAFoe ปีที่แล้ว

      @@GabeRundlett 😄

  • @wdarkfenix
    @wdarkfenix ปีที่แล้ว +1

    I guess it would be relatively easy to generate just the chunks the player sees dropping the total ammount of chunks dramatically in exchange of figuring out which chunks to generate

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว +1

      This is somewhat true. I currently elect chunks for updating seemingly at random - there's a shader run for every chunk, which atomically fetches the first N chunks that need updating, adding them to a list to be updated later in the current frame, so there's no sorting of chunks. However, loading only the chunks which are visible would be super easy, since I just would not elect any chunks outside the view frustum to be edited.

    • @wdarkfenix
      @wdarkfenix ปีที่แล้ว +1

      @@GabeRundlett I say this because your chunks seemed very small, meaning that if you didn't calculate the inner chunks until the player can actually see them you could extend the visual range even further

  • @SoftYoda
    @SoftYoda 8 หลายเดือนก่อน

    Did you made the explanation video "3blue1brown like" of how you made the compression algorythm on gpu ?

    • @GabeRundlett
      @GabeRundlett  8 หลายเดือนก่อน

      I didn't... I did a lot of work for it but never finished it

  • @sourestcake
    @sourestcake ปีที่แล้ว

    Very cool stuff. I always have a special place in my heart for voxel engines. Are you limiting the memory use in any way? If i tried to load too much, would there be a crash or just empty void somewhere?

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว

      There's not really a limit to the size. The memory allocator theoretically supports 275GB of active VRAM! If you look closely at the "EST. VRAM" metric when loading the larger world, you'll notice it increases. This number is calculated by the size of the actual buffers and images that are on the GPU, and so the number changes because I actually recreate, copy and delete the old buffer to use a new, larger buffer!

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว

      For the future, though, I think I want to let the user define some heuristic with a setting like render distance that determines a cut-off for when further/LOD(soon TM) chunks get unloaded in order to maintain the memory target

    • @sourestcake
      @sourestcake ปีที่แล้ว

      @@GabeRundlett Depending on what kind of applications you intend this for, a priority system might be a good addition to that, as well. Think static-ish world with big landmarks that can be seen from everywhere and must not be unloaded. Although if you let the user define an arbitrarily complex heuristic, that would be up to the user.

  • @thecrispyacorn
    @thecrispyacorn ปีที่แล้ว +1

    Do you have a computer just for programming and discord?

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว

      in a sense, that's all I do 😆. But yeah this is my main PC, and I have other stuff like blender, steam, video editing software etc.

  • @BetaTester704
    @BetaTester704 ปีที่แล้ว +1

    wow

  • @kras_mazov
    @kras_mazov ปีที่แล้ว

    What about making some sort of LOD's? This would allow a very high draw distance, imagine seeing mountains on the horizon. I've never seen such a thing in a voxel game, but i think it makes sense - if it's more uniform, it takes less memory.

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว +1

      yes, that's the plan. I want to feel super immersed in the world

  • @future.unwrap
    @future.unwrap 7 หลายเดือนก่อน +1

    Do you explain the shader malloc at a high level anywhere?

    • @GabeRundlett
      @GabeRundlett  7 หลายเดือนก่อน

      No, not really

  • @ZeroRelevance
    @ZeroRelevance ปีที่แล้ว

    Watching the ending, I feel like this game would work really well in VR. Do you have any plans to add VR support in the future?

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว +1

      I haven't ever looked into what VR development is like, though I do have a VR headset and I love Half Life: Alyx. I might look into it!

  • @jawadch8723
    @jawadch8723 ปีที่แล้ว +1

    Will it run on integrated graohics?

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว +1

      I prefer to tailor my development towards high powered hardware, but I can confirm it does *run* on my AMD laptop's iGPU. It highly depends on the resolution, though. I currently get about 35fps on my laptop iGPU at 1080p. It jumps to 80-90fps at 720p

  • @logananderson3724
    @logananderson3724 ปีที่แล้ว

    About what amount of CPU juice is traded for this compression?

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว +2

      The data compression happens entirely on the GPU actually, and it's done in parallel. It happens live as the voxels are being edited and takes nearly nothing. I posted on twitter about this actually, when I finally got the compression working, but on my 3070 I can compress 18 billion voxels per second!

  • @benrex777productions9
    @benrex777productions9 ปีที่แล้ว +1

    I like the idea of a more indepth video. But I also know that those videos take quite a while. So if they make you loose motivation and discipline while making them then I prefer it if you just continue with working on the voxel engine or at least reduce the editing part to a minimum.

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว

      I am already mid-way through creating that in-depth video, with a bunch of cool animations and a much higher production value than normal. I've been sharing my progress about it on my Discord!

    • @benrex777productions9
      @benrex777productions9 ปีที่แล้ว +1

      @@GabeRundlett It's good to hear that you don't loose motivation doing that video. :D

  • @AlienXtream1
    @AlienXtream1 ปีที่แล้ว +1

    perhaps, instead of going for a 3B1B style with animations and diagrams just do a "normal" video thats a bit more scripted with a few static diagrams for visual aid. ala power point presentation but with a touch more polish. alternatively, you might be able to get into contact with 3B1B and see if they'd be able/willing to colab, or at very least have some pointers for you. this sort of thing is technically not their typical content but in an ideal senario they could do a video on the mathematics of compression and you could do a counterpart video on how its done on GPU vs CPU. the most important thing to remember though is not to set your aim too high. remember that K.I.S.S acronym. Keep It Simple Stupid. start with a script. record the script. create some visual aids to represent some of the "complicated" concepts. fade to them in editor as needed. dont over complicate things with fancy animated diagrams or anything. just cobble something together as an initial experiment and see how it goes. remember 3B1B have been doing their videos and animations for years. you're not going to catch up over night. ;)

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว

      Thank you so much for the detailed response, I really appreciate it, and I totally agree. I totally should try to get in contact with 3b1b, I think that would be so cool if he could give me some pointers. I have written a rough outline of the video, with what topics I want to cover, but yeah I'm way too ambitious with what I want from it and get too perfectionist. I literally have to force myself to keep these videos as simple as they are, since otherwise I start focusing on all the minute details and never finish 😔.

  • @linksword7110
    @linksword7110 ปีที่แล้ว +2

    new update

  • @exa211
    @exa211 ปีที่แล้ว +1

    Im shocked by how big you brain is

    • @GabeRundlett
      @GabeRundlett  ปีที่แล้ว +1

      Haha thanks for watching!

  • @Gravy_Guzzler
    @Gravy_Guzzler ปีที่แล้ว

    cool