Hi! I'm a university student studying game development. I've just recently started to build what I intend to be my first "serious" game engine in C++.
So I've been researching, reading architecture books and doing tutorials. I've got a lot planned but there are still some decisions I'm in two minds about, I was hoping I could run some of them past you guys and get some opinions and advice before I sink hours into a lost cause XD.
The first matter of concern for me is SDL. I was really tempted to use SDL at start, but now I'm having some reservations. Eventually, I'd like to support multiple renderers with my engine. University uses DirectX for my upcoming graphics course, but I'd love the cross compatibility of OpenGL too. SDL's support for both made me include it in the plan, it could handle my input and sound too. It was also compatible with Emscripten, which I'd also like to try at some point.
The problems are that, for what I'll be using of it, it's a rather large library with a lot of functionality that's useless to me. I know it's over head is supposed to be quite low, but I still wonder if a simpler library would be better. The other problem is sound. I was looking into SDL sound before and saw that 3D sound isn't natively supported. There are solutions, but the sound engine is apparently mediocre and people where suggesting to use OpenAL.
Sounds great, but I have NO experience with this library. Has anyone ever used or known it to be used successfully with Emscripten? And if I do go for it, SDL seems even more huge and OTT for my needs. Should I just settle with GLFW/GLUT for now and implement a separate window class for DX when i come to it?
The other choice is to include both SDL and OpenAL. Again, I'm worried this is wasteful, but it would be a convenient way to make cross platform render targets... And I'd still make use of the Input functionality... Decisions decisions....
It's kind of hard making a choice on a library I have to experience using, that’s why I was hoping anyone with some opinions on this would share their wisdoms with me. Even if you've got unrelated advice you think would be useful, I'd like to hear it :). For now, I guess I'll carry on with my log manager, but it would be nice to start putting some triangles on screen.
Thanks for any help. Sorry about the wall of text, brevity has never been my strong point.