Raylib Raylib is a [1]free, relatively [2]KISS, [3]portable [4]C (C99) [5]library intended mainly for [6]game development, offering [7]IO handling, [8]2D and [9]3D graphics, audio, loading of different image and 3D formats etc., while restraining from a lot of [10]bullshit of "[11]modern" [12]bloated engines/[13]frameworks such as having tons of [14]dependencies and targeting only very fast computing platforms. Raylib is pretty cool and employs many of the [15]LRS/[16]suckless ideas, even though from our strict point of view it is still a bit more complex than it really needs to be, e.g. by using [17]floating point and relying on [18]GPU accelerated 3D graphics. In terms of [19]bloat it can be seen as a mid way between the mainstream (e.g. [20]Godot) and [21]LRS/[22]suckless (e.g. [23]small3dlib). The following are some features of raylib as of writing this. The good and neutral features seem to be: * written in [24]C99 * no external software [25]dependencies, all 3rd party libraries are packed with raylib (well, kind of, as specific platforms will require OpenGL implementation, windowing library etc.) * no [26]COC detected * supports many systems including [27]GNU/[28]Linux, [29]BSD, [30]Macshit, [31]Winshit, [32]Android, web browser, claims to support even [33]embedded (but probably only the faster, not sure about [34]bare metal due to OpenGL etc.) * NOT a [35]framework, very [36]bullshit-free * permissive [37]zlib [38]license * 2D and 3D support, [39]IO, audio, fonts, math, includes most things you need for games (seems to lack only a [40]physics engine) * can load many file formats ([41]jpg, [42]png, [43]obj, [44]m3d, [45]ttf, [46]wav, [47]flac, [48]mp3, [49]ogg, ...) * bindings to 50+ languages (useless as all you need is [50]C of course) * nice documentation, many examples And some of the bad features are: * 150000+ [51]lines of code * not a [52]header only library, requires building ([53]makefile, optionally with [54]cmake) * using [55]floating point and [56]OpenGL creates complex dependencies and sends a fuck you to small [57]embedded computers * even though abstracted, some software dependencies are still needed depending on the platform, e.g. on GNU/Linux you need to install [58]ALSA, [59]Mesa and [60]X11 Links: 1. free_software.md 2. kiss.md 3. portability.md 4. c.md 5. library.md 6. game.md 7. io.md 8. 2d.md 9. 3d.md 10. bullshit.md 11. modern.md 12. bloat.md 13. framework.md 14. dependency.md 15. lrs.md 16. suckless.md 17. float.md 18. gpu.md 19. bloat.md 20. godot.md 21. lrs.md 22. suckless.md 23. small3dlib.md 24. c99.md 25. dependency.md 26. coc.md 27. gnu.md 28. linux.md 29. bsd.md 30. mac.md 31. windows.md 32. android.md 33. embedded.md 34. bare_metal.md 35. framework.md 36. bullshit.md 37. zlib.md 38. license.md 39. io.md 40. physics_engine.md 41. jpg.md 42. png.md 43. obj.md 44. m3d.md 45. ttf.md 46. wav.md 47. flac.md 48. mp3.md 49. ogg.md 50. c.md 51. loc.md 52. header_only 53. make.md 54. cmake.md 55. float.md 56. opengl.md 57. embedded.md 58. alsa.md 59. mesa.md 60. x11.md