Тёмный

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

Gamefromscratch
Подписаться 253 тыс.
Просмотров 63 тыс.
50% 1

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
gamefromscratc...
-----------------------------------------------------------------------------------------------------------
Support : / gamefromscratch
GameDev News : gamefromscratc...
GameDev Tutorials : devga.me
Discord : / discord
Twitter : / gamefromscratch
-----------------------------------------------------------------------------------------------------------

Опубликовано:

 

26 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 148   
@gamefromscratch
@gamefromscratch 9 месяцев назад
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 9 месяцев назад
Hey Mike! Thank you very much for another great video and sharing the raylib news! Thanks! :D
@rayecast
@rayecast 7 месяцев назад
Hey @raylibtech! Thank you for your amazing work!
@toffeethedev
@toffeethedev 9 месяцев назад
Best library I've ever used and an absolutely perfect reference for how open source software & their APIs should be designed
@echoptic775
@echoptic775 9 месяцев назад
Wgat games did u make and publish with it?
@igorthelight
@igorthelight 9 месяцев назад
@@echoptic775 Any 2D game, simple 3D game. There is no Editor, so be aware of that! ;-)
@igorthelight
@igorthelight 9 месяцев назад
@Red_Paper6495 True! xD Am I mistaken about Editor tho?
@igorthelight
@igorthelight 9 месяцев назад
@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 9 месяцев назад
Their source code organization is a mess IMHO.
@krank23
@krank23 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 9 месяцев назад
There's a problem of unnecessary complexity in at least C++ libraries (i've never done c#).
@tellsackett4572
@tellsackett4572 6 месяцев назад
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!
@lyghtkruz
@lyghtkruz 9 месяцев назад
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 9 месяцев назад
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!
@ChrisLeeW00
@ChrisLeeW00 9 месяцев назад
My body relaxed as soon as you went to dark mode 😅
@disekjoumoer
@disekjoumoer 9 месяцев назад
I've been wanting to get into Raylib for about 2 years now. Now, I think I will.
@echoptic775
@echoptic775 9 месяцев назад
Wait a few more years, i think the version 10 is gonna be awesome😅
@zezinhoportugues2186
@zezinhoportugues2186 6 месяцев назад
you are just hater@@echoptic775
@rubberduckdebug
@rubberduckdebug 9 месяцев назад
raylib and the other ray libraries are awesome. been using them for my Noita inspired falling sand engine. super amazing stuff
@psyience3213
@psyience3213 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.
@jothamstephens104
@jothamstephens104 3 месяца назад
Which switch Nintendo or another programing term I don't know?
@psyience3213
@psyience3213 3 месяца назад
@@jothamstephens104 yeah Nintendo switch
@beegdigit9811
@beegdigit9811 9 месяцев назад
The function names are so clean and the "c header" reference makes it so easy to play around with
@mission-toast
@mission-toast 9 месяцев назад
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.
@anon_y_mousse
@anon_y_mousse 9 месяцев назад
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 9 месяцев назад
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 9 месяцев назад
@@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 5 месяцев назад
@@cluelessdev3851 3d is a lotta math
@einarsskutans5694
@einarsskutans5694 5 месяцев назад
@@cluelessdev3851 stuff like collisions, game physics, lighting - game engines like unity provide and do the math for you
@nocturne6320
@nocturne6320 9 месяцев назад
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)
@ar_xiv
@ar_xiv 9 месяцев назад
Another thing to note about the installer is the included templates for other common code editors like sublime text etc.
@vikinggameprogrammer7233
@vikinggameprogrammer7233 9 месяцев назад
*sweats in SFML with CMake*
@hxccz
@hxccz 9 месяцев назад
i dont feel bad for you
@yds6268
@yds6268 9 месяцев назад
"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
@pixelfairy
@pixelfairy 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 9 месяцев назад
Yes, it's clearly pronounced "Puh-Nog".
@ggtooez
@ggtooez 9 месяцев назад
It's pronounced Pea-An-Gee, what are you talking about?
@anon_y_mousse
@anon_y_mousse 9 месяцев назад
Clearly it's pronounced Pong.
@grimvian
@grimvian 6 месяцев назад
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 9 месяцев назад
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 9 месяцев назад
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 9 месяцев назад
@@abdullahtrees5204 fair enough, but figuring out what flags I needed to begin with took a bit of research
@garrettbates2639
@garrettbates2639 9 месяцев назад
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 9 месяцев назад
@@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 9 месяцев назад
@@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 5 месяцев назад
how would you handle networking on raylib tho? Can I use sockets without the need of opening ports?
@HiddenAsbestos
@HiddenAsbestos 9 месяцев назад
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 9 месяцев назад
"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.
@disruptive_innovator
@disruptive_innovator 9 месяцев назад
Notepad++ has a dark mode? I did not know
@Light-f5g
@Light-f5g 6 месяцев назад
Hello thank for information and i new to programming and i chose c so could you make a tutorial raylib in c
@Light-f5g
@Light-f5g 3 месяца назад
@@marting.9613 What weird about it
@realdlps
@realdlps 9 месяцев назад
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 9 месяцев назад
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 9 месяцев назад
Raylib has C# bindings
@anon_y_mousse
@anon_y_mousse 9 месяцев назад
@@hipno3477 Just going to elevate this comment as it has bindings for so many languages.
@andi_decha
@andi_decha 4 месяца назад
i love raylib :)
@UltimatePerfection
@UltimatePerfection 9 месяцев назад
Tip for maze games: You can win most by always turning right when you come across a split in corridor.
@peddfast
@peddfast Месяц назад
Not if there are loops
@UltimatePerfection
@UltimatePerfection Месяц назад
@@peddfast That's why I said most, not all.
@grimvian
@grimvian 9 месяцев назад
Works fine in Linux Mint (ditching Windows) and CodeBlocks.
@jonstarritt848
@jonstarritt848 9 месяцев назад
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.
@nefrace
@nefrace 9 месяцев назад
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 9 месяцев назад
@@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++?
@felixlipski3956
@felixlipski3956 9 месяцев назад
game fans waited for gta 6 game enjoyers waited for this
@gokudomatic
@gokudomatic 9 месяцев назад
Can I use raylib for 3DS homebrew?
@m3nguele
@m3nguele 9 месяцев назад
I think you can, just make sure you`re using the tooling right, it can be really pesky sometimes
@Anthony-vb7sj
@Anthony-vb7sj 3 месяца назад
Is there a way to Use a 3D Physics engine on raylib? Like libgdx ( Bullet physics ) or JOLT?
@Console.Log01
@Console.Log01 9 месяцев назад
I just started remaking my c++ game like 2 days ago and not in raylib
@EmiLoomistar
@EmiLoomistar 9 месяцев назад
I like raylib
@EquaTechnologies
@EquaTechnologies 9 месяцев назад
LESS GO!!!
@spider853
@spider853 9 месяцев назад
for a graphics processing application plugin is it easy to use raylib for render to texture effects?
@l_t_m_f
@l_t_m_f 9 месяцев назад
took me a while to understand what gooey was xD (GUI)
@arashikou6661
@arashikou6661 9 месяцев назад
Congrats on learning!
@anon_y_mousse
@anon_y_mousse 9 месяцев назад
It's funny because there's one guy on RU-vid that keeps pronouncing it gwee and I've only ever heard it pronounced as gooey.
@l_t_m_f
@l_t_m_f 9 месяцев назад
@@anon_y_mousse idk I've always said "Gee-You-I" like spelling the letters of the acronym.
@anon_y_mousse
@anon_y_mousse 9 месяцев назад
@@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.
@buriedbones-nh9xr
@buriedbones-nh9xr 3 месяца назад
Does it install faster if you find all the files ?
@jmschl96
@jmschl96 9 месяцев назад
Please make a full tutorial series 😊
@FoxInFlame
@FoxInFlame 9 месяцев назад
I'm a big MonoGame (C#) user, does anyone know how does compares in terms of 3D/console development?
@gargamel3478
@gargamel3478 9 месяцев назад
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 9 месяцев назад
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.
@Mempler
@Mempler 9 месяцев назад
I forgot, did i ping you on twitter about raylib or not? i think i did for bevy though
@justonlyone7409
@justonlyone7409 9 месяцев назад
How can we use in C++ for online gaming services and monetization? for example, lobby, matchmaker, chat, advertise in-app billing?
@DetectivePoofPoof
@DetectivePoofPoof 9 месяцев назад
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 9 месяцев назад
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.
@angelcaru
@angelcaru 6 месяцев назад
why tf are you using Windows
@zizzyballuba4373
@zizzyballuba4373 9 месяцев назад
raylib font is too thin
@itsasecrettoeverybody
@itsasecrettoeverybody 9 месяцев назад
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 9 месяцев назад
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 9 месяцев назад
@@skaruts there are 2 bindings for python one is more c like the other is more photonic. I will look into it again later.
@JavierGuerra_g
@JavierGuerra_g 9 месяцев назад
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.
@bes12000
@bes12000 9 месяцев назад
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 9 месяцев назад
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 9 месяцев назад
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 9 месяцев назад
@@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 9 месяцев назад
use the premake version It's as simple as: ./premake5 gmake2 make
@anon_y_mousse
@anon_y_mousse 9 месяцев назад
@@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.
@RandomNoob1124
@RandomNoob1124 9 месяцев назад
No point in raylib when bevy exist
@GoodRiddanceToToryFilth
@GoodRiddanceToToryFilth 9 месяцев назад
🤡
@Clawthorne
@Clawthorne 9 месяцев назад
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 9 месяцев назад
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 9 месяцев назад
@@Clawthorne don’t know what you’re talking about.
@RandomNoob1124
@RandomNoob1124 9 месяцев назад
@@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.
@oliverwooding2066
@oliverwooding2066 9 месяцев назад
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 9 месяцев назад
consider dont using rust
@oliverwooding2066
@oliverwooding2066 9 месяцев назад
@@hxccz is it so unreasonable to want to use a language that isn’t at least 30 years old?
@ProfShibe
@ProfShibe 8 дней назад
@@oliverwooding2066 actually yeah lol
@edinetgrunhed6000
@edinetgrunhed6000 Месяц назад
is raylib 5 support multiplayer and network library available?
@PixelMagic2
@PixelMagic2 5 месяцев назад
try to watch this video at 2x
@33ordie
@33ordie 9 месяцев назад
Hey GFS you haven't explained what was added changed, beside the rcore and the funky website :/
@AntonioLatronicoDeveloper
@AntonioLatronicoDeveloper 9 месяцев назад
Dang, I really hoped they improved model animations and lighting..😢 oh well
@PurpleKnightmare
@PurpleKnightmare 9 месяцев назад
Lighting is handled by shaders and has nothing to do with raylib.
@AntonioLatronicoDeveloper
@AntonioLatronicoDeveloper 9 месяцев назад
@@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
@ExtraLocks
@ExtraLocks 9 месяцев назад
I can't hardly wait Unreal Engine Monthly Giveaway.. I ♥ Unreal Engine 😍🥰 True Fan.
@MainWorldTree
@MainWorldTree 9 месяцев назад
Pin me pls
@2dapoint424
@2dapoint424 9 месяцев назад
Pin!
Далее
Bevy: A quick introduction
7:20
Просмотров 15 тыс.
I made the same game in Assembly, C and C++
4:20
Просмотров 735 тыс.
Cascadeur 2024.2 Released - This is AI Done Right!
9:06
Waiting For Godot... 4.4
9:40
Просмотров 6 тыс.
Getting Started with Raylib - C Tutorial
30:34
Просмотров 57 тыс.
The Unity Run-Time Fee is Dead!
10:45
Просмотров 48 тыс.
Giving Personality to Procedural Animations using Math
15:30
GTA3 Code Review: Weapons, Vehicles, Cops and Gangs
15:00