Learn Bevy 0.10 - EP1 - Intro Tutorial to Bevy Game Engine Entity Component System and Queries

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

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

  • @dumas124
    @dumas124 6 дней назад +2

    I appreciate how this built up in small steps in a way that really helped me understand how to do a basic setup in bevy without getting bogged down in details about resources and other issues. This is extremely beginner friendly.

    • @jacques-dev
      @jacques-dev  5 дней назад

      I am very glad you are finding this series helpful!

  • @ragooostudios
    @ragooostudios Год назад +69

    Super cool seeing somebody make tutorials for Bevy on RUclips, there doesn't seem to be many of those
    Super excited for the next episode!

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

      There's a few out there - I won't be rude and post links to other channels without Jacques chiming in, but keep looking! I follow 4 (including this one) right now :)

    • @jacques-dev
      @jacques-dev  Год назад +10

      There aren't many but there are a few others, my favorite is LogicProjects, he's made great videos that I used when I was learning Bevy and I really like his teaching style. Many of the other Bevy videos are now a version or two behind, and that's why I decided to make this series to keep things up to date for the community and bring more people into the ecosystem.

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

      @@jacques-dev much appreciated man. You’re not doing a bad job :)

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

      @@jacques-dev LogicProjects is exactly who I'm thinking about! He's been working on update videos for 0.10 as well!

  • @kaltimoktober
    @kaltimoktober Год назад +62

    Jacques: Forget everything you've ever learnt
    Me (Who's never learnt anything deep in Game Design): Have no fear I know nothing.

    • @jacques-dev
      @jacques-dev  Год назад +8

      Haha that gave me a good laugh, all the best!

    • @intingido9751
      @intingido9751 6 месяцев назад +1

      Always a step ahead

  • @Sleebee_
    @Sleebee_ Год назад +72

    Right at the perfect time. I finally have the chance to use Rust and Bevvy in a university course I'm taking. This will be a very useful series. c:

    • @jacques-dev
      @jacques-dev  Год назад +9

      Awesome! Best of luck with your course!

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

      I find it very interesting that Rust is being used in university courses already, @SleeBee_ which university?

  • @kotajacob
    @kotajacob Месяц назад +2

    Excellent video! The pace was slow enough to get a really good grasp of these core concepts, but still avoided wasting any time. Thanks for making this!

    • @jacques-dev
      @jacques-dev  Месяц назад

      @@kotajacob my pleasure! Thank you for the kind words and I’m glad you found it helpful.

  • @alexcampbell-black8543
    @alexcampbell-black8543 Год назад +7

    This deserves far more attention, very concise and easy to follow, love the vibe with the music. Can't wait to do the rest of the course!

  • @DarkDax
    @DarkDax Год назад +10

    Amazing tutorial! Concise and well composed. There’s not many decent videos out there for learning Bevy but this definitely up there.
    Keep up the good work mate!

    • @jacques-dev
      @jacques-dev  Год назад +2

      Thank you man! You inspired me to make a YT channel so thanks for the push!

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

      @@jacques-dev

  • @onehouraday
    @onehouraday Год назад +8

    New to this- Biggest tip was to just keep using 0.10.0 version of bevy, else you'll run into a lot of problems. This helped the most for me!

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

      I feel like this needs to be stressed/pinned at the top! I was beating me head against a wall until I just gave in and downgraded to 0.10.0

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

    I just watched 9 seconds of this video and I already know this series will help me a lot. I couldn't find good tutorial on bevy yet.

  • @choi_wheatley
    @choi_wheatley Год назад +3

    Wow I'm totally fall in love with ECS pattern and queries!! I can't wait to learn basics of Rust and fidget with this awesome tool! Hope I can watch next video soon Thx

    • @jacques-dev
      @jacques-dev  Год назад +1

      Episode 2 is in the works and coming soon :)

  • @flwi
    @flwi 7 месяцев назад +3

    Great tutorial! Well paced and easy to understand.
    ECS felt very natural to me for some reason and I didn't know why. Your example with the sql table made it click.

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

    i looking around for bevy tutorial in the last 2days... and this is the best tutorial for me!
    thanks for making video

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

    This was a very well made video! Looking forward to continuing this series! :)

    • @jacques-dev
      @jacques-dev  Год назад +2

      Thank you for your kind words!

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

    The video series I need came out at the perfect timing while I started looking at Bevy yesterday :D

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

    Yesssss! I am 100% gonna watch all of this series

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

    Best bevy tutorial I've seen so far- really well thought out. Appreciate it and keep up the awesome work!

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

    Thanks a ton. I've been looking for a reason to learn rust, and after reading through the rust book, decided bevy was a great way to motivate myself to do something. As a C++ dev with no game development experience though, bevy was really really opaque till I saw this video. I'll be churning through this whole playlist this weekend I'm sure. Thank you.

    • @jacques-dev
      @jacques-dev  Год назад

      My pleasure! Enjoy it and best of luck on your Rust + Bevy journey!

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

    Found the Bevy tutorial series I needed. Thanks for making this

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

    Hey Jacques, I was really really really interested in learning Bevy. Thanks a LOT for this tutorial. your methodology for me it's perfect! Everything well explained and with practice as well. I'm so excited for the next videos!

    • @jacques-dev
      @jacques-dev  Год назад

      My pleasure! Thank you for your kind words and best of luck on your Bevy journey.

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

    Thank you so much for this tutorial series, been looking for something like this since forever. Well done!

  • @Maetschll
    @Maetschll 8 месяцев назад +11

    9:50 now is `add_systems(Startup, hello_world)`

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

      You saved my life

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

    Thank you for this! Looking forward to the whole series. This indeed might be a compelling engine.

    • @jacques-dev
      @jacques-dev  Год назад +1

      I think Rust is the future and Bevy is going to be the best choice for making games 🤩 it's still early days, but let's learn it now and be experts in the future.

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

    I'm really amazed at how much positive feedback you have in the comments! Thanks very much for this Series.

    • @jacques-dev
      @jacques-dev  Год назад

      Thank you! It has been a very nice experience making videos so far.

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

    wonderfull tutorial. for the first time I understand ECS with very very simple and elegant explanation. thank you very very very much.

    • @jacques-dev
      @jacques-dev  Год назад +1

      Thank you for your kind words!

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

    this is absolutely amazing!
    very cool that the bevy community grows so quickly

  • @乐宁波
    @乐宁波 Год назад +2

    I love this, please keep it up,I love bevy and rust.

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

    Hey thanks for all the time and effort, looking forward to the rest of the course!

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

    I've been shying away from Bevy, but clearly not for a good reason. Or maybe your approach to teaching it is just fenomenal. I'll definitely be following these 😊. Ty!

    • @jacques-dev
      @jacques-dev  Год назад +1

      Thank you very much for your kind words that is very nice of you to say.

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

    many thanks for sharing your knowledge
    rust noob here - really looking forward to getting into bevy once i have some of the language basics down

    • @jacques-dev
      @jacques-dev  Год назад +1

      All the best on your journey! Enjoy it.

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

    Thanks for the tutorial, I am enjoying the series and learning bevy!
    btw, nice detail naming the function ready to hire - love the no negetive vibes here !

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

    Wow, your tutorial really helped me understand all this basic things. As I'm not a good documentation reader this was really helpful! Keep up!

  • @bjohnsonva1984
    @bjohnsonva1984 9 месяцев назад +1

    Very clear and well thought out tutorial!!

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

    exceptional video -- very much looking forward to more!!

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

    THANK you for covering plugins on the first episode! They can help a lot as you start to iterate and refactor your code. A nice trick is plugins can implement the systems themselves, opening up some neat, yet stateful, tricks when you do `add_system(PluginName::system_name)` :)

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

    Awesome video dude, very informative, you clearly know your stuff! I think it's super cool that you've decided to share your knowledge with others, no doubt many will benefit from it

    • @jacques-dev
      @jacques-dev  Год назад +1

      Thanks man! Come to the dark side and make games with me :D

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

    Excellent content, thank you very much. I'm looking forward to the further episodes

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

    Very concise and informative tutorial! Thank you! This really helped me out

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

    Amazing series, thank you for taking the time to make it! :)

    • @jacques-dev
      @jacques-dev  Год назад +1

      Thank you for your kind words, it’s my pleasure.

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

    Great tutorial!!! Please, continue making episodes for this series past 10th!! please

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

    Thank you very much for your tutorial!
    I did some small projects in godot and now I want to test the approach of ECS.
    It seems very interesting.
    So this is my chance to learn rust and bevy at the same time :)

  • @ScorpionDevYT
    @ScorpionDevYT 2 месяца назад +3

    bros keyboard made the video even better!

  • @Ben-rc9br
    @Ben-rc9br Год назад +2

    great tutorial and nice music

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

    Yooo this is dope. I can't wait to not finish another game (but it's gonna have ecs this time so that's good)

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

    Thank you very much for this tutorial.

    • @jacques-dev
      @jacques-dev  Год назад

      My pleasure! I am glad you like it.

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

    Hope you will do more tutorials for rust!! :)

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

    Not a single comment about the thockiness of that keyboard. Wth. Great tutorial!

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

    This is just great. Thanks!

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

    This is awesome, keep it up!

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

    Thanks a lot! Great tutorial!

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

    Hey this is super well done, thanks so much!
    Did you ever make that tile based crate tutorial? Do you know of a tutorial for tile based games in Bevy?

    • @jacques-dev
      @jacques-dev  Год назад

      Hi there, thank you very much. I have not made that tutorial yet no… I am not sure of any other ones at the moment.

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

    very exciting!

  • @nuclearthrone2497
    @nuclearthrone2497 8 дней назад

    Any advice on a follow up tutorial after this one?

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

    Hi...going to give this a go. Will sit at the coffee shop with my bashed up laptop..
    Update: thats the first one done ...rock on...also reading how to prg in Rust at the same time but so far ok...just fighting a bit with vscode a bit but who said anything good comes easy...next vid now

    • @jacques-dev
      @jacques-dev  Год назад

      All the best on your journey! Enjoy the process and have fun.

  • @alekmoth
    @alekmoth Месяц назад +1

    Tutorial looks great, but honestly I am about to give up on Rust just from seeing "something".to_string() .. is this a general indication of how the language is pointlessly verbose?

    • @JB-xb3of
      @JB-xb3of Месяц назад

      "something" is a string on the stack. In rust this type is called 'str'. It consumes a fixed amount of memory and ist known at compile time.
      "something".to_string() is of type 'String' and saved to the dynamic heap memory. Rust encourages (and sometimes straight up forces) you to think about performance and memory footprint. I was put of by this as well but once you nonlonger see it as burden, but instead as a tool that Rust gives you (and other languages dont), its a tremendous experience.

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

    Nice Tutorial

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

    Ah yes, Bevy... so great.... the only reason I don't use it more is because like you said, it's still experimental and stuff changes constantly, but aside from that it's great.

    • @jacques-dev
      @jacques-dev  Год назад +2

      The biggest downside is that it is currently still playing catchup to the older main stream engines but I think it's still worth the investment to learn it now and be a part of the process of Bevy maturing. So far all the changes between versions has been a very smooth transition as the Bevy team puts out very detailed and thorough migration guides. I've been using Bevy since 0.6 and each upgrade I've done to a new version has been smooth.

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

      @@jacques-dev Yeah, and besides the ECS is pretty nice.

  • @omidtavana
    @omidtavana 3 месяца назад +1

    Unity is also ESC .
    We call it Unity DOTS consist of ECS , Job System and Burst Compiler

    • @jacques-dev
      @jacques-dev  3 месяца назад

      Unity DOTS is a feature, it is not the default way to make games in Unity.

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

    Sorry this is a dumb question, but what's your keyboard setup? It sounds very nice!

    • @jacques-dev
      @jacques-dev  Год назад +3

      Not a dumb question at all - I am using a Keychron K10 Full Size Keyboard with Brown Switches. I wanted a high quality mechanical keyboard but didn't want to invest the time and money to make one myself and I have been very happy with this one I bought. Only downside is that it is quite noisy 😅 I may look into setting up affiliate links to my setup in the future if that's something people would be interested in, but for now I am focussed on tutorial content creation and don't want to get distracted by setting up that other stuff.

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

      Don't change it, I think it sounds great in your videos! I built my own keyboard but I'm kinda jealous how much better yours sounds out of the box 😂
      Keep up the good bevy content! I'm excited for the later videos on how to best organize system sets, especially when combined with fixed timesteps and game state machines. Defining the ordering of sets seems like it can get a like tricky.

    • @jacques-dev
      @jacques-dev  Год назад +1

      @@brianschwind6530 I am glad you are enjoying the content! Game state machine and fixed timesteps are coming up soon, although the examples aren't going to be too complicated in order to demonstration the functionality and keep things beginner friendly.

  • @PekoniIMutteri
    @PekoniIMutteri 2 месяца назад +1

    just wondering, but why do you make all your functions and structs public ? I'm learning on a newer version of bevy and was wondering if those were necessary at the time, or if not and it's just more useful later down the line.

    • @jacques-dev
      @jacques-dev  2 месяца назад

      For this beginner series I didn’t think the nuance between public vs private was necessary to teach so I just set everything to public to make it easier

  • @enternix3942
    @enternix3942 2 месяца назад +1

    what keyboard do you use? it sounds heavenly

    • @jacques-dev
      @jacques-dev  2 месяца назад

      @@enternix3942 Keychron K10, I am incredibly happy with it.

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

    what is your keyboard it sounds SO good

    • @jacques-dev
      @jacques-dev  Год назад +1

      Keychron K10 with brown switches 🤪

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

    The code with bundle never worked for me, it was throwing a syntax error no matter what I did. It works now but that bundle keyword wasn't included by "use bevy::prelude::*;"

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

      I was very confused because I've never seen an error in rust where the exact same code throws an error for one person and not another; it shouldn't even be possible in rust so I'm very confused. Same version of Rust, same version of bevy, identical cargo.toml, and actually identical code character for character and it still didn't work.

    • @jacques-dev
      @jacques-dev  Год назад

      Hi Kyle, that is very strange I have also never heard of that happening. Please try to download my code directly and hopefully that works for you.
      github.com/frederickjjoubert/learn-bevy
      github.com/frederickjjoubert/bevy-ball-game

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

      ​@@jacques-dev Ah, my IDE doesn't prefix the module name and that threw me off! I've never done Rust via a video tutorial before so what I thought was you typing "bundle: " was vscode showing the module. I knew I was being stupid somehow 😂

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

      @@jacques-dev and now that I think about it I don't know what I thought a lowercase keyword with a colon would even be in Rust. Makes sense that I was able to get the code running by simply not typing it!

    • @jacques-dev
      @jacques-dev  Год назад +1

      @@kylehart8829 sorry for the confusion Kyle! I’m glad you got around it.

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

    Excellent tutorial! And may I bring this tutorial to the learners in China?

    • @jacques-dev
      @jacques-dev  Год назад

      You’re welcome to send them the RUclips link but downloading the video and re-uploading on a Chinese website is theft and you may not do that.

  • @jackbishop9582
    @jackbishop9582 7 месяцев назад +1

    Sorry dude I couldn't concentrate over the sound of that keyboard. I mean HOLY SHIT it sounds good. What switches are you running in there?

    • @jacques-dev
      @jacques-dev  7 месяцев назад

      Yeah it’s a loud one. It’s a Keychron K10 with brown switches

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

    Awesome video, this is great for Bevy! Would you be willing to post the final code for each video? Would make a great reference to follow along with.
    Either way, appreciate the tutorials!

    • @jacques-dev
      @jacques-dev  Год назад +1

      Hi DT! Thank you for your kind words! Yes, I need to get that set up ASAP. 👍

    • @jacques-dev
      @jacques-dev  Год назад +1

      RUclips won't let me have external links in my account yet but here is a link you can copy paste: github.com/frederickjjoubert/learn-bevy/blob/main/src/main.rs

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

      @@jacques-dev this is great, thanks again!

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

    What's interesting is that you can use Resource which has Entities inside.

    • @jacques-dev
      @jacques-dev  Год назад

      Yes, you can also have an `Entity` type to keep track of other entities inside your components, I will try to work in a demo of that in the future.

  • @鄭琮瀚-x2j
    @鄭琮瀚-x2j Год назад +1

    nice , i am a UE engineer , and i am waiting for UE rewrite by rust haha

    • @jacques-dev
      @jacques-dev  Год назад +1

      I don’t think that’s going to happen… but it would be cool!

  • @THE-MYSTIC
    @THE-MYSTIC Год назад +1

    Love ❤

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

    Thanks guy! 🎉

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

    How do you get your keyboard to sound so nice?

    • @jacques-dev
      @jacques-dev  Год назад +1

      It’s a Keychron K10 with brown switches, I am very happy with it.

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

    Hi Jacques,,, keep getting this error commands.spawn(bundle: Person {
    | - ^ expected one of 8 possible tokens
    | |
    | help: maybe write a path separator here: `::` any ideas?

    • @jacques-dev
      @jacques-dev  Год назад +2

      Hi Paul! Please omit all the code that’s got the grey background highlighting, that’s just my code editor extension showing what types to use, not actual code you have to write. I think I’m going to have to turn that off as it’s tripped up a few different people now. Apologies for the confusion!

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

      @@jacques-dev yep that was it disable rust analyser and that grey bundle suggestion disappeared. Thanks for the heads up. back to learning Rust :)

    • @jacques-dev
      @jacques-dev  Год назад

      @@paulblacklock1146 Paul, I do suggest you try to use the rust-analyzer extension it is very helpful to see the information it's giving you and its other features, but if it is getting in the way of your learning then I understand it may be better to turn if off for now.

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

      @@jacques-dev I meant i disabled it to test the code then reactivated it... it still trips me up but i'll learn to live with it 😃

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

    I think interesting tutorial would be on loading data from files as an Asset. The best way I managed to do it involves using State, and loading asset, quering for two Resources and applying the data in the asset. All or most of it happens inside of in_set(OnUpdate(State...)). I wonder if it could be done easier way.

    • @jacques-dev
      @jacques-dev  Год назад +1

      I plan to cover more advanced topics once I am done with my beginner series, I have some ideas of how to better manage assets and also do a demo of saving and loading from a file.

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

      @@jacques-dev I think there is a crate that does work both with WebAssembly and PC for saving and loading data (I use it for saves) that is cross platform which is called bevy_pkv. But it is not a good way to store assets/content.

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

    are u sure for size of entity u32 ?
    i have see u64 in doc.Rs

    • @jacques-dev
      @jacques-dev  Год назад +1

      Hi, yes please take a look at the docs here: docs.rs/bevy/latest/bevy/ecs/entity/struct.Entity.html#method.index
      Note that technically it is a generational index, which you can read up on here lucassardois.medium.com/generational-indices-guide-8e3c5f7fd594

    • @jacques-dev
      @jacques-dev  Год назад +1

      The link you have posted is broken / wrong. It takes me to a dentist website 😅

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

    1 version behind now, but the most recent video tutorial. Some of the web tutorials are 404s, and others are 8 versions behind. Hopefully this one works on current!

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

      immediately, it doesn't. uh oh. there aren't many others

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

      replace .add_system(function) with .add_systems(Update, (function1, function2, function3 etc.) )for the startup ones use Startup instead of update. You only need one .add_systems line for each schedule type(Startup/Update)
      @@waporwave5066

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

      Also use .add_plugins((DefaultPlugins, PeoplePlugin)) instead@@waporwave5066

    • @jacques-dev
      @jacques-dev  Год назад +2

      The difference between version 0.10 and version 0.11 is very small for the core ECS, I suggest you go through the tutorial series with 0.10 and follow the migration guide to Bevy 0.11 at the end of the series. All the best learning Bevy!

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

    If the compilation fails due to the error "LINK : fatal error LNK1189: library limit of 65535 objects exceeded", you can add this to your Cargo.toml file
    # Enable a small amount of optimization in debug mode
    [profile.dev]
    opt-level = 1
    # Enable high optimizations for dependencies (incl. Bevy), but not for our code:
    [profile.dev.package."*"]
    opt-level = 3
    The error should only occur on windows.
    You can also speed up compilation by either
    * Adding "bevy = { version = "0.11.2", features = ["dynamic_linking"]}" to your Cargo.toml
    * cargo run --features bevy/dynamic_linking

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

    Sometimes the order of println! at the output are inverted or mixed, why? It's not the same every time the code runs.

    • @jacques-dev
      @jacques-dev  Год назад +1

      Check out 23:20 😉

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

      @@jacques-dev Man your bevy series is really well made, I'm finally starting to understand ECS

  • @romanshatov5815
    @romanshatov5815 10 месяцев назад +1

    Hello, what the point of making functions and structs public?

    • @jacques-dev
      @jacques-dev  10 месяцев назад

      For this specific video, no reason. For later videos, so you can use them from different modules.

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

    Wait... Where are all your semicolons? How are you not getting compiler errors?

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

    Thank for the video
    But It seems there are some changes you need apply them on this course

    • @jacques-dev
      @jacques-dev  Год назад

      This course is for Bevy 0.10, my suggestion is to follow along with Bevy 0.10 and the follow the migration guides at the end. All the best on your Bevy journey!

  • @Ishaan_Garud
    @Ishaan_Garud 11 месяцев назад +2

    Note :-
    Currently as of January 2024 , add_system() is deprecated and instead you need add_systems()

    • @jacques-dev
      @jacques-dev  11 месяцев назад +1

      Yes that is the case with Bevy 0.12

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

    5:16 I consider SQL to be a bad language for a nice internal logic.
    SQL is basically just some functions called on sets like "select(|table| table["Name"] == "Peter", persons.join(units, ...))"
    But instead you have a language like this: "SELECT Name = "Peter" FROM Persons JOIN Units ON ...", and some things are implicitly reordered.
    Why can't data bases just have a C API containing the core logic instead of a new programming language parsed at runtime, which always leads to security errors?

    • @jacques-dev
      @jacques-dev  Год назад

      It requires practice and experience like anything. I am not sure if it's performance or legacy reasons why there isn't a C-like API.

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

      @@jacques-dev Probably legacy reasons. Nowadays the queries would probably be compiled at compile time, not by the data base. I think, I've already seen rust crates having an SQL macro doing this. They still use SQL. Whatever, I'm talking off-topic...

  • @jacques-dev
    @jacques-dev  Год назад +7

    Bevy 0.11 is out now! To follow along with this series, please use Bevy 0.10, and then once you're done, you can follow the migration guide to 0.11 here:
    bevyengine.org/learn/migration-guides/0.10-0.11/

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

    I may be way off here. but Derive loads impl's not macros? what am i missing?

    • @jacques-dev
      @jacques-dev  Год назад

      I think I may have said it funny

  • @jacques-dev
    @jacques-dev  Год назад +4

    Episode 1 Final Code: github.com/frederickjjoubert/learn-bevy/blob/main/src/main.rs

  • @감사합니다잘보겠습니
    @감사합니다잘보겠습니 Год назад +1

    I love you

  • @jupiter-blue
    @jupiter-blue Год назад

    I don't care much for Rust but I'm looking for an alternative to Unity DOTS, and I like the simple semantics here.

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

    FYI the Intermediate rist course recommended here is rubbish, the project section (using the rusty game engine) is completely broke and no one is replying to my questions about the broken game on the first section of the game project.

    • @jacques-dev
      @jacques-dev  Год назад

      I’m sorry to hear you didn’t like the recommendation, I think all the other sections are still very helpful to know.

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

    it's easier to do "cargo add bevy" followed with a "cargo build"

    • @jacques-dev
      @jacques-dev  Год назад

      I like editing the cargo.toml directly :)

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

    Might want to tone down those game sounds a bit...

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

    A bit dry presentation, but content seems nice.

    • @jacques-dev
      @jacques-dev  Год назад

      I don’t think I’ll win any awards for my voice acting skills.

  • @dijego-jelle
    @dijego-jelle 10 месяцев назад

    Keyboard sound way too loud 😢

    • @jacques-dev
      @jacques-dev  10 месяцев назад

      I am sorry to hear it bothered you.

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

    When someone says something is safe it’s most likely the opposite

    • @jacques-dev
      @jacques-dev  Год назад

      Hi, I'm not quite sure what you are referring to?

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

      @@jacques-dev is that I try to ask r/rust why would rust be good for a game engine and benefit. They just end up trolling me or trash talking, but I’m genuinely course to know not trying to hate

    • @jacques-dev
      @jacques-dev  Год назад +2

      @@PraiseAllahu I recommend you join the Bevy discord server, they won't troll you there, they are all very nice and helpful.

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

    VSCode? Nah dude, I use Lapce! Code editor written in Rust, primarily for Rust.

    • @jacques-dev
      @jacques-dev  Год назад +1

      I haven’t heard of that one before! I’ll have to take a look.

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

    Jesus, the stuff with adding parenthesis to make things into a tuple is really ugly.

    • @jacques-dev
      @jacques-dev  Год назад +1

      Tuples are a fairly common data structure, they are pretty useful here. It does take some getting used to though.

  • @Ozzymand
    @Ozzymand 11 месяцев назад

    I love bevy, and the tutorial is good, but that keyboard clicking is so distracting and annoying

    • @jacques-dev
      @jacques-dev  11 месяцев назад

      I’m sorry to hear it bothered you.

  • @asookoo257
    @asookoo257 День назад

    for anyone using .add_system
    if your using bevy past .10
    its add_systems

  • @xyangst
    @xyangst 11 месяцев назад

    background music is way too loud..

    • @jacques-dev
      @jacques-dev  10 месяцев назад

      I am sorry it bothered you.

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

    This is fantastic! Thank you!

    • @jacques-dev
      @jacques-dev  Год назад +1

      My pleasure! Thanks for the kind words.