Making a Multiplayer Voxel Game with Rust/Bevy

Поделиться
HTML-код
  • Опубликовано: 8 сен 2024

Комментарии • 29

  • @Tantandev
    @Tantandev Год назад +39

    I'm so happy to see other share their voxel development journey. Hope to see more!

    • @logicprojects
      @logicprojects  Год назад +7

      Thanks! Your channel was one of the first ones to point me to bevy! Love your content

  • @radix23
    @radix23 4 месяца назад +1

    Some friendly corrections: RefCell is not a reference counted pointer, it's actually a type that owns and lets you borrow the contents at runtime (Rc is the Reference Counted pointer). And Arc is not an asynchronous pointer, it's an *atomic* reference counted pointer.

  • @elgusanito6991
    @elgusanito6991 Год назад +5

    YEEEES YEEEEEEEEEES, I'm at a similar adventure, hyped for this

  • @nihil75
    @nihil75 9 месяцев назад

    Being new to Rust & Bevy I now have 6 tabs where I google concepts/methods you described. Thank you!

  • @twomur_
    @twomur_ Год назад +1

    so far this is looking pretty awesome!! i subbed can’t wait for the next devlog

  • @Athomield3D
    @Athomield3D Год назад +2

    thanks for the source !

  • @DejaimeNeto
    @DejaimeNeto Год назад +1

    yes

  • @user-ot7pt9wf9d
    @user-ot7pt9wf9d Год назад

    Thanks for sharing

  • @user-rg7ux5hn5t
    @user-rg7ux5hn5t Год назад

    Thank you!

  • @Tudvari
    @Tudvari Год назад +2

    It makes me want to go back to my frozen voxel project... :D
    Great devlog, have you managed to continue working on it? I don't really see commits in the repository. :(
    Anyway, keep it up! :)

    • @logicprojects
      @logicprojects  Год назад +1

      I've done some work off and on for it but nothing published yet. I might come back to it in February to see how I feel about the choices I made months ago

  • @larsmaas07
    @larsmaas07 Год назад

    YESSSSS

  • @isengrim_
    @isengrim_ 10 месяцев назад

    Would you be willing to do a tutorial series on this? Pretty hard to find good and recent 3d/multiplayer Bevy tutorials

  • @calebwhitehead1153
    @calebwhitehead1153 Год назад +1

    Nothing scuffed about all those if statements in your meshing algorithm. This is just how they end up looking.

    • @logicprojects
      @logicprojects  Год назад +2

      Yeah it just always feels like there's some magical higher structure to it. I spent a good bit looking for a pattern that might not exist

  • @itsME-dc4vm
    @itsME-dc4vm Год назад

    niceee ;D

  • @wadecodez
    @wadecodez Год назад

    What all did you write for the networking features? Is it just state management or does the server run the simulation?

    • @logicprojects
      @logicprojects  Год назад +1

      I used the same networking setup I did for my renet tutorials. World state is handled by the master server which sends updates as full chunks currently. Def some room for future optimizations and better designs there though.

  • @oglothenerd
    @oglothenerd Год назад +1

    Bevy 0.10 tutorial please? Bevy does not have good docs, or updated tutorials!

  • @nightlycat2525
    @nightlycat2525 Год назад

    I think it would be interesting to see how you can make something like terraria

  • @JasonMortimer3
    @JasonMortimer3 Год назад

    You said about how you made custom ray _tracing_ for calculating which block you are looking at. This is the wrong term, you developed ray _casting_

    • @logicprojects
      @logicprojects  Год назад +1

      I've seen both terms used interchangeably (actually the Wikipedia for each link to each other in their openings) and both seem to be more linked to rendering than physics. Unity does call this function raycast though. The actual algorithms I used call themselves line drawing because I was taking advantage of the grid so it wasn't a general ray. But sure ray tracing invokes a more high end graphics notion than I was going for

  • @waffle8364
    @waffle8364 Год назад +1

    why Rust?

    • @brain_frame
      @brain_frame Год назад +4

      Rust has a borrow checking memory management model instead of manual memory management like C/C++ or garbage collection like a scripting language. The borrow model gives tight guarantees on memory safety and excellent performance, but you pay for it with compilation time and having to structure your code in a way that satisfies the borrow checker. Rust also makes parallelization a first-class citizen that integrates heavily with the borrow mechanism. As long as your program compiles it should be memory safe and thread safe.

    • @DerWand
      @DerWand Год назад +6

      because its BLAZINGLY fast

    • @logicprojects
      @logicprojects  Год назад +2

      For me bevy is the easiest ECS to use and I believe in the data oriented massively parallel future for high performance programs (like games). If I wasn't in rust there's no way I would have this running on multiple threads but here I easily have safe chunk loading across threads. Also why not, it's just for fun

    • @user-on7ed4bc5z
      @user-on7ed4bc5z Год назад

      @@brain_frame but rust have awful compatibility between versions. This language always updates and break old projects unlike C, and this is the reason why C is the best language ever created. And C actually is faster then rust, sry, but true.