no one can seriously use a graphics API without knowing about [Homogeneous coordinates].
You just answered that
If you don't understand perspective projection, how do you setup a camera for your 3D game? Of course you can follow a tutorial/manual without understanding what's happening...
I was using GL/D3D for years (and building games/toy-engines with them), just with the knowledge that "'w' is some kind of magic", and that "matricies are some kind of magic" before I got around to learning linear algebra and the theory behind all the computer graphics magic
I had an intuitive understanding of how to use vectors/matrices/euler-angles/quaternions/dot-products/cross-products/etc, without knowing anything about how they really worked. In the case of dot and cross, I didn't even know the right terminology, but knew them by their function names in the Half-Life code base, which was something cryptic like vecfma, etc (or "that function that returns 1.0 when two normals are aligned" and "that function that gives you right angles").As long as I had an API, or some code I could copy-paste, I was set