Raylib

De EverybodyWiki Bios & Wiki
Aller à :navigation, rechercher


Erreur Lua dans Module:Bandeau à la ligne 249 : attempt to index field 'wikibase' (a nil value).

Raylib
[[Fichier:Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value). |frameless |upright=1 |alt=Description de l'image Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).. ]]
[[Fichier:Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value). |frameless |Erreur Lua dans Module:Wikidata à la ligne 606 : attempt to index field 'wikibase' (a nil value). |upright=1 |alt=Description de cette image, également commentée ci-après ]]
Erreur Lua dans Module:Wikidata à la ligne 606 : attempt to index field 'wikibase' (a nil value).
Informations
Créateur Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Développé par Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Première version Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Dernière version Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Version avancée Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Dépôt Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Assurance qualité Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Écrit en Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Interface Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Supporte les langages Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Système d'exploitation Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Environnement Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Taille des données Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Formats lus Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Formats écrits Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Langues Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Type Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Licence Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Documentation Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Site web Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).

Chronologie des versions

Raylib est une bibliothèque logicielle multiplateforme (Android, FreeBSD, HTML5 (Emscripten[1]), Linux, MacOS, Oculus Rift CV1 (en), Raspberry Pi[2], Windows[3], ainsi que différents systèmes embarqués) sous licence libre licence zlib/libpng[4], publiée par Ramon Santamaria[5] à partir de 2013, et orientée vers le développement d'application interactives, telles que les jeux. Elle gère 2D, 3D dont l'accélération via OpenGL et OpenGL ES, et comporte des fonctions vectorielles, quaternions, shaders , etc., audio, dont la lecture de modules XM et MOD, réseau ainsi que les applications de réalité virtuelle, en gérant le matériel spécialisé.

Elle est développé en langage C et son API qui se veut simple et légère[6],[7] comporte des bindings dans plus de 50 langages, tels que C, Go, Lua, C++, C#, PHP, Rust, D, Python, Odin, Haskell[8]. Elle peut utiliser les bibliothèques OpenGL jusqu'à 3.3, GL ES 2.0 pour l'accélération matérielle. Elle se base en partie sur le framework GLFW.

Histoire[modifier]

La première version de Raylib a été publiée en [9].

D'après une étude comparative de différentes bibliothèques open source présentée en 2020, Raylib, tout comme Arduino, a une très faible proportion de commits concernant les corrections de bugs, montrant que le projet a atteint la stabilité[10].

Utilisations[modifier]

Raylib est enseigné, par son auteur, dans un module de formation axé sur le développement de jeu vidéo de l'Université polytechnique de Catalogne Barcelonatech[11].

Elle est également utilisé dans des projets d'ingénierie assistée par ordinateur open source, comme dans un projet de conception de l'optique d'un faisceau d’électron[12].

Architecture[modifier]

2017-fr.wp-orange-source.svg
Cette section ne cite pas suffisamment ses sources (mai 2022)
Pour l'améliorer, ajoutez des références vérifiables [comment faire ?] ou le modèle {{Référence nécessaire}} sur les passages nécessitant une source.
Architecture et modules de Raylib.

Depuis sa version 4.0, Raylib est organisé sous forme des modules suivants :

  • « Core » (noyau) gère les entrées, ainsi que la création des fenêtre et du contexte OpenGL.
  • « Models » (modèles) gère le chargement et l'animation des objets 3D.
  • « Raudio » gère le chargement de fichier et flux audio (dont wav, modules), ainsi que la gestion du matériel audio.
  • « Raymath » gère les fonctions mathématiques et modèles vectoriels, matriciels, quaternions, etc
  • « Rlgl » gère l'abstraction du backend OpenGL
  • « Shapes » (formes) gère les formes et polygones 2D ainsi que les détections de collision
  • « Textures » gère le chargement et la manipulation des textures, par le CPU ou le GPU.
  • « Text » (texte) gère tout ce qui est texte, de la gestion des fontes aux traitement des chaînes de caractères.

Récompenses[modifier]

  • 2019 : Google Open Source Peer Bonus[13]
  • 2020 : Epic Mega Grant[14]
  • 2021 : Google Open Source Peer Bonus[15]

Références[modifier]

  1. https://github.com/raysan5/raylib/wiki/Working-for-Web-(HTML5).
  2. (en) Avik Das, « Creating Raspberry Pi applications with Raylib and Ruby », sur Medium.com,
  3. Deitel et Deitel 2022, p. 37.
  4. https://www.raylib.com/license.html
  5. (es) « Entrevista a Ramón Santamaría, creador de la biblioteca gráfica raylib », Mosaic, Universitat Oberta de Catalunya, no 145,‎ (ISSN 1696-3296, DOI 10.7238/m.n145.1702, lire en ligne)
  6. (en) « raylib–A C++ Game Library Perfect For Beginners », sur GameFromScratch,
  7. Raphytator, « Raylib 4 : le framework des vikings pour programmer des jeux vidéo en », sur Gamecodeur.fr,
  8. https://github.com/raysan5/raylib/blob/master/BINDINGS.md
  9. (en) « raylib/HISTORY.md at master · raysan5/raylib », sur GitHub (consulté le 28 mai 2022).
  10. (en) Devansh Tiwari, Hironori Washizaki, Yoshiaki Fukazawa, Tomoyuki Fukuoka et al., « Commit–Defect and Architectural Metrics–based Quality Assessment of C Language », Proceedings of the International Conference on Evaluation of Novel Approaches to Software Engineering, SciTePress,‎ (ISBN 9789897584213, lire en ligne [PDF]).
  11. (es) « Máster en Animation & Digital Arts for AAA Video Games », sur Universitat politècnica de Catalunya Barcelonatech
  12. Pristupchik 2020.
  13. (en) « Google Open Source Peer Bonus winners are here! », sur Google Open Source,
  14. (en) Brian Sharon, « Epic MegaGrants - Fall 2020 Update », sur Unreal Engine,
  15. (en) « Announcing the First Group of Google Open Source Peer Bonus winners in 2021! », sur Google Open Source,

Annexes[modifier]

Bibliographie[modifier]

  • (en) Nikita Pristupchik, « Open-Source CAE for Electron Beam Optics Design: Challenges and Opportunities », International Conference on Actual Problems of Electron Devices Engineering (APEDE), IEEE,‎ , p. 95-99 (DOI 10.1109/APEDE48864.2020.9255595)
  • (en) Paul Deitel et Harvey Deitel, How to Program C, Pearson, coll. « Deitel », (ISBN 978-0-13-739839-3) (ouvrage se basant sur Raylib pour la mise en pratique des exemples)

Lien externe[modifier]

Erreur Lua dans Module:Catégorisation_badges à la ligne 170 : attempt to index field 'wikibase' (a nil value).Erreur Lua dans Module:Suivi_des_biographies à la ligne 189 : attempt to index field 'wikibase' (a nil value).


Autres articles des thèmes Logiciels libres Logiciels libres ET Programmation informatique Programmation informatique : Weboob, Odis

Autres articles des thèmes Informatique ET Programmation informatique Programmation informatique : Zeste de Savoir, Dépôt (informatique)

Autres articles du thème Informatique Informatique : Clément Apap, Plate-forme (informatique), Zeste de Savoir, Frank William Batchou, Tavernier Kit6800, Synchrone (entreprise), Liste d'entreprises canadiennes en intelligence artificielle

Autres articles du thème Logiciels libres Logiciels libres : Code Typhon, DAViCal, ASTRES, Démosphère, Coolplayer, Coyote Linux, Afpy

Autres articles du thème Programmation informatique Programmation informatique : Weboob, Menu de débogage, Odis, Granularité dans le système de classification Info-Muse, Zeste de Savoir, SELFHTML, WebDev


Cet Article wiki "Raylib" est issu de Wikipedia. La liste de ses auteurs peut être visible dans ses historiques et/ou la page Edithistory:Raylib.