Yosunnyvim
I say whatever I want, yeah, I do whatever I want, huh

Raylib

raylib

you may wonder as cs student doing some problem solving or studying the basics and taking input and getting output all this inside the terminal can i see what i am doing or when i am going to feel i am doing a real project or by Graphical interface project so, here comes raylib . raylib is a cross-platform open-source software development library. the library was made to create graphical applications and games.

this is raylib’s definition on Wikipedia, it seems not very interesting to read the wiki page of raylib so , i will tell you what i found interesting about it.

we could say raylib is a library made in C that enables you to make a game or graphical interface of your program in such a low level core, as we know what works on c is usually works on cpp and most of cs student know at least on of them (interested in cs in general ) so we could say every cs student can really try it , it is support for multiple platforms, including Windows, Linux, macOS, Raspberry pi, Android and HTML5 . so it works on most platform (you have no excuse not trying it).

what i find interesting about how raylib works, it is built in layers, you write something simple like DrawCircle and that call goes through raylib modules which break it into geometry, then that geometry reaches a module called rlgl which is the bridge between raylib and OpenGL, OpenGL talks to your GPU driver and the driver talks to the actual hardware. one function call, a lot happening underneath it.

you say what ?!you don’t know what is OpenGL, okay so your GPU is just a piece of hardware, it does not speak c, it does not speak python, it speaks its own thing, so someone had to make a common language that any program can use to talk to any GPU, that is OpenGL, it is just a standard that says here is how you ask the GPU to draw things, and every GPU manufacturer implements it in their driver, so your code stays the same and the driver figures out how to actually do it on the hardware.

i heard about raylib from @Loaay wahed , he was talking about it and he wanted to build something with it, and I found a YouTube video by https://www.youtube.com/@HirschDaniel about he making a digital clock on c using raylib so i go with that video to know what is this raylib about, and i found myself trying with him and doing it myself, of course the idea was his idea and the most of the work was done by him i just understand it and write it in my own way and sometimes when i understand something i go and implement it myself.

this project open my eyes on raylib and make me use some of the geometry that i almost forget it and i see a lot of thing i could potentially do now that I know raylib i recommend to any cs student to try raylib it is a very simple and fun library to deal with, i could be a little hard on the geometry but after you do what is in your mind, it is so much fun.

references

Daniel Hirsch video: https://www.youtube.com/watch?v=4GeYKi7IWDA&t=1s

raylib cheatsheet: https://www.raylib.com/cheatsheet/cheatsheet.html

Github repo: https://github.com/yosunnyvim/Digital_clock

Back to top