Adding SNOW and MODEL IMPORTS [Voxel Devlog #10]

Sdílet
Vložit
  • čas přidán 25. 07. 2024
  • Online demo: github.com/DouglasDwyer/octo-...
    Geese event system: github.com/DouglasDwyer/geese
    In this video, I demonstrate the typical development process for my voxel engine, and showcase the many improvements and new features! Specifically, I added interactive snow, voxel model imports, a titlescreen, cascaded shadows, a settings menu, and many bugfixes this month.
    The voxel model imports would not have been possible without the remarkable work of ‪@GabeRundlett‬, who I'd like to take a moment to thank again here. His library, gvox, is a wonderful tool - and I hope to continue collaborating with him in the future!
    Music used in the video:
    Chris Doerksen - Playing House
    Chris Doerksen - Murder Mystery
    Chris Doerksen - Next in Line
    Chris Doerksen - Adventures in Basstime
  • Hry

Komentáře • 53

  • @dottedboxguy
    @dottedboxguy Před rokem +30

    it's very nice to see that voxel engine devs are teaming up in order to build greater things !

  • @quantumdeveloper2733
    @quantumdeveloper2733 Před rokem +25

    The snow looks really good.
    To prevent the client snow from suddenly disappearing when it hits the ground you could keep the client snow on the ground for a short period, slowly melting it (basically transitioning the color to the ground color while making it disappear into the ground).

  • @TheDroidsb
    @TheDroidsb Před rokem +12

    Also I’d love to see a video Timelapse of snow accumulating

  • @clonkex
    @clonkex Před rokem +1

    CZcams why did you stop recommending me these amazing videos!!
    Dang, this engine is going to be an absolutely perfect resume if you ever want a job in the games industry. I have some very old voxel projects and other small, unfinished things, but I've screwed myself a little by never really finishing anything. Hopefully my current project can fill that requirement even if it doesn't succeed as its own game.

  • @Teflora
    @Teflora Před rokem +6

    awesome progress!
    An idea for the snow: if it's deterministic where the snow lands, you could have the client side particles stay on the ground and wait until the next server update to make them more seamless fit into the world!
    Excited to see the next update

    • @hikerwolfspaine8200
      @hikerwolfspaine8200 Před rokem +1

      I thought the same thing. If you just have a shared seed then you can figure out where snow needs to fall client side.

  • @ttj_
    @ttj_ Před rokem

    another great video douglas. great job so far! and your videos are incredibly well edited and your sound is perfect!

  • @TheDroidsb
    @TheDroidsb Před rokem +2

    Heck yea new Douglas video. This series has me so excited 😂

  • @divinehazrd
    @divinehazrd Před rokem

    Very impressive work Doug!

  • @UnofficialFoneE
    @UnofficialFoneE Před rokem

    Amazing progress! Teamwork makes the dreamwork. :)

  • @dominikamann1872
    @dominikamann1872 Před rokem

    That is almost exactly what I need for my own game. Greate work!

  • @nellfs
    @nellfs Před rokem

    Very cool Douglas, good work!

  • @thomasmcbride2287
    @thomasmcbride2287 Před rokem

    Excellent video!

  • @netcore10
    @netcore10 Před rokem

    WOOO Let's go Douglas! You got this. Nice work!

  • @sjoerdev
    @sjoerdev Před rokem

    you guys are amazing!

  • @grevel1376
    @grevel1376 Před rokem

    Incredible, you inspired me to learn wgpu. I started working on my first project. It's about procedural mesh generator with some ui controls. I plan to implement fractal terrain and hydraulic erosion.

    • @DouglasDwyer
      @DouglasDwyer  Před rokem +2

      That sounds fantastic! If you ever complete your project, feel free to post a CZcams video of it - I would love to see it :)

  • @williamist
    @williamist Před rokem

    very nice!

  • @spidertyler
    @spidertyler Před rokem +1

    I might try learning some rust so I can bodge in a "gun". I want to create little tiny bullet holes in those 16x models

    • @DouglasDwyer
      @DouglasDwyer  Před rokem

      When the engine is more mature, I want to support a fully-fledged modding system to allow people to add whatever custom content that they'd like!

    • @spidertyler
      @spidertyler Před rokem

      @@DouglasDwyer sounds awesome cant wait! I may try to make mods once that support comes out. I've already got my own big project rn lol so i gotta see how much time i have once modding support is added to your engine.
      Also, i love your videos and engine. Have a great day!

  • @Gwilo
    @Gwilo Před rokem +1

    damn good intro

  • @allesbanane2329
    @allesbanane2329 Před rokem +1

    Great work :)
    I got a question for you: are you using OpenGL or Vulkan for rendering? and if u are using Vulkan are you using "Ash" or "Vulkano" or some other crate?

    • @DouglasDwyer
      @DouglasDwyer  Před rokem

      As my voxel engine targets both native and browsers, I am forced to use OpenGL. I use the glow crate for OpenGL bindings, since it's WASM compatible. I would love to use a more modern API, and all of the features included - but when supporting the web, you take what you can get :)

  • @lunatikreal1384
    @lunatikreal1384 Před rokem

    Great job, it's getting more interesting than minecraft. Physics is generally cool.

  • @gaborkrisko
    @gaborkrisko Před rokem +2

    It would be nice to have the framerate displayed in FPS as well

  • @OwenWithAHammer
    @OwenWithAHammer Před rokem +1

    Does your engine compress redundant voxels/polys? So, if a large flat white object where made, you could represent that with thousands of polys/cubes, or compress it into one voxel and two triangles.

    • @DouglasDwyer
      @DouglasDwyer  Před rokem +1

      There are two answers to this question, regarding voxel compression and polygon compression. My engine internally stores the voxels themselves, and converts them to triangles only for rendering.
      In both cases, there are forms of compression utilized! When storing voxels, I employ a data structure called a sparse voxel octree, which allows me to process voxel data in large, homogenous chunks. When drawing voxels, I use a greedy meshing algorithm which merges adjacent faces, reducing triangle count.

  • @kras_mazov
    @kras_mazov Před rokem

    Will there be colored light sources? Lighting can make a huge difference when using simplistic graphics.

    • @DouglasDwyer
      @DouglasDwyer  Před rokem +2

      Yes, when I get back to doing more graphics-related tasks, I would absolutely love to add point lights supporting arbitrary colors!

  • @bytesandbikes
    @bytesandbikes Před rokem +1

    Really great looking! 😊
    Could the model import use a pixel art style scaler? Might show off the smaller voxels nicelyc

    • @DouglasDwyer
      @DouglasDwyer  Před rokem

      I'm glad to hear that you like it! Could you point me to an example of a pixel art-style scaler? I confess I'm not quite sure what you mean.

    • @dxred2553
      @dxred2553 Před rokem +2

      @@DouglasDwyer They could be talking about scalers designed for pixel art upscaling like hqnx, Wikipedia has a pretty good list (Pixel-art scaling algorithms)

    • @GabeRundlett
      @GabeRundlett Před rokem +3

      @@dxred2553 I had never heard of hqx before. That looks awesome, and I might actually try to implement it at some point

    • @bytesandbikes
      @bytesandbikes Před rokem +1

      Exactly that, @DxRed. en.m.wikipedia.org/wiki/Pixel-art_scaling_algorithms has a really good overview. Most of these are grid based methods that could be done as-is to each dimension in turn. Could probably be generalised to 3D, but I don't know of anyone who's done that.

    • @DouglasDwyer
      @DouglasDwyer  Před rokem

      The engine is in its very early stages right now, so it will be some time before I have a fully playable game. But I encourage you to follow along as I release more devlogs - I've made immense progress already! In the end, I want to create an online platform where users can build, destroy, interact, and create their own mods/plugins :)

  • @linksword7110
    @linksword7110 Před rokem +2

    what is the biggest world size possible with your engine?

    • @DouglasDwyer
      @DouglasDwyer  Před rokem

      I use 32-bit integers as coordinates where a single voxel is equal to 2^8 = 256 units. As such, that means the world at a maximum can be 2^32/2^8 = 16 million voxels across in each direction. I've designed things so that the world should wrap around when you reach an edge.

    • @linksword7110
      @linksword7110 Před rokem

      @@DouglasDwyer won’t going around the world diagonally take longer than directly north

    • @DouglasDwyer
      @DouglasDwyer  Před rokem

      Yes, I think that's an accurate assessment.

  • @lunatikreal1384
    @lunatikreal1384 Před rokem

    Add a little smoothness, as in 7dtd, and you can release it for sale, like alpha alpha in alpha)))

  • @Jmac2110
    @Jmac2110 Před rokem

    the demo doesn't work for me it just shows a white screen i am on an intel mac

    • @DouglasDwyer
      @DouglasDwyer  Před rokem +1

      Thanks for your interest in the project - I'm sorry to hear that! Make sure that you're using either Firefox, Edge, or Chrome (Safari is not supported). If you were using a supported browser, and you're willing to take five minutes to help out, I would appreciate it if you went to the demo site and opened the developer console. Take whatever errors you see there, and post them in the comments or on GitHub: github.com/DouglasDwyer/octo-release/issues/new

    • @Jmac2110
      @Jmac2110 Před rokem

      @@DouglasDwyer ok

    • @Jmac2110
      @Jmac2110 Před rokem

      i was in safari

  • @Dongxkld
    @Dongxkld Před rokem

    Voxel coin??

  • @renedayhoff7629
    @renedayhoff7629 Před rokem

    "Promo sm"

  • @user-uq8lz9oq4i
    @user-uq8lz9oq4i Před rokem

    Your project reminds me a lot of this one voxel engine: czcams.com/video/1R5WFZk86kE/video.html Have you seen this?

    • @DouglasDwyer
      @DouglasDwyer  Před rokem

      Indeed, Jon Lin's engine is part of the inspiration behind my own (and a few other) projects. I'm honored that you would compare my work to his :)