I wrote an "online textbook" called "Computer Graphics from scratch" before knowing of Scratchapixel (and their tagline!).
Mine is based on the lectures I gave back in the day when I was teaching CG as a third-year university subject, so it follows a very pragmatic approach because I had to find the "path of least resistance" from zero knowledge to writing a rasteriser and a raytracer, so I had to condense all the material in 16 weeks or so... and that's roughly the number of chapters in the book :) It's also why every chapter builds on top of the previous one, and why there's a visible result at the end of each.
Scratchapixel is a really comprehensive resource. I referred to it frequently while working on a 2-day workshop on writing a raytracer.
What I've always found missing are resources that cover both the foundational theory and the implementation details, in a way that connects the two ends. That's why, when developing that workshop, I created a resource that goes over the theory of raytracing--including the relevant math--and walks you through a series of practical projects.
Mine is based on the lectures I gave back in the day when I was teaching CG as a third-year university subject, so it follows a very pragmatic approach because I had to find the "path of least resistance" from zero knowledge to writing a rasteriser and a raytracer, so I had to condense all the material in 16 weeks or so... and that's roughly the number of chapters in the book :) It's also why every chapter builds on top of the previous one, and why there's a visible result at the end of each.
http://www.gabrielgambetta.com/computer-graphics-from-scratc...