I've made some progress, but not much. As expected, it's been difficult finding appropriate learning materials, but that was always kinda the point, overcoming that obstacle.
I started reading
this OpenGL ES 2.0 book, but it didn't have much in the way of code examples in the early chapters. I was expecting it to be like 'here's a chapter on x, and here's some code you can do that uses x', but, it didn't really have that as I was going through it. So I bailed and explored following some standard
OpenGL tutorials, mostly OpenGL 3.x, in the hopes that I'd gain some transferable knowledge. I was thinking learn OpenGL, then try to recreate the code in OpenGL ES 2.0. But that turned out to be a dead end. And now I'm thinking that going back to the OpenGL ES 2.0 book is the way to go.
I've since found out that in later chapters (starting Ch8) there are code examples that you can follow along with. The problem is that the example code is C, and it's heavily coupled to a framework they use which I think is badly written. So they've got things like creating windows, and establishing OpenGL contexts quite tightly coupled with the code that makes the OpenGL calls. I don't want to use their framework, I want to use SDL2 for that stuff. So I'm in the process of unpicking their crappy code (particularly their heavy use of structs which seems to me unnecessary), isolating the stuff I want to use and learn, and re-implementing it in SDL2 and my framework with a C++ base. It's early in that process but I'm currently going through
this code, in particular the chapter 8 directory.
I've tended to only really have time to look at this on the weekends, and it doesn't help that I just spent the entirety of this Saturday looking at build systems. I wanted to see if I could get my project built in meson in a way that I could build on Windows without going through the nonsense that developing on Windows entails (specifying the include directories in the VS gui, copying dll files to a million different locations etc.). My thinking was that if I could more easily develop on Windows, I could spend some time on this at work if I could get it up-and-running on my work laptop. But that didn't pan out. I got the
meson code working on Linux, but I couldn't get the SDL code to compile on Windows because it couldn't find the directx headers, and it seemed like sunk time to get that working. Getting a dev environment up-and-running on Windows totally blows, but it would help my progress. It doesn't help that the firewall at work blocks all external SSH traffic (which makes sense), so I can't connect to github other than through the web, downloading the zip files. I might try Codeblocks to see if that's any better, but I don't want to throw good time after bad and sink more time into this. But basically, I just wasted a whole bunch of my dev time this weekend, and I spent a lot of my Sunday upgrading my Linux box because I got a new CPU.
But anyway, I'm still going strong and fully intend to finish. I'm hoping to do another post this weekend. But that might prove un-achievable and the next weekend might be more realistic, I'll see how it goes.