I started learning SDL (and computer graphics in general) a few days ago from Lazy Foo Tutorials.
I had problems in the beginning in choosing the right library, but then I just went with SDL.
Now, as I’m interested in Desktop development in general (and not that much into games), I am probably gonna learn some other graphic libraries, maybe even OpenGL later on.
So, my question is:
Will learning SDL make it easier to later learn other graphic libraries (is it a good place to start) ?
Are all of them similar in the way that all programming languages are similar (so that when you learn one, the others come way easier)?
I hope that I didn’t make it way more confusing than it should have been.
Think of SDL not as a graphics library, but as a windowing/multimedia library. There are some useful graphics features that cover the bases needed to make any sort of app, but the real important feature of SDL is that you program to the SDL platform instead of learning Windows API, Linux/X11, Mac, Android, and iOS (and whatever else) APIs. You can use OpenGL, GLES, Vulkan, etc. on top of SDL without worrying about the other stuff, so that graphics API knowledge is completely transferrable.
There are other libraries that cover the same space as SDL, but SDL is a great choice for many people. SDL is written in C, so you miss out on some interface niceties and have just a bunch of functions and structs instead, but it is also extremely portable and fairly lean.