RayLib is a free C library ideally suited towards beginners. They just released version 1.8 adding procedural image generation, 3D geometric primitives, PBR material support and more. If you are interested in learning more about RayLib be sure to check out our earlier hands-on look available here.
Details of the release from /r/gamedev:
Procedural image generation functions, a set of new functions have been added to generate gradients, checked, noise and cellular images from scratch. Image generation could be useful for certain textures or learning pourpouses.
Parametric mesh generation functions, create 3d meshes from scratch just defining a set of parameters, meshes like cube, sphere, cylinder, torus, knot and more can be very useful for prototyping or for lighting and texture testing.
PBR Materials support, a completely redesigned shaders and material system allows advance materials definition and usage, with fully customizable shaders. Some new functions have been added to generate the environment textures required for PBR shading and a new complete PBR material example is also provided for reference.
Custom Android APK build pipeline with simple Makefile. Actually, full code building mechanism based on plain Makefile has been completely reviewed and Android building has been added for sources and also for templates building into final APK package. This way, raylib Android building has been greatly simplified and integrated seamlessly into standard build scripts.
rlgl module has been completely reviewed and most of the functions renamed for consistency. This way, standalone usage of rlgl is promoted, with a complete example provided. rlgl offers a pseudo-OpenGL 1.1 immediate-mode programming-style layer, with backends to multiple OpenGL versions.
raymath library has been also reviewed to align with other advance math libraries like GLM. Matrix math has been improved and simplified, some new Quaternion functions have been added and Vector3 functions have been renamed all around the library for consistency with new Vector2 functionality.
As always, examples and templates have been reviewed to work with new version (some new examples have been added), all external libraries have been updated to latest stable version and latest Notepad++ and MinGW have been configured to work with new raylib v1.8.
The complete change log is available here. To learn more or to download RayLib click here.