What has changed in my Voxel Engine? | Voxels Weekend update #18

2024 ж. 24 Ақп.
11 051 Рет қаралды

In this video, I discuss why I haven't posted in so long. I really struggle to find the motivation to create videos, as my main passion is definitely coding.
The Public Codebase:
github.com/GabeRundlett/gvox_...
If you want to chat with other community members and me, join my Discord! (The installers can also be found here, in the releases channel)
/ discord
My website:
www.gaberundlett.com
Yes, this thumbnail was voxelized and rendered with my voxel engine!
GPU: RTX 3070 (8GB VRAM)
CPU: AMD Ryzen 7 5800x (8 core/16 thread)
RAM: 16GB 2667 MHz DDR4

Пікірлер
  • Feel free to slow down and take your time! We'll still be here!

    @paigemariecody@paigemariecody2 ай бұрын
    • Thanks Paige, it means a lot!

      @GabeRundlett@GabeRundlett2 ай бұрын
  • Nice down-to-earth video, Gabe! Your work continues to push voxel tech forward :)

    @DouglasDwyer@DouglasDwyer2 ай бұрын
    • Ohhh, ohh! It's the other voxel guy!!

      @th3rd965@th3rd9652 ай бұрын
  • Bro just dropped a whole catalogue of content and I'm here for it all!!! Keep up your incredible work!

    @christophermorley6615@christophermorley66152 ай бұрын
    • Thanks Christopher! All these videos were previously unlisted, as I really didn't want them to clutter up my uploads section, but I really needed to make them public to (in a sense) rip the bandaid off and open my mind up to posting more, potentially lower-effort videos just to make y'all aware that I'm not dead or something. The project has been advancing nicely but like I said in the video I just haven't had much motivation to create content. One of the main reasons for this is that I always feel like I need to make the content better than it was before, and this makes me really focus on so many details that are really unnecessary, ultimately blocking me from making any content at all. Recently, whenever I've posted, it's because I really had to push against the glaring imperfections in them while editing, to make sure I actually finish.

      @GabeRundlett@GabeRundlett2 ай бұрын
    • @GabeRundlett hey man it's brilliant to hear you're working your way through it at your own pace. This is your project and we are here to support you through all your ups and downs. Also, if I may, where did you get the initial inspiration to create your own voxel engine? Also would you have any tips or pointers to help people get into the mindset to start posting dev logs of their own? My project is at the point where it's functional but I could use an audience to get some proper feedback and idk how to go about it.

      @christophermorley6615@christophermorley66152 ай бұрын
    • @@christophermorley6615 I am not sure where the inspiration comes from, but I did really like Minecraft back in the day. The only advice I can give about posting content is to just let it come naturally. When you are posting, know that it doesn't need to be perfect, cuz like I said, that's definitely what hinders me the most. I've always had some interest in art and making videos is kind-of like a creative outlet that I just felt inspired to do. (actually making thumbnails is my favorite part). On top of that, I've always been interested in explaining things, kind-of like teaching, though I am not sure I'm too good at it. If you want feedback immediately, there are many different places around the internet that are great for that. For example, the graphics programming discord is really popular, Voxel Game Dev is a great reddit (and they have a discord too), and I also have a discord which has regularly active members and we all chat about what's on our minds lately.

      @GabeRundlett@GabeRundlett2 ай бұрын
    • ​@@GabeRundlettmaybe you could make a secondary side channel, to post the content you have doubts about there :).

      @DeltaNovum@DeltaNovum2 ай бұрын
  • DUDE I was "oh wow, that very cool, he actually did some atmosphere stuff and all" AND THEN YOU TAKE THE CAMERA TO SPACE The engine is going incredible, I like it a lot, cheers!

    @Jonaleko@JonalekoАй бұрын
  • Life is long! No need to rush to the finish line with things. Just enjoy your journey with this project!

    @AlexZillion@AlexZillion12 күн бұрын
  • That is some very impressive lighting! Especially the outside looks really nice, since the noise-artifact look a lot like fire's natural flickering.

    @jkr9594@jkr95942 ай бұрын
  • Really impressive progress, realtime GI is no small feat haha. It's great to hear from you again!

    @frozein@frozein2 ай бұрын
  • "i don't really have a life" ouchies xd well, i sure hope you just don't overwork yourself and are happy and care about yourself, if that's the case then it's amazing ! take care, and great work on the voxel engine !!!

    @dottedboxguy@dottedboxguy2 ай бұрын
    • Thank you dottedboxguy! I really wasn't taking care of myself while I was posting regularly. I have since lost a lot of weight as I'm eating healthier, exercising more, and actually sleeping. So overall these days I'm much happier.

      @GabeRundlett@GabeRundlett2 ай бұрын
    • @@GabeRundlettthat's amazing to hear, i hope you can keep your life this way going forwards, burning yourself out sure doesn't sound like fun, and it's not like we lack content anyways, being in your discord gives (at least for me) more than enough content to keep my need of voxel copium gaz low

      @dottedboxguy@dottedboxguy2 ай бұрын
    • quick tip for "getting a bit of life" -> if you have some kind of shop selling board games you can ask if they host some D&D games for newbies and join some random group. It can be stressful at first but it's a good first step!

      @badumtsy@badumtsy2 ай бұрын
  • good to see you're back! great work on the gi and I'm also in love with that sky rendering model!

    @xima1@xima12 ай бұрын
  • Thank you for all you offer to us voxel enthusiasts. Just a little feedback once in a while is appreciated. Don't push yourself too much and again, thank you.

    @jsierra88@jsierra882 ай бұрын
  • totally feel you on finding time for your projects. sometimes ill go a week without touching the pile of wires and microcontrollers on my desk. keep up the grind!

    @BagelmanSupreme@BagelmanSupreme2 ай бұрын
  • This is amazing Gabe ! Please don't feel obligated to post high quality content if it's burning you out mate !! I'm much more happy knowing that you take care of yourself 😁

    @valet_noir@valet_noir2 ай бұрын
  • I never knew this was possible, but per-voxel normals seem to be the best way to light voxels. For most of my life I was never really a fan of voxel art styles because the harsh shading of each side of the voxels just looked very wrong. It was only when I’d heard of Voxel Doom and saw how good voxels look without shading that I came realize that awkward shading was ruining the shapes voxels are meant to imply like pixel art. Using normals to shade the voxels wholesale feels like the perfect balance between having dynamic lighting without having to ruining the illusion of the shapes that voxels are meant to imply.

    @johnclark926@johnclark92628 күн бұрын
  • "I don't really have a life , all I do is code" - Subscribed because of this. love your work

    @jx4172@jx417222 күн бұрын
  • Hey there!, Good job with the GI. I like how normals look here!. Btw take care! 👍

    @_rey@_rey2 ай бұрын
  • So I’m not the only one who struggles to balance the bare essentials of life: eating, sleeping, and programming lol

    @AndrewBrownK@AndrewBrownK28 күн бұрын
  • Very neat progress. The falloff of precision is an unfortunate side effect of the float type, hard to deal with. You may need to consider using a region system of chunks to help 'reset' the precision every however many chunks. I had to do that with a microtile 2D world I made a few years ago.

    @bluebukkitdev8069@bluebukkitdev8069Ай бұрын
  • Hey man, hello from Ukraine. Finally I found someone who did everything as i wanted. I mean you have planet-shaped world, you use voxels, you shade them per-voxel as opposed to per-face. And the most crucial part is that you're doing proper GI instead of that shitty AO, which is everywhere and i hate it so much because everyone seem found it acceptable quality. For me, better it'll be noisy true shadows, rather than that cheap fake patina-effect, produced by AO. Noise is something we can address and work against further. So, keep on working, man, and eventually throw occasional updates for us to assess. And don't overestimate the importance of updates, feel free to make them whenever you want and however you want. This would relieve the pressure of misleading sense of being obliged to account. Surprisingly, this will help you to make those updates even more often, merely because of your proper attitude on this.

    @The14Some1@The14Some12 ай бұрын
  • actually, the harsh boundaries between the voxel normals look cool imo. This gives it this nice, stylized look.

    @badumtsy@badumtsy2 ай бұрын
    • I also like a stylized look in a sense, but I want the freedom of more info per voxel. Either way, I'm restructuring the voxel code completely because I need more than just 32-bits per voxel, which is what I'm limited to right now.

      @GabeRundlett@GabeRundlett2 ай бұрын
  • 7:08 that hits me. Happy to see this project going forward ;)

    @JoseRomagueraM@JoseRomagueraM2 ай бұрын
  • 4:25 can't wait to see no man's sky type game(s) made with this engine

    @ChipboardDev@ChipboardDev2 ай бұрын
  • your lighting engine is cool!

    @Dorsidwarf@DorsidwarfАй бұрын
  • I've always disliked auto-exposure. Our eyes do that already, i don't need to be eye-strained by that thing. Thank your for the amazing things you develop.

    @Splarkszter@SplarkszterАй бұрын
    • The main purpose of auto-exposure in apps these days is helping with the limited dynamic range of most displays. The sRGB color-space is 8-bit per channel, which is only 256 different levels of brightness. Essentially, this is 8 stops of dynamic range. This is a log scale, and typical DSLR cameras have about 12 to 14 stops. That's an added 16 to 64x more possible light values. the eyes have about 20 stops! That's why it's so easy to get blown-out photos even with good cameras, compared to the human eye. HDR helps a lot... but not everyone has an HDR display! The other helpful thing is tonemapping, which I use aGx, which is widely regarded as the best color transform at the moment (it's also now the Blender default as of Blender 4.0)

      @GabeRundlett@GabeRundlettАй бұрын
  • You seem like a decent guy. Also reasonably entertaining. Subbed.

    @kapoink835@kapoink83527 күн бұрын
    • I try my best. Thanks Kapoink!

      @GabeRundlett@GabeRundlett27 күн бұрын
  • You have an engine with very good potential and wayyy to underrated, keep up the good work!

    @Agenttomate1@Agenttomate1Ай бұрын
  • "I dont have a life, all i do is code" - Gabe Rundlett 2024

    @sjoerdev@sjoerdev2 ай бұрын
  • Just commenting to ensure youtube I want to see more of this guy since he's great,love this content it looks amazing

    @glichking6812@glichking68122 ай бұрын
  • That's a really cool project I can see great prospects for. I think that any realtime global illumination is a truly game-changing addition, and it's very doable in a voxel world, as efficient radiance caching schemes can be implemented. It's awesome that you can move into outer space right from the game world and still see the voxel terrain (although it seems to be generated in a wrong position). I suppose you have a separate renderer for the planet surface and the outer space view, do you? Does the sky contribute to global illumination through a HDRI environment map, or your lighting works directly with the physical atmosphere?

    @punpcklbw@punpcklbw2 ай бұрын
    • A diffuse irradiance cubemap is generated based on what the player currently sees as the sky, which feeds directly into the GI solution. This is fine for small scales, like what we can currently see in the engine. If I were to make it such that the voxels that are a part of the planet were still visible as the player goes to space, the voxels would be lit as if they were also in space. A solution to this is to have cached sky IBL probes, maybe every kilometer or so, and interpolate between them

      @GabeRundlett@GabeRundlett2 ай бұрын
  • the greatest youtuber of all time finally makes his return

    @yourdoledippersmadam6494@yourdoledippersmadam6494Ай бұрын
  • good luck bro

    @CoalBones@CoalBones2 ай бұрын
  • Once I had a family to take care of, coding got tough to do for fun. I can happily get 0.5-1h a day if I'm lucky, and I enjoy the timr I get. But yeah, priorities are priorities! Do what's important to you!

    @nathanfranck5822@nathanfranck58222 ай бұрын
  • Bro came back from Valhalla 💀

    @Noizzed@NoizzedАй бұрын
  • I actually love the 8 bit normals.

    @AbramDemski@AbramDemskiАй бұрын
  • you may wanna adjust your export settings for audio. it's a bit quiet. if you right click the video player above and click "Stats for Nerds" you'll see that, by volume/normalized, it is -8.3dB below youtube's standard volume. so, with the same volume setting, this video is WAY quieter than other videos on the platform. ideally, you want that dB to be 0

    @DrJigglebones@DrJigglebones2 ай бұрын
    • Thank you for the advice! I can never tell what a good setting is. And I really don't know much about audio in general 😅

      @GabeRundlett@GabeRundlett2 ай бұрын
  • You could also dither the normal vectors per voxel. When calculating normals if they end up inbetween then pick one baces of an alogrium. there are a few different allgoriums out there for it. This might get expensive, but then you could blur them latter on to get a gradient. Or not I think that it would look cool dithered. I may or may not be doing this for my engine.

    @capslpop@capslpopАй бұрын
    • I did this already, as someone else suggested it too! kzhead.info/sun/p72pnLKFq2uEpZ8/bejne.htmlsi=LLWKXfz4iqJhVk1W

      @GabeRundlett@GabeRundlettАй бұрын
    • Cool I did not see that one! Looks amazing!

      @capslpop@capslpopАй бұрын
  • Awesome stuff.

    @OneMonthStudio@OneMonthStudio2 ай бұрын
  • this is awesome

    @wyndmill@wyndmill29 күн бұрын
  • 7:20 he just like me fr 😭😭😭

    @lanata64@lanata6427 күн бұрын
  • Nice! Could the voxel world be wrapped around a torus or something to make it "spherical" within the atmosphere volume?

    @alan83251@alan832512 ай бұрын
    • yeah there's a ton of things that could be done, I'm not really interested in solving this problem at the moment as I have more pressing issues to address, like the world generation speed and render distance!

      @GabeRundlett@GabeRundlett2 ай бұрын
  • ❤❤❤❤❤

    @nellfs@nellfs2 ай бұрын
  • Ooh, this look nice

    @DracoKitsu@DracoKitsuАй бұрын
  • someone has been busy... also can you show how you did your atmospheric scattering

    @10bokaj@10bokaj2 ай бұрын
    • Great question. I meant to say, as really all these features deserve their own full explanations. The sky was designed by a friend of mine, Matej Sakmary for his Bachelors thesis. His implementation can be found on his github here: github.com/MatejSakmary/atmosphere-bac

      @GabeRundlett@GabeRundlett2 ай бұрын
  • when i have the money ill come find you and you will be my personal tutor. this isn’t optional.

    @motosuga@motosuga27 күн бұрын
    • lmfao

      @GabeRundlett@GabeRundlett27 күн бұрын
  • Wow glad KZhead randomly recommended this. It looks like you've made your own engine completely? Is this eventually going to be a game? And if so, what kind of game? It looks absolutely incredible and you seem to be a great coder! I'll be subbing and checking out your other content when I have the energy 👍. Do you think that if you wanted to, that this could be (easily) injected into other game engines? And would you eventually even be willing to sell or share it? This is the best looking voxel engine for the kind of game I've started working on. I might not get to a finished product, but since I'm handicapped and have a lot of time on my hands I want to try and make my own version of a open world fantasy sim. I became inspired by Daggerfall and have quite a few ideas to make it much more fun and viable to make as a single person. Like using simple and pixelated graphics and procedural generation as much as possible. If I ever get far enough at creating the gameplay mechanics I'd love to make it open to a community and work on it together. I'm not looking for profit or even clout. I just want to create something that I'd love to play myself and that might be enjoyed by others. I completely understand if you want to keep this wonderful tech to yourself, and I'm not even sure if I was able to use it anyway. Since I don't know Rust and am barely proficienct with C++. I felt like I had to try and ask anyway. I'll still follow your process and enjoy it from the sideline. Great work and I hope you keep finding the time and motivation to keep working on it 😊.

    @DeltaNovum@DeltaNovum2 ай бұрын
    • I want to make a game in a sense. I recently have been taking a liking to the idea of an art program that's more immersive in a game way. I also will say, the engine is completely open source and available on my GitHub. It's linked in the description of all my full-length commentary videos! The codebase is very undocumented and I don't expect it to be much use to anyone for a long while, but maybe it could be of use. FYI the codebase is pretty much entirely GLSL and C++, and thanks for your support!

      @GabeRundlett@GabeRundlett2 ай бұрын
    • @@GabeRundlett marvelous ^^!! And very generous of you. About having no documentation I guess that just means I that if I'm ever able to use it I'd be worthy of actually using it :D. I've watched plenty of voxel engine videos and from the little peaks I took, yours looks to be the most incredible and visually appealing to me. Both voxels and procedural generation really pulls me as a subject, but it always felt so incredibly daunting, whenever I got into the specifics of it. It's very apparent that you have a rare combination of math/coding skills, creativity and vision. So very much looking forward to be checking out your long form vids and watching your journey unfold. Keep being you and good luck ✌️. P.s. I hope that some of your (future) videos will explain what you mean exactly by "art program".

      @DeltaNovum@DeltaNovum2 ай бұрын
    • @@DeltaNovum Yeah I would like to figure out what I mean by it too 😅 I haven't really figured it out. I really like the idea of using SDFs to create shapes (this is known as CSG or Constructive Solid Geometry) and tools to modify the world. I have a few videos where I show off this idea, but I want the ability to create your own such tools (which I call "brushes") with even a GUI similar to blender's shader nodes. If you've ever seen any of the older videos from a creator called John Lin, he actually had editing tools in his engine that allowed him to manually create all the worlds that he shows off.

      @GabeRundlett@GabeRundlett2 ай бұрын
    • @@GabeRundlett I might have. I'll look it up tomorrow. I do get what you mean I think. I know too little about it to know how hard it would be to implement, but are you thinking of adding different geometric shapes as brushes? And would it be possible to combine 2 different types of voxels or would that break your rendering engine? Thinking that cubes would make building certain stuff easier perhaps. The mansion I saw in one of your clips looks wonderful btw. If I'm to ever use your or any voxels engine inside of my rpg sim, it would probably only be used for the procedural generation of the ground and rocks itself. And I would have players use tools to "carve" out parts of the world. Using hands or a shovel to pick up and move dirt or very slowly bit by bit be able to destroy rock and minerals with a pickaxe. So it would be possible, just take a very long time. Not only so it would be hard to easily screw up the world, but also to keep things and progress very valuable. Instead of something like Diablo, where most items are of no value, every single piece of armor or weapon should feel incredibly valuable and getting or making them should feel like an accomplishment. P.s. Have you looked at the mesh shaders that newer gpu cards use? Not sure if that what makes Unreals Nanite possible, but Alan Wake 2 uses it to push out incredible amounts of vertices.

      @DeltaNovum@DeltaNovum2 ай бұрын
    • @@DeltaNovumfyi, his engine is entirely raytraced ( raymarched actually but it doesn't really matter ) with no triangles to be seen anywhere appart from the particles. also, if you want to start building up a voxel based project of your own, gabe is working on a sorta magic voxel library that does everything for you from file importing in any format you like to memory management, it is gvox oh and the mansion isn't his, it's a default model provided with magicavoxel

      @dottedboxguy@dottedboxguyАй бұрын
  • I started learning about CG recently, and your project blew me away! I am curius to see how will it look if you manage to implement some sort of dithering for normals instead of increasing their size to 16 bits. What do you think?

    @TheSenPie@TheSenPie2 ай бұрын
    • I really like that idea actually. I will see if I can implement it real quick and make a showcase video of it

      @GabeRundlett@GabeRundlett2 ай бұрын
    • Just tried this out. I think I like it! kzhead.info/sun/p72pnLKFq2uEpZ8/bejne.html

      @GabeRundlett@GabeRundlett2 ай бұрын
    • @@GabeRundlett Yey for dithering! Looks very nice. It was so fast too. It would take me ages to implement it myself, haha.

      @TheSenPie@TheSenPieАй бұрын
  • You look like Eomer from LOTR !

    @briact3691@briact369126 күн бұрын
  • Pretty cool

    @logananderson3724@logananderson37242 ай бұрын
  • The setbling music. What the fuck is the internet right now.

    @SpaceHobo42@SpaceHobo42Ай бұрын
  • Will you implement anyyhing like distant horizon?

    @guisampaio2008@guisampaio2008Ай бұрын
    • Yes, there will be a much greater view distance

      @GabeRundlett@GabeRundlettАй бұрын
  • Are you working this solo? You should really open up a company for this engine.

    @yiboliang8338@yiboliang83382 ай бұрын
    • I am working on it mostly solo. There have been contributions by others however, as the project is completely open source! I wish I could work on it full-time...

      @GabeRundlett@GabeRundlett2 ай бұрын
  • In reference to 7:08 Find balance: Writing code until you pass out is bad code - get some sleep. You'll be more productive with a good night's rest anyways. What you eat goes straight to your brain. If you eat junk, you're gonna feel like junk, too. Occasional breaks are good, and you can spend it by cooking a nice meal. Prioritize: Your channel is about your engine - the engine should come first. Implement the features you want to implement, and if you think they are worth showcasing then showcase them in a video. We're all here to watch what the creative part of your brain comes up with - don't think that you have to hand over the reigns to that other part that wants to impose some rigid video routine on you. The minute long showcase videos are brilliant, glad you unlisted them.

    @Mikjaash@Mikjaash2 ай бұрын
    • Thanks Mikjaash. I totally agree regarding the sleep and junk food thing. I'm so much happier and productive now! Thank you for the advice, I appreciate it

      @GabeRundlett@GabeRundlett2 ай бұрын
    • Awesome work! Looking forward to seeing where this project goes in the future 👍

      @ecla141@ecla1412 ай бұрын
  • Why not just implement nvidia VXGI?

    @ModernAtomX@ModernAtomX2 ай бұрын
    • it's bad

      @GabeRundlett@GabeRundlett2 ай бұрын
  • you still sound like you know some dangerous stuff and don't want to snitch accidentally and cause your family to get kidnapped by Russians

    @user-zc5jz6bh2r@user-zc5jz6bh2rАй бұрын
    • I swear, I am just a really anxious person while recording! 😭

      @GabeRundlett@GabeRundlettАй бұрын
  • Voxels feel lifeless without textures up close :(

    @error200http@error200http2 ай бұрын
    • nawwwww textures look ugly

      @GabeRundlett@GabeRundlett2 ай бұрын
  • i hate voxel,it would be great if you don't make voxel engine.

    @lanchanoinguyen2914@lanchanoinguyen291427 күн бұрын
    • Happy April Fools!

      @GabeRundlett@GabeRundlett27 күн бұрын
    • @@GabeRundlett no,i didn't say lies.Remember,today is the day lucifer came to hell,not fool day.

      @lanchanoinguyen2914@lanchanoinguyen291427 күн бұрын
    • oh okay, cool! here's some nice calming waves for you to relax to: kzhead.info/sun/iZGYf5umo2J_nGg/bejne.htmlsi=i1kryEmC9EbS5Z89&t=13

      @GabeRundlett@GabeRundlett27 күн бұрын
KZhead