@hazlin OpenGL 4
It manages a lot of the fiddly annoying stuff for you while giving you the full power of the GPU. It's pretty easy to get a window up and a context attached with GLEW. There are some libs out there to do that stuff, but why? It's not particularly hard.
My editor is effectively a really boring 2D OpenGL game: https://github.com/yzziizzy/gpuedit
I also recommend using some good C data structure libs, like stb or my own sti: https://github.com/yzziizzy/sti Or you could write your own if you want the experience. Just make sure to learn and use the techniques from stb or sti in making typesafe generic data structures in C.
And you'll need a math library. I couldn't find a good one in pure C, so I wrote my own: https://github.com/yzziizzy/c3dlas
GNU social JP is a social network, courtesy of GNU social JP管理人. It runs on GNU social, version 2.0.2-dev, available under the GNU Affero General Public License.
All GNU social JP content and data are available under the Creative Commons Attribution 3.0 license.