RayLib 5 Released - The Easiest C/C++ Game Library Just Got Even Better

Sdílet
Vložit
  • čas přidán 3. 12. 2023
  • Raylib 5 was just (well... two weeks ago, sorry about that) released and it also marks the 10 year anniversary since Raylib 1 was first unleashed on the world.
    Raylib shines in that it is perhaps the easiest to use C based game development framework out there, but there are also language bindings for just about every single programming language in use today.
    In this video I will show just how easy it is to get up and running with RayLib 5, then go over the new features in Raylib 5.
    Links
    gamefromscratch.com/raylib-5-...
    -----------------------------------------------------------------------------------------------------------
    Support : / gamefromscratch
    GameDev News : gamefromscratch.com
    GameDev Tutorials : devga.me
    Discord : / discord
    Twitter : / gamefromscratch
    -----------------------------------------------------------------------------------------------------------
  • Věda a technologie

Komentáře • 145

  • @gamefromscratch
    @gamefromscratch  Před 5 měsíci +5

    Links
    gamefromscratch.com/raylib-5-0-released/
    -----------------------------------------------------------------------------------------------------------
    *Support* : www.patreon.com/gamefromscratch
    *GameDev News* : gamefromscratch.com
    *GameDev Tutorials* : devga.me
    *Discord* : discord.com/invite/R7tUVbD
    *Twitter* : twitter.com/gamefromscratch
    -----------------------------------------------------------------------------------------------------------

  • @raylibtech
    @raylibtech Před 5 měsíci +159

    Hey Mike! Thank you very much for another great video and sharing the raylib news! Thanks! :D

    • @rayecast
      @rayecast Před 3 měsíci +4

      Hey @raylibtech! Thank you for your amazing work!

  • @toffeethedev
    @toffeethedev Před 5 měsíci +169

    Best library I've ever used and an absolutely perfect reference for how open source software & their APIs should be designed

    • @echoptic775
      @echoptic775 Před 5 měsíci +2

      Wgat games did u make and publish with it?

    • @igorthelight
      @igorthelight Před 5 měsíci +6

      @@echoptic775 Any 2D game, simple 3D game.
      There is no Editor, so be aware of that! ;-)

    • @igorthelight
      @igorthelight Před 5 měsíci +3

      @@Red_Paper6495 True! xD
      Am I mistaken about Editor tho?

    • @igorthelight
      @igorthelight Před 5 měsíci

      @@Red_Paper6495 Same for almost all game frameworks. It's fine for a small project and not so fine even for a medium one ;-)

    • @vyking1972
      @vyking1972 Před 5 měsíci +1

      Their source code organization is a mess IMHO.

  • @krank23
    @krank23 Před 5 měsíci +9

    I'm using the C# bindings for Raylib when teaching programming… an absolute godsend! Most other graphics librarties require tons of boilerplate or tooling (looking at you, monogame) but Raylib Just Works. My students can just add the dependency to their projects, dotnet restore, and be up and running with really a bare minimum of code.

    • @psyience3213
      @psyience3213 Před 5 měsíci +2

      There's a problem of unnecessary complexity in at least C++ libraries (i've never done c#).

  • @lyghtkruz
    @lyghtkruz Před 5 měsíci +17

    Thanks for bringing this to my attention. I was developing my own engine using LibSDL once upon a time in c++ for GNU/Linux and Windows. I've been using Godot for a few years now, but if I ever feel the need to scratch that c++ itch, this looks pretty amazing.

  • @edwoodgrant
    @edwoodgrant Před 5 měsíci +18

    The SDL backend is pretty imporant, much more thna just a testbd.That's because SDL is ported to almost everthing, including modern consoles.
    So having that backend enabled should allow for console export, which, of course, is pretty neat!

  • @psyience3213
    @psyience3213 Před 5 měsíci +9

    This is an absolute gem for me. As someone who programs as a hobby, I'm always hesitant to really start delving into a whole framework just to do, sprites, or whatever. I like the lower level programming and and design of things, and i always find myself just going to python when i want to graphics or GUI's or whatever because it's just so much freaking easier. But I dislike the control you lose from going to C++ to python. I like making own dynamic arraylists and smart pointers and stuff like that. I will definitely be using this to create a game.
    AND you can program for the Switch!? Sweet.

  • @tellsackett4572
    @tellsackett4572 Před 2 měsíci +1

    You’re pulling my leg: you’re telling me this is a simplistic-in-design, C-compatible, open-source, highly portable/adaptable, well-documented, Linux-compatible (AND BSD compatible TO BOOT) set of graphics libraries that even has 3D capabilities!! It sounds BEAUTIFUL; thanks for covering this!

  • @disekjoumoer
    @disekjoumoer Před 5 měsíci +15

    I've been wanting to get into Raylib for about 2 years now. Now, I think I will.

    • @echoptic775
      @echoptic775 Před 5 měsíci +3

      Wait a few more years, i think the version 10 is gonna be awesome😅

    • @zezinhoportugues2186
      @zezinhoportugues2186 Před 2 měsíci

      you are just hater@@echoptic775

  • @mission-toast
    @mission-toast Před 5 měsíci +5

    Thanks for bringing this to my attention! Up until now, I hadn't heard of RayLib. I've always been curious how a pure C-based framework might perform vs. the alternatives.

  • @rubberduckdebug
    @rubberduckdebug Před 5 měsíci +10

    raylib and the other ray libraries are awesome. been using them for my Noita inspired falling sand engine. super amazing stuff

  • @ar_xiv
    @ar_xiv Před 5 měsíci +9

    Another thing to note about the installer is the included templates for other common code editors like sublime text etc.

  • @nocturne6320
    @nocturne6320 Před 5 měsíci +6

    Used RayLib in C# and it was great, functions are pretty much 1:1 with C, except you use them trough the Raylib class. (also no hassle with setting up the build process and all of the other complications of using C)

  • @beegdigit9811
    @beegdigit9811 Před 5 měsíci +8

    The function names are so clean and the "c header" reference makes it so easy to play around with

  • @ChrisLeeW00
    @ChrisLeeW00 Před 5 měsíci +8

    My body relaxed as soon as you went to dark mode 😅

  • @anon_y_mousse
    @anon_y_mousse Před 5 měsíci +6

    I'm not sure I'd call it a game library, but more of a graphics library. To do anything complex, you still need to know a lot of math, because it's not a game engine, but it does get rid of an absolute ton of boilerplate nonsense that no one should have to bother with. It's kind of amazing how easy it is to use and how easy it is for other languages to bind to it. I can certainly see it taking off as a means of doing game jams and the like because of its simplicity.

    • @cluelessdev3851
      @cluelessdev3851 Před 5 měsíci

      can you elaborate? As someone who has never delved into that side of game programming, what math or engine aspects someone has to develop to make a working game (not just a play thingy)
      for what I've seen it includes input, graphics, audio, etc. But am fascinated that if for example Raylib includes all that shabang, what else would one need.

    • @anon_y_mousse
      @anon_y_mousse Před 5 měsíci

      @@cluelessdev3851 Well, after you've created the assets that you'll use, possibly with Blender if you're going the open source route, then you need to tell it what to load, in what way, where on screen to load things, which involves opening a context in whatever graphics library you use for the backend, OpenGL or Vulkan, which you won't have to decide if you use your system packages, assuming your system has a RayLib package, and you'll have to create the main game loop and logic. It doesn't provide a scripting language nor link such a thing into your app, though that's not too difficult to do, all things considered. I dislike certain aspects of Lua, but if you want a scripting language for your game you might find it more than adequate. Or if you've got the time and skill you could write a custom one or you could just do hot reloading and write plugins in the same language you're writing your game in. It would be interesting if someone made a complete game engine using RayLib and used some custom BASIC variant for the scripting language. *nudge*

    • @jedsiecz
      @jedsiecz Před měsícem

      @@cluelessdev3851 3d is a lotta math

    • @einarsskutans5694
      @einarsskutans5694 Před 28 dny

      @@cluelessdev3851 stuff like collisions, game physics, lighting - game engines like unity provide and do the math for you

  • @vikinggameprogrammer7233
    @vikinggameprogrammer7233 Před 5 měsíci +9

    *sweats in SFML with CMake*

    • @hxccz
      @hxccz Před 5 měsíci

      i dont feel bad for you

  • @spider853
    @spider853 Před 5 měsíci

    for a graphics processing application plugin is it easy to use raylib for render to texture effects?

  • @pixelfairy
    @pixelfairy Před 5 měsíci +9

    One of PNGs defining features is the unambiguous pronunciation, ping. It was designed as a replacement for gif. So not only is it full color, with alpha, and immune to Unisys trying to sue the internet, its easy to pronounce.

    • @vordrax1014
      @vordrax1014 Před 5 měsíci +7

      Yes, it's clearly pronounced "Puh-Nog".

    • @ggtooez
      @ggtooez Před 5 měsíci +6

      It's pronounced Pea-An-Gee, what are you talking about?

    • @anon_y_mousse
      @anon_y_mousse Před 5 měsíci +1

      Clearly it's pronounced Pong.

  • @grimvian
    @grimvian Před 2 měsíci

    At 1:07 protected from what - telemetry...
    Learned an advanced Basic 40 years ago with a real inline assembler(6502), procedures and when a computer took about one sec. to boot. Graphics and sounds was also included and it was a cozy time and a totally new world.
    Now I'm using Linux Mint, Raylib, Code::Blocks and programming in C99 and it's very nice. I have almost finished a small relational database(2500 lines of code) and using Raylib for the graphical interface. The executable is about one megabyte and it runs very fast even with my limited hobby skills.
    The easiest solution for me to use Raylib was a download, extract it and making path for the compiler and that's almost it.

  • @Im_Ninooo
    @Im_Ninooo Před 5 měsíci +7

    years ago I wanted to create a super simple "game" with moving sprites and the Go binding had a bug that prevented me from loading image files so I had to use C and the experience was pretty bad. installing dependencies was kinda confusing and the compilation command was ridiculously long (being used to just typing "go build"). I'm glad to see they have streamlined the process!

    • @abdullahtrees5204
      @abdullahtrees5204 Před 5 měsíci +10

      No one actually compiles C/C++ projects by hand, they run a makefile script by typing `make build`, so it is pretty much the same.

    • @Im_Ninooo
      @Im_Ninooo Před 5 měsíci

      @@abdullahtrees5204 fair enough, but figuring out what flags I needed to begin with took a bit of research

    • @garrettbates2639
      @garrettbates2639 Před 5 měsíci

      Most of the time to build a C project you just need to do:
      ./configure && make build && make install
      Or some variant thereof. A lot of projects are configured with autotools or cmake to handle the build pipeline, and don't usually require too much work to get running. Sometimes you'll be missing a dependency, but if you're on a Linux machine or using WSL, then it's usually as simple as searching the package repository for the missing dependency and then installing it.
      But some projects will also just include their dependencies as a git submodule, so sometimes you don't even need to do that because you can just clone the repository recursively.

    • @Im_Ninooo
      @Im_Ninooo Před 5 měsíci

      @@garrettbates2639 well, I'm not a C developer so I wouldn't know how to set that up. I only used C because I had to.

    • @anon_y_mousse
      @anon_y_mousse Před 5 měsíci

      @@garrettbates2639 I think you're confusing make and cmake, which the latter always has the recommendation to `mkdir build; cd build; cmake ..` before building the project. Also, it should be `sudo make install` as things are often installed where only root has access.

  • @LeFede
    @LeFede Před měsícem

    how would you handle networking on raylib tho? Can I use sockets without the need of opening ports?

  • @UltimatePerfection
    @UltimatePerfection Před 5 měsíci +6

    Tip for maze games: You can win most by always turning right when you come across a split in corridor.

  • @yds6268
    @yds6268 Před 5 měsíci +2

    "Raylib has no external dependencies" - it does though. On Windows those are just standard libraries that are already included in the system. On Linux you need to install several dependencies (and link them if you're compiling manually). Just a heads-up

  • @justonlyone7409
    @justonlyone7409 Před 5 měsíci

    How can we use in C++ for online gaming services and monetization? for example, lobby, matchmaker, chat, advertise in-app billing?

  • @grimvian
    @grimvian Před 5 měsíci +1

    Works fine in Linux Mint (ditching Windows) and CodeBlocks.

  • @Mempler
    @Mempler Před 5 měsíci

    I forgot, did i ping you on twitter about raylib or not?
    i think i did for bevy though

  • @jonstarritt848
    @jonstarritt848 Před 5 měsíci +2

    A simple trick to get out of a maze, put your left hand on the wall, don't remove it, and follow it around to the exit.

  • @HiddenAsbestos
    @HiddenAsbestos Před 5 měsíci +19

    Overall I like the library, but the C API pollutes the namespace something awful - #define WHITE , conflicts with functions, etc. I'm shocked that they don't stick a prefix in front of all that, like Allegro's 'al_' prefix. Thankfully there seems to be a C++ wrapper that shields you from it. Odd choice though.

    • @ProtossOP
      @ProtossOP Před 5 měsíci +1

      "C API pollutes the namespace"
      Sure but the 'al_' prefix example pollutes function names which imo is worse. I mean I understand why prefixes are used that way(because C has no namespaces) but it still looks bad, never mind typing prefix every single time.
      P.S. I'm a C# dev that dabbles sometimes in C so take my opinion with a big grain of salt.

  • @nefrace
    @nefrace Před 5 měsíci +2

    The only thing that bugs me that I want to use it with Odin lang and export games to browser. And it seems that that particular task is not really straightforward. The wiki of Raylib only mentions working with C/C++ and Emscripten.
    Maybe someone did try the exact same thing as me?

    • @nefrace
      @nefrace Před 5 měsíci +2

      @@rytif well i can use Odin itself with something like TIC-80 or in desktop-only apps. And you actually can compile your code to WASM. The only problem here is with Raylib as I can see.
      Also is it possible to build Raylib app for WASM with Zig or Rust? Or do you *need* to use C/C++?

  • @oliverwooding2066
    @oliverwooding2066 Před 5 měsíci +1

    do you know of anything like raylib in the rust world? the raylib bindings for rust are still on 4.x, and feel very nonnative

    • @hxccz
      @hxccz Před 5 měsíci +4

      consider dont using rust

    • @oliverwooding2066
      @oliverwooding2066 Před 5 měsíci

      @@hxccz is it so unreasonable to want to use a language that isn’t at least 30 years old?

  • @happygofishing
    @happygofishing Před 5 měsíci +1

    With SDL, hopefully raylib works on wayland now.

  • @FoxInFlame
    @FoxInFlame Před 5 měsíci

    I'm a big MonoGame (C#) user, does anyone know how does compares in terms of 3D/console development?

  • @realdlps
    @realdlps Před 5 měsíci +5

    Well this kind of sucks, I completely forgot about raylib when I started making my engine so I went with monogame.
    It's not like I am fully committed but I absolutely love C# now and I don't feel like working with C or C++ anymore. Did I mention how easy C# is to learn? I had never used it or Java which is apparently similar, I only used C++, Rust and Python before and now C# is my go to.

    • @johnpekkala6941
      @johnpekkala6941 Před 5 měsíci +2

      C# is indeed nice to work with in general. I it is a bit like Java for sure. C# was actually created as I understand because of a licence brawl with Oracle when Microsoft put their own version of Java: J++, into Visual Studio and so they were forced to scrap J++ and they then created C# as the replacement wich was actually a good thing. Compared to Java C# is for one thing much less verbose and u dont have things like for example "Class.Class.Class.Class.Class.Class.Function()" wich seems to be a rule more or less with Java that u bury everything under at least like 7 layers of subclasses, boilerplate and other stuff. Was a while since I coded Java now however so this might as well have changed.

    • @hipno3477
      @hipno3477 Před 5 měsíci +6

      Raylib has C# bindings

    • @anon_y_mousse
      @anon_y_mousse Před 5 měsíci

      @@hipno3477 Just going to elevate this comment as it has bindings for so many languages.

  • @gokudomatic
    @gokudomatic Před 5 měsíci +3

    Can I use raylib for 3DS homebrew?

    • @m3nguele
      @m3nguele Před 5 měsíci +1

      I think you can, just make sure you`re using the tooling right, it can be really pesky sometimes

  • @EquaTechnologies
    @EquaTechnologies Před 5 měsíci

    LESS GO!!!

  • @disruptive_innovator
    @disruptive_innovator Před 5 měsíci +2

    Notepad++ has a dark mode? I did not know

  • @Console.Log01
    @Console.Log01 Před 5 měsíci +1

    I just started remaking my c++ game like 2 days ago and not in raylib

  • @andi_decha
    @andi_decha Před 18 dny

    i love raylib :)

  • @user-nn3tb1bz4y
    @user-nn3tb1bz4y Před 2 měsíci

    Hello thank for information and i new to programming and i chose c so could you make a tutorial raylib in c

  • @felixlipski3956
    @felixlipski3956 Před 5 měsíci

    game fans waited for gta 6
    game enjoyers waited for this

  • @jmschl96
    @jmschl96 Před 5 měsíci +1

    Please make a full tutorial series 😊

  • @EmiLoomistar
    @EmiLoomistar Před 5 měsíci

    I like raylib

  • @l_t_m_f
    @l_t_m_f Před 5 měsíci +1

    took me a while to understand what gooey was xD (GUI)

    • @arashikou6661
      @arashikou6661 Před 5 měsíci

      Congrats on learning!

    • @anon_y_mousse
      @anon_y_mousse Před 5 měsíci

      It's funny because there's one guy on CZcams that keeps pronouncing it gwee and I've only ever heard it pronounced as gooey.

    • @l_t_m_f
      @l_t_m_f Před 5 měsíci

      @@anon_y_mousse idk I've always said "Gee-You-I" like spelling the letters of the acronym.

    • @anon_y_mousse
      @anon_y_mousse Před 5 měsíci

      @@l_t_m_f Depending on who I'm talking with I'll do that too, to illustrate that it's an acronym usually. If I'm talking to someone else who programs I'll just say gooey.

  • @33ordie
    @33ordie Před 5 měsíci +1

    Hey GFS you haven't explained what was added changed, beside the rcore and the funky website :/

  • @IzimDev
    @IzimDev Před měsícem

    try to watch this video at 2x

  • @zizzyballuba4373
    @zizzyballuba4373 Před 5 měsíci

    raylib font is too thin

  • @gargamel3478
    @gargamel3478 Před 5 měsíci +3

    Raylib is better than SDL, SFML and all these, as it's simple. You can create a projects within seconds, and it has builtin functions for transparency, rotating, sound and many other. The only con is that it's a bit bloated.

    • @RobertWinkler25
      @RobertWinkler25 Před 5 měsíci +2

      That's comparing apples and oranges. SDL and SFML (and GLFW) despite having some extra features are fundamentally cross platform windowing and input libraries while Raylib has orders of magnitude more (and higher level/abstraction) features because it is an all in one game making library. To Raylib, SDL and GLFW are just backends.

  • @DetectivePoofPoof
    @DetectivePoofPoof Před 5 měsíci +16

    OK so lemme get this strait... They put a goddamn whole-ass video game in the installer but NOT the option to choose which folder you wanna put the files in?!?!
    See this is the problem with open-source projects, you can't just get up from your desk and go slap the fear of god in whoever it was responsible for that.

    • @PurpleKnightmare
      @PurpleKnightmare Před 5 měsíci +6

      The thing is, the installer is also unnecessary. The best way to get started is game-premake, the installer is for those who used it from the start really and to show people that there is an installer. You can use the installer in your own games.

  • @itsasecrettoeverybody
    @itsasecrettoeverybody Před 5 měsíci +1

    I wanted to use it with python, but i found the documentation to be very bad, for python. I will try to use it with C some day

    • @skaruts
      @skaruts Před 5 měsíci +6

      I think you should be able to use the C documentation without issues, though. I've never used the python bindings, but bindings are usually just a mirror image of the C API. If there are any differences in the bindings, they're probably small, and they most likely follow some pattern you can pick up on.

    • @itsasecrettoeverybody
      @itsasecrettoeverybody Před 5 měsíci +1

      @@skaruts there are 2 bindings for python one is more c like the other is more photonic. I will look into it again later.

  • @angelcaru
    @angelcaru Před 2 měsíci +1

    why tf are you using Windows

  • @bes12000
    @bes12000 Před 5 měsíci +1

    would love to use this on Linux but it appears I have to compile it from source which is dumb, there are newer installer methods for Linux, so why arent those used?.. might be better off downloading the windows version and running it through wine..

    • @hazapple
      @hazapple Před 5 měsíci

      It probably varies by distro, but I was able to install it through my package manager. I've only done a few examples, though, so I'm not an expert.

    • @PurpleKnightmare
      @PurpleKnightmare Před 5 měsíci +6

      What are you talking about?
      It is up to you how you use raylib, the best way is to have it as part of the project and compile along with the game.

    • @bes12000
      @bes12000 Před 5 měsíci

      @@PurpleKnightmare im talking about running it as a stand alone to play around with, thats what it appears mike is doing in this video.. any linux version of any app needs to have an option to just directly install it via terminal or have an appinstaller version or just a standard zipped app that I can unzip and just run without needing to compile it first

    • @hwstar9416
      @hwstar9416 Před 5 měsíci

      use the premake version
      It's as simple as:
      ./premake5 gmake2
      make

    • @anon_y_mousse
      @anon_y_mousse Před 5 měsíci

      @@bes12000 You don't run it as a standalone anything. The installer program he's using to install it on Windows has a game built-in, but the library itself does not. You'd need to build an example project to get something like that. And building it is super easy, barely an inconvenience, even if your distro doesn't have a package. Just open a terminal, type git clone {url from GH}; cd raylib; mkdir build; cd build; cmake ..; make -j8; and if it fails because you don't have glfw installed, then do the same for it and just rm -rf the build directory in RayLib's directory then continue from the point of mkdir.

  • @JavierGuerra_g
    @JavierGuerra_g Před 5 měsíci +1

    yes, if you miss 80-column UIs from the 80s, then do turn dark mode on.
    otherwise, just dial down the brightness and keep the light mode. your visual acuity (and font engine) will thank you.

  • @AntonioLatronicoDeveloper
    @AntonioLatronicoDeveloper Před 5 měsíci +1

    Dang, I really hoped they improved model animations and lighting..😢
    oh well

    • @PurpleKnightmare
      @PurpleKnightmare Před 5 měsíci +8

      Lighting is handled by shaders and has nothing to do with raylib.

    • @AntonioLatronicoDeveloper
      @AntonioLatronicoDeveloper Před 5 měsíci

      @@PurpleKnightmare in the version 4 they added (I don't remember if it was created by an external contributor or not)an experimental RLGL example of dynamic lights using fragment shaders and it was a nice starting point for people who are not so experienced with shader programming

  • @user-hi8dt1qe3e
    @user-hi8dt1qe3e Před 5 měsíci

    I can't hardly wait Unreal Engine Monthly Giveaway.. I ♥ Unreal Engine 😍🥰 True Fan.

  • @MainWorldTree
    @MainWorldTree Před 5 měsíci

    Pin me pls

  • @kishirisu1268
    @kishirisu1268 Před 5 měsíci

    Do not confuse Raylib with game dev frameworks, as Raylib creator said himself - Raylib is for learning, not for actual game development.

    • @raylibtech
      @raylibtech Před 5 měsíci +21

      As far as I remember, I never said it can't be used for actual game development.

    • @anon_y_mousse
      @anon_y_mousse Před 5 měsíci +5

      I'd wager he said it's not a game engine, which it's not, but it most certainly can be used for game development. If you are into making games, I'd encourage you to give it a try because you might find yourself enjoying it.

    • @zytr0x108
      @zytr0x108 Před 4 měsíci +3

      I don’t see any reason why it shouldn’t be used for actual professional game development. It seems to me that it’s basically a C equivalent to MonoGame/XNA which was used for some absolute gems.

  • @RandomNoob1124
    @RandomNoob1124 Před 5 měsíci +1

    No point in raylib when bevy exist

    • @BoredOfUnityShills
      @BoredOfUnityShills Před 5 měsíci +2

      🤡

    • @Clawthorne
      @Clawthorne Před 5 měsíci +18

      Raylib: C based with bindings for basically every language.
      Bevy: Rust based with no bindings. Use rust or gtfo.
      Doesn't look that superior to me.

    • @rkvkydqf
      @rkvkydqf Před 5 měsíci +7

      Bevy tried to be a full on game engine with its own ECS and stuff. Raylib is more like Pygame, a simple self-contained framework to render stuff, leaving everything up to you. I actually consider more minimalist libraries like Raylib to be superior to larger efforts like Beavy, very often you just need some graphics with no bloat but don't want to go learn OpenGL.

    • @RandomNoob1124
      @RandomNoob1124 Před 5 měsíci

      @@Clawthorne don’t know what you’re talking about.

    • @RandomNoob1124
      @RandomNoob1124 Před 5 měsíci

      @@rkvkydqf this guy knows what he’s talking about. Great comment. I agree 100%. But having an ecs along with the use of rust does make bevy really good imo. Rust avoids a lot of the bothersome issues of typical systems programming, also is much much faster than most system programming languages. Also more secure.