Logic Projects

Logic Projects

Creating educational tutorials about the Bevy game engine in Rust!

Bevy 0.12 Release!!!

Bevy 0.12 Release!!!

New Bevy UI/Scenes Proposal

New Bevy UI/Scenes Proposal

Bevy 0.11 Release!

Bevy 0.11 Release!

Bevy Rendering Demystified

Bevy Rendering Demystified

Compute Shaders in Bevy

Compute Shaders in Bevy

Пікірлер

  • @carlosverdes
    @carlosverdes2 күн бұрын

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

  • @bluzenkk
    @bluzenkk4 күн бұрын

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

  • @JohnSmith-ox3gy
    @JohnSmith-ox3gy7 күн бұрын

    Uh, oh. Rust asynch. Truly cursed.

  • @sp.n7401
    @sp.n740115 күн бұрын

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

  • @Kukara90
    @Kukara9015 күн бұрын

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

  • @alexkazimir3835
    @alexkazimir383529 күн бұрын

    Great channel 🎉

  • @alexkazimir3835
    @alexkazimir383529 күн бұрын

    Cool🎉

  • @alexkazimir3835
    @alexkazimir383529 күн бұрын

    Great 🎉

  • @alexkazimir3835
    @alexkazimir383529 күн бұрын

    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
    @publicalias81722 ай бұрын

    - 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.8352 ай бұрын

    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
    @hayden8672 ай бұрын

    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
    @radix233 ай бұрын

    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
    @someuser41663 ай бұрын

    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
    @tuckertcs3 ай бұрын

    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
    @jamesgayfer143 ай бұрын

    Amazing video! More of this please.

  • @vampirelestat9790
    @vampirelestat97903 ай бұрын

    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
    @RenderingUser3 ай бұрын

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

  • @trendliners9658
    @trendliners96583 ай бұрын

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

  • @samsterlicious864
    @samsterlicious8644 ай бұрын

    So many ads

  • @LetsTalkAW
    @LetsTalkAW4 ай бұрын

    Thank you so much for your videos!

  • @Syvies
    @Syvies4 ай бұрын

    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
    @ajinkyax5 ай бұрын

    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
    @ajinkyax5 ай бұрын

    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
    @vividoo5 ай бұрын

    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
    @thebluebriefs4 ай бұрын

    came here to write this, thanks!

  • @IcyTorment
    @IcyTorment5 ай бұрын

    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
    @IcyTorment5 ай бұрын

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

  • @IcyTorment
    @IcyTorment5 ай бұрын

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

  • @joshnjoshgaming
    @joshnjoshgaming5 ай бұрын

    TOMATOE OF DESTRUCITON!!!!!

  • @xiahualiu
    @xiahualiu5 ай бұрын

    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_islands5 ай бұрын

    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.20546 ай бұрын

    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
    @GlobalYoung76 ай бұрын

    thank you 😊

  • @sc0820
    @sc08206 ай бұрын

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

  • @MrMustachehead
    @MrMustachehead6 ай бұрын

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

  • @shehackedyou
    @shehackedyou6 ай бұрын

    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
    @jaysistar27116 ай бұрын

    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
    @jacekkurlit84036 ай бұрын

    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
    @klirmio217 ай бұрын

    Thank you for this overview and tutorial!

  • @4forfour
    @4forfour7 ай бұрын

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

  • @Anton-lj7fw
    @Anton-lj7fw7 ай бұрын

    is this not like the ascii from DF? lol

  • @micycle8778
    @micycle87787 ай бұрын

    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
    @micycle87787 ай бұрын

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

  • @BallisticLife
    @BallisticLife7 ай бұрын

    "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".

  • @littlecurrybread
    @littlecurrybread6 ай бұрын

    well said