raylib 4.2 released!
New raylib release! Nine months after latest raylib, here it is a new version. It was supposed to be just a small update but, actually, it's a huge update with lots of changes a improvements. It has been possible thanks to the many contributors that has helped with issues and improvements, it's the update with more contributors to date and that's amazing!
Some numbers to start with:
- +200 closed issues (for a TOTAL of 1230!)
- +540 commits since previous RELEASE (for a TOTAL of +6000!)
- +20 functions ADDED to raylib API (for a TOTAL of 502!)
- +60 functions REVIEWED/REDESIGNED
- +70 new contributors (for a TOTAL of +360!)
Highlights for raylib 4.2
:
raylib extra libraries cleanup: raylib has been on diet and all the extra libraries included on previous releases have been removed from raylib. Now raylib only includes the original 7 raylib modules:
rcore
,rlgl
,rshapes
,rtextures
,rtext
,rmodels
andraudio
. But no worries, extra libraries have not been deleted, they have been moved to their own repos for better maintainability and more focus on its functionality. The libraries moved out from raylib repo are:raygui
,physac
,rmem
,reasings
andraudio
(standalone mode). On that same line, a new amazing GitHub group:raylib-extras
has been created by @JeffM2501 to contain raylib extra libraries as well as other raylib add-ons provided by the community. Jeff has done an amazing work on that line, providing multiple libraries and examples for raylib, like custom first-person and third person camera systems, Dear ImGui raylib integration, multiple specific examples and even a complete RPG Game Example! Great work Jeff! :Draylib examples review: The +120 raylib examples have been reviewed to add clearer information about when they were first created (raylib version used) and when they were updated for the last time. But the greatest improvement for users has been the addition of an estimated difficulty level for every example, web has been updated accordingly to reflect those difficulty levels. Now examples are classified with 1 to 4 stars depending on difficulty to help users with their learning process. Personally, I think this "small" addition could be a game-changer to better guide new users on the library adoption! Additionally, this new raylib release includes 7 new examples; the most interesting one:
text_codepoints_loading
that illustrates how to load and draw custom codepoints from a font file, very useful for Asian languages.rres 1.0
: Newrres
resources packaging file-format, including arres-raylib
library implementation andrrespacker
tool.rres
file format has been under development for +8 years and it was originally created to be part of raylib. It was highly inspired by XNA XNB resources file format but design has changed a lot along the years. This first release of the format specs is engine-agnostic and has been designed to be portable to any engine, including lots of professional features like data processing, compression and encryption.raygui 3.2
: The official raylib immediate-mode gui library designed for tools development has been updated to a new version aligned with raylib 4.2. Multiple controls have been reviewed for library consistency, now all controls follow a similar function signature. It has been battle-tested with the development of +8 published tools in the last months. The tools can be seen and used for free in the raylib technologies tools page. Worth mentioning that several of those tools have been open sourced for anyone to use, compile, contribute or learn how the code works.raylib_parser
: Multiple contributors using the tool to automatize bindings creation have contributed with improvements of this tool to parseraylib.h
(and other raylib-style headers) to tokenize its enums, structs and functions. Processed data can be exported to custom file formats (i.e XML, JSON, LUA) for bindings generation or even docs generation if required.New file system API: Current API has been redesigned to be more comprehensive and better aligned with raylib naming conventions, two new functions are provided
LoadDirectoryFiles()
/LoadDirectoryFilesEx()
to load aFilePathList
for provided path, supporting extension filtering and recursive directory scan.LoadDroppedFiles()
has been renamed to better reflect its internal functionality. Now, all raylib functions that start withLoad*()
allocate memory internally and a equivalentUnload*()
function is defined to take care of that memory internally when not required any more!New audio stream processors API (experimental): Now real-time audio stream data processors can be added using callbacks to played Music. It allows users to create custom effects for audio like delays of low-pass-filtering (example provided). The new API uses a callback system and it's still highly experimental, it differs from the usual level of complexity that provides raylib and it is intended for advance users. It could change in the future but, actually,
raudio
module is in the spotlight for future updates; miniaudio implements a new higher-level API that can be useful in the future for raylib.
As always, there are more improvements than the key features listed, make sure to check raylib CHANGELOG for the detailed list of changes; for this release a WARNING
flag has been added to all the changes that could affect bindings or productivity code. raylib keeps improving one more version and a special focus on maintainability has been put on the library for the future. Specific/advance functionality will be provided through raylib-extras repos and raylib main repo devlelopment will be focused on what made raylib popular: being a simple and easy-to-use library to enjoy videogames programming.
Enjoy gamedev/tools/graphics programming! :)
Files
Get raylib
raylib
A simple and easy-to-use library to enjoy videogames programming.
Status | Released |
Category | Tool |
Author | Ray |
Genre | Educational |
Tags | coding, Game engine, learn, Minimalist, Open Source, programming, raylib, tool |
Languages | English |
Accessibility | Configurable controls, Interactive tutorial |
More posts
- raylib 5.5 released!26 days ago
- raylib 5.0 released! 10th anniversary edition!Nov 18, 2023
- raylib 4.5 released!Mar 18, 2023
- raylib 4.0 released! 8th anniversary edition!Nov 04, 2021
- raylib 3.7 released!Apr 26, 2021
- raylib 3.5 released!Dec 25, 2020
- raylib 3.0 released!Apr 01, 2020
- raylib 2.5 released!May 31, 2019
- raylib 2.0 released!Jul 21, 2018
Leave a comment
Log in with itch.io to leave a comment.