This work on OctoberPeaks takes me back to half a lifetime ago... back when I actually still remembered all of this math.
The top-down perspective of OctoberPlains didn't really require any interesting linear algebra since it was a basic orthographic projection where the entire world positioning was just a 2-dimensional offset from the origin (and basic arithmetic is always easy). OctoberPeaks, however, with its first-person 3D perspective has required that I look back into things like transformation matrices and frustum clipping and perspective matrices. After muddling around with it, it seems to be generally making sense, now (although I still think that the way I am doing the composition of the rotation matrix is wrong).
Of course, the actual complexity will come a little later in this prototype, when I need to build the ray cast for block selection in this perspective. I wonder if there even is an elegant way to do that. There must be.
So, it will take a lot of work to make this actually look more interesting, once the basic logic and mechanics of the interface work, but it shouldn't be too bad. After all, the heavy lifting is done by the common library (especially SpeculativeProjection), so connecting core functionality shouldn't be too difficult once I get these fundamental components working.
Still, it bothers me that I am struggling with this, at all. I am not sure if it is a lapse in memory (took half a life to learn it, maybe another half to forget it), concentration (I am not sure how my focus works, these days), or intelligence (I am not sure I am using it so I am probably losing it).
I will make the first commit before connecting this to OctoberProject, as it will just be to demonstrate the viability of the interface, so that should be within a few days.
...Nights