Logic Projects
Logic Projects
  • Видео 67
  • Просмотров 474 969
Simple Roguelike in Bevy
Over Thanksgiving I made a simple rouge style game based on Space Station 13 and Caves of Qud. I just wanted to show case some of what I made and share the source code of it in this video.
SS13 Footage: ruclips.net/video/vc0R1TFJ3z4/видео.htmlsi=tcwrLSlR0mI0H48y
Code: github.com/mwbryant/logic-ss13-rougelike/tree/master
Discord Invite: discord.gg/w674Ze7ud7
Patreon: patreon.com/logicprojects
Просмотров: 4 161

Видео

Bevy's Powerful Secret: Commands
Просмотров 4,7 тыс.8 месяцев назад
This video covers an under utilized and super powerful technique to use Commands in Bevy to get World access from any system. Discord Invite: discord.gg/w674Ze7ud7 Patreon: patreon.com/logicprojects
Bevy 0.12 Release!!!
Просмотров 7 тыс.9 месяцев назад
Bevy 0.12 is out and I just wanted to quickly cover my thoughts on the blog and what I think will be cool in the next version. Thumbnail: x.com/i_am_feenster Bevy Blog: bevyengine.org/news/bevy-0-12/ Discord Invite: discord.gg/w674Ze7ud7 Patreon: patreon.com/logicprojects
Sprite Sheet Animation and Asset Loading in Bevy
Просмотров 6 тыс.9 месяцев назад
Just a quick video showing the basics of using the bevy_asset_loader plugin and creating an animated sprite Bevy Asset Loader: github.com/NiklasEi/bevy_asset_loader Discord Invite: discord.gg/w674Ze7ud7 Patreon: patreon.com/logicprojects
New Bevy UI/Scenes Proposal
Просмотров 10 тыс.10 месяцев назад
Thread: github.com/bevyengine/bevy/discussions/9538 Discord Invite: discord.gg/w674Ze7ud7 Patreon: patreon.com/logicprojects Chapters: 0:00 Intro 0:58 Prior Art 2:28 Design goals 3:58 Prototype 6:11 Outro
Learn Bevy! Plugins, Debugging, and UI (part 3)
Просмотров 10 тыс.11 месяцев назад
Welcome to part 3 of my intro to Bevy series. Here we learn how to create our own plugins and add community plugins. We also set up a powerful debugging plugin and create a basic UI system. Discord Invite: discord.gg/w674Ze7ud7 Patreon: patreon.com/logicprojects Github: github.com/mwbryant/logic_farm_roguelike/tree/part-3 Chapters: 0:00 Intro 0:35 Plugins 1:59 Inspector Egui 4:41 Hierarchies 7:...
Learn Bevy! Custom Components/Resources and Gameplay (part 2)
Просмотров 13 тыс.Год назад
Welcome to part 2 of my intro to Bevy series. Sorry for the delay on this part, I just moved into a new house and had no internet for a week! Discord Invite: discord.gg/w674Ze7ud7 Patreon: patreon.com/logicprojects Github: github.com/mwbryant/logic_farm_roguelike/tree/part-2 Chapters: 0:00 Intro 0:14 Custom Component 1:31 Camera Settings 2:05 Custom Resources 3:14 Pig Spawning 3:55 Filters 4:51...
Learn Bevy 0.11 By Making a Game! (part 1)
Просмотров 43 тыс.Год назад
Welcome to my new introductory series for the Bevy game engine! In this series we will create an entire real game from scratch using Bevy 0.11. Discord Invite: discord.gg/w674Ze7ud7 Patreon: patreon.com/logicprojects Github: github.com/mwbryant/logic_farm_roguelike/tree/part-1 Chapters: 0:00 Intro 2:06 Project Setup 3:43 First Window 4:40 First System 7:12 First Sprite 7:40 Loading an Image 9:2...
Bevy 0.11 Release!
Просмотров 3,5 тыс.Год назад
Bevy 0.11 just released and this is my "news" coverage of it and some quick discussion about my goals and plans for this release cycle. Release Notes: bevyengine.org/news/bevy-0-11/ Discord Invite: discord.gg/w674Ze7ud7 Patreon: patreon.com/logicprojects
Pathfinding and Async Tasks in Bevy
Просмотров 8 тыс.Год назад
This is just a quick video showing how to use the pathfinding crate and async tasks to create a pathfinding solution for a bevy game. The source code is up but it's an early draft for my future tutorial series code. Discord Invite: discord.gg/w674Ze7ud7 Patreon: patreon.com/logicprojects Source: github.com/mwbryant/logic_management_game 0:00 Intro 0:47 Grid System Overview 1:31 Pathfinding Crat...
Bevy Rendering Demystified
Просмотров 14 тыс.Год назад
This video covers a section of the lower level rendering features in Bevy. Specifically we look at how the engine renders UI nodes and cover the 5 main steps of rendering a quad in bevy using the lower level abstractions. Code Covered: github.com/bevyengine/bevy/tree/main/crates/bevy_ui/src/render App World/Render World graphic used in thumbnail/overview from the Bevy Cheatbook. Discord Invite:...
Comparing Unity DOTS and Bevy
Просмотров 10 тыс.Год назад
A few weeks ago I completed the LudumDare 53 Game Jam as part of a collaboration with @TurboMakesGames and we both made basically the same game in both Unity Dots and Bevy. In this video I go through some of the comparable systems and components and talk about the differences in both engines. Johnny's Channel: www.youtube.com/@TurboMakesGames My Game: logicprojects.itch.io/delivery-survivor Joh...
Hardware Design in Rust - rust-hdl and Intro to FPGAs
Просмотров 4,4 тыс.Год назад
Super off topic video for my channel but I explored an old hobby and wanted to showoff a cool Rust project. rust-hdl: github.com/samitbasu/rust-hdl Discord Invite: discord.gg/w674Ze7ud7 Patreon: patreon.com/logicprojects Chapters: 0:00 Introduction 1:11 What is an FPGA and how do I get one 4:50 Vivado 6:05 Project Setup 7:41 My Musing about HLS 9:02 rust-hdl Blinky 13:17 Rams 14:44 VGA basics 1...
Post Processing, 3D Conversion, and Physics in Bevy (0.10 Devlog 6)
Просмотров 2,7 тыс.Год назад
This week I overhauled some fundamental aspects of the game. Everything is now in 3D and I have setup the infrastructure for post processing. I included a more tutorial style segment of post processing into this video. Play the Game: logicprojects.itch.io/logic-rpg Project Github: github.com/mwbryant/logic-turn-based-rpg/tree/devlog6 Discord Invite: discord.gg/w674Ze7ud7 Patreon: patreon.com/lo...
Continuous Integration and Documentation in Bevy (0.10 Devlog 5)
Просмотров 1 тыс.Год назад
This week I focused on some DevOps style cleanup around the game. Specifically setting up Github CI to automatically handle releases of the game and I built the game for web and changed everything required for that. I also started documenting the game into a book. Play the Game: logicprojects.itch.io/logic-rpg Project Github: github.com/mwbryant/logic-turn-based-rpg/tree/devlog5 Discord Invite:...
Making A Rust/Bevy Game in One Week - Bevy Jam 3
Просмотров 1,9 тыс.Год назад
Making A Rust/Bevy Game in One Week - Bevy Jam 3
Overworld and NPCs in Bevy (0.10 Devlog 4)
Просмотров 1,6 тыс.Год назад
Overworld and NPCs in Bevy (0.10 Devlog 4)
Particles, UI, and Animation in Bevy (0.10 Devlog 3)
Просмотров 2,4 тыс.Год назад
Particles, UI, and Animation in Bevy (0.10 Devlog 3)
Reorganizing in Bevy (0.10 Devlog 2)
Просмотров 1,6 тыс.Год назад
Reorganizing in Bevy (0.10 Devlog 2)
Turn Based Combat in Bevy (0.10 Devlog 1)
Просмотров 4,3 тыс.Год назад
Turn Based Combat in Bevy (0.10 Devlog 1)
Bevy 0.10 Release!! New Schedule Overview and First Thoughts
Просмотров 4,6 тыс.Год назад
Bevy 0.10 Release!! New Schedule Overview and First Thoughts
OpenAI Text Generation API and Bevy Async Tasks
Просмотров 2,8 тыс.Год назад
OpenAI Text Generation API and Bevy Async Tasks
Bevy Egui - Quick Easy Developer Tools and UIs
Просмотров 17 тыс.Год назад
Bevy Egui - Quick Easy Developer Tools and UIs
Compute Shaders in Bevy
Просмотров 12 тыс.Год назад
Compute Shaders in Bevy
Final Cleanup and Audio - Bevy 0.9 Intro (Ep7)
Просмотров 3,5 тыс.Год назад
Final Cleanup and Audio - Bevy 0.9 Intro (Ep7)
Rapier Physics Engine Showcase: Rust Physics Engine for Bevy
Просмотров 15 тыс.Год назад
Rapier Physics Engine Showcase: Rust Physics Engine for Bevy
Menu, States, Events - Bevy 0.9 Intro (Ep6)
Просмотров 5 тыс.Год назад
Menu, States, Events - Bevy 0.9 Intro (Ep6)
Bevy UI and Buttons - Bevy 0.8 Intro (Ep5) (Updated to 0.9 Check Description)
Просмотров 4,5 тыс.Год назад
Bevy UI and Buttons - Bevy 0.8 Intro (Ep5) (Updated to 0.9 Check Description)
Making a Multiplayer Voxel Game with Rust/Bevy
Просмотров 7 тыс.Год назад
Making a Multiplayer Voxel Game with Rust/Bevy
Input, Click Detection, and Tower Building - Bevy 0.8 Intro (Ep4) (Updated to 0.9 Check Description)
Просмотров 7 тыс.Год назад
Input, Click Detection, and Tower Building - Bevy 0.8 Intro (Ep4) (Updated to 0.9 Check Description)

Комментарии

  • @carlosverdes
    @carlosverdes 4 дня назад

    Another approach is to create macros, they will remove the boilerplate and keep all the benefits like parallel processing

  • @bluzenkk
    @bluzenkk 6 дней назад

    so... when can we make Elden Ring with bevy...

  • @JohnSmith-ox3gy
    @JohnSmith-ox3gy 9 дней назад

    Uh, oh. Rust asynch. Truly cursed.

  • @sp.n7401
    @sp.n7401 17 дней назад

    i immediately recognized the control scheme and was ready to ask lol

  • @Kukara90
    @Kukara90 17 дней назад

    What did you use for SpriteSheet creation? It's about the software from the start of the video

  • @alexkazimir3835
    @alexkazimir3835 Месяц назад

    Great channel 🎉

  • @alexkazimir3835
    @alexkazimir3835 Месяц назад

    Cool🎉

  • @alexkazimir3835
    @alexkazimir3835 Месяц назад

    Great 🎉

  • @alexkazimir3835
    @alexkazimir3835 Месяц назад

    Very cool review 🎉

  • @dimvoly
    @dimvoly Месяц назад

    Great bevy content, keep it up

  • @Champs3443
    @Champs3443 Месяц назад

    very nice, thanks :D

  • @flwi
    @flwi Месяц назад

    I'm blown away by the quality of your tutorial! Very well done!

  • @jeffcarey3045
    @jeffcarey3045 Месяц назад

    Rogue is rogue. Rouge is makeup.

  • @nandans2506
    @nandans2506 Месяц назад

    Can the client be in typescript?

  • @publicalias8172
    @publicalias8172 2 месяца назад

    - Structs don't require being in it's own file of the same name, it's perfectly acceptable being in a shared file like you have here as long as it makes sense organizationally. Personally, having a single file to dump components into that don't relate sounds like a nightmare to extend and refactor.

  • @radekn.835
    @radekn.835 2 месяца назад

    It was just a couple lines of code, but making my pixel pigs run on the screen made me happy! Thanks for the tutorial!

  • @hayden867
    @hayden867 3 месяца назад

    This is a fantastic overview of the render pipeline, and how all the key components work together to form a whole. Would really love to see a deeper dive into the optimisations - like how batching works - to get an even more complete understanding of whats happening under the hood!

  • @radix23
    @radix23 3 месяца назад

    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.

  • @someuser4166
    @someuser4166 3 месяца назад

    im really considering moving to Bevy, im just a bit unsure since the 3D front seems a bit underdeveloped? i come from the source engine where the world was done in their hammer editor and the logic in C++ / visual studio, im slightly confused on how to do it with Bevy since it doesn't have a world editor / mapping tool. i also found godot but i dont like the non-compiled code since people can just decompile your entire game and steal or change stuff, ive used unreal in the past but i dont want all the bloat they put in nor deal with epics licenses, unity is similar to godot, its C# so its not that hard to decompile. i love that Bevy just uses rust and dont mix things like unreal does with its blueprints/C++ or unity with their visual scripting / js / cs etc. But I do miss visual studio (not code, the other one) and am a bit confused with rust coming from cpp / cs😅 (especially when it comes to setting up the IDE) but it dont seem to bad tbh.

  • @tuckertcs
    @tuckertcs 3 месяца назад

    2:16 Don't you just love when you don't even start coding and you're already stuck X'D. Hello world won't build after adding bevy (identical toml file) due to some unresolved import with ItemFn and ItemTrait in bevy_derive-0.6.0/src/bevy_main.rs.

  • @jamesgayfer14
    @jamesgayfer14 3 месяца назад

    Amazing video! More of this please.

  • @vampirelestat9790
    @vampirelestat9790 3 месяца назад

    Hi there, I'm trying to rebuild this in bevy 0.13, but couldn't get the PickSelection is_selected (which i believe is the equivalent of Selection selected()) to change to 'true' when click on one of the TowerType.

  • @RenderingUser
    @RenderingUser 3 месяца назад

    11:25 quick update: bevy 0.13+ uses ButtonInput instead of Input also KeyCode::W -> KeyCode::KeyW

  • @trendliners9658
    @trendliners9658 4 месяца назад

    Very helpful tutorial! Can't wait to see bevy community grow larger and have such good tutorials!

  • @samsterlicious864
    @samsterlicious864 4 месяца назад

    So many ads

  • @LetsTalkAW
    @LetsTalkAW 4 месяца назад

    Thank you so much for your videos!

  • @Syvies
    @Syvies 4 месяца назад

    I'm following this tutorial with Bevy 0.13, and I have to say, a lot has changed since then. It's a bit troublesome to find the correct way to do things, but I managed to find the right solutions with a lot of trial and error!

  • @antling_
    @antling_ 4 месяца назад

    Amazing!

  • @ajinkyax
    @ajinkyax 5 месяцев назад

    with Bevy 0.13 WindowPlugin needs to be used instead of WindowDescriptor docs.rs/bevy/latest/src/scale_factor_override/scale_factor_override.rs.html#10

  • @ajinkyax
    @ajinkyax 5 месяцев назад

    on windows you can still get fast build. add opt mentioned in the video and in the terminal type: cargo run --features bevy/dynamic_linking subscribed :)

  • @vividoo
    @vividoo 5 месяцев назад

    Any confused about why you're getting an error for the 'Input' resource. In Bevy 0.13, the Input resource was renamed to `ButtonInput`. Additionally, instead of the KeyCode being `KeyCode::W` it is now `KeyCode::KeyW`

    • @thebluebriefs
      @thebluebriefs 4 месяца назад

      came here to write this, thanks!

  • @IcyTorment
    @IcyTorment 5 месяцев назад

    One objection I have the bsn! macro is that it looks like declarative code (e.g., maybe functional code that would be returning scene info), but it's actually imperative code that's modifying things in the background. That feels very unrustlike. I've also had nothing but negative experiences with embedding one language into another. That tends to lead to abominations like PHP.

  • @IcyTorment
    @IcyTorment 5 месяцев назад

    Remember when "roguelike" wasn't more or less a synonym for "game?"

  • @IcyTorment
    @IcyTorment 5 месяцев назад

    Good video, but that dark-grey-on-black syntax highlighting is a bit of a problem.

  • @joshnjoshgaming
    @joshnjoshgaming 5 месяцев назад

    TOMATOE OF DESTRUCITON!!!!!

  • @xiahualiu
    @xiahualiu 6 месяцев назад

    quick question as a noob: why 9:16 asser_server in the fn setup() does not require mut? Is it because Res<AssetServer> uses internal mutability?

  • @cayman_islands
    @cayman_islands 6 месяцев назад

    I have to install bevy via command line. But there is no video about it. Do you know how to do it?

  • @alang.2054
    @alang.2054 6 месяцев назад

    5:23 no need for nested for loop there. only one loop is enough let direction = { let mut min_distance = MAX; let mut transform = None; for target in &targets{ let distance = Vec3::distance(bullet_spawn, target.translation()); if distance < min_distance{ min_distance = distance; transform = Some(target.translation() - bullet_spawn); } }; transform };

  • @GlobalYoung7
    @GlobalYoung7 6 месяцев назад

    thank you 😊

  • @sc0820
    @sc0820 6 месяцев назад

    people who are less intelligent would not understand even a sentence in this tutorial

  • @MrMustachehead
    @MrMustachehead 6 месяцев назад

    Does anyone know, or can point me in the direction of how to do ui in bevy 0.12? Thanks :)

  • @shehackedyou
    @shehackedyou 6 месяцев назад

    Could you not have merged the voxels even further into bigger blocks long as they had the same consistent texture that could have been calculated and repeated? Especially when beyond any possible interactions, it seems like this might be a good strategy. I have only played with voxels limited number of times because I don't really do gamedev, but I find the voxel to be interesting problem; and I helped a friend make a tactics game once and ran into many of the voxel problems then; and ever since have found the entire subject pretty interesting. There are a lot of overlapping principles with graph databases which is why I think another modern way to store this type of data is the oct-trie previously quad-trie. Also are you only rendering just the frustum (the presumably visible trapezoid if I remember my terms correctly). By combining the server and client you came across the essential design to any p2p protocol; there is a lot more obviously like peer discovery, and message passing, but combining server and client functionality together is the first step. I did it recently with XMPP to create a decentralized XMPP client (node).

  • @jaysistar2711
    @jaysistar2711 7 месяцев назад

    I'm hoping to play with bsn soon. An ergonomic was of representing changes over time in both UI and 3D scene component values will be very valuable.

  • @jacekkurlit8403
    @jacekkurlit8403 7 месяцев назад

    6:34 I have used despawn_recursive insted of despawn and I don't see any pigs in child hierarchy. Also I find set_parent(pig_parent); method to be more readable than using .with_children(). You can call set_parent after calling spawn() method. Overall very informative tutorial! Thank you very much! If I could suggest you next topic then more tutorials about community plugins (for example physics engine or any other) would really help!

  • @klirmio21
    @klirmio21 7 месяцев назад

    Thank you for this overview and tutorial!

  • @4forfour
    @4forfour 7 месяцев назад

    "bevy e-gooey" (say it properly brickass)

  • @Anton-lj7fw
    @Anton-lj7fw 7 месяцев назад

    is this not like the ascii from DF? lol

  • @micycle8778
    @micycle8778 7 месяцев назад

    These are pretty cool can you do these for newer versions of bevy? They're probably less work since you don't need to go editing and such.

  • @micycle8778
    @micycle8778 7 месяцев назад

    why do they call them von neumann neighbors when they could be called rook neighbors

  • @BallisticLife
    @BallisticLife 7 месяцев назад

    "Im probably making an aggressively inaccessible, unplayable, and unfun game" Good!! This is genuinely very good, and you should follow that path. Lots of great ideas are locked behind doors that are "unfun" or "completely incomprehensible to most players".