3 ms·
I took an intro to computer graphics class in college in the mid-80s. Was so bummed to find out that it mostly about matrix multiplication (according to my hazy
by jsrcout 4y ago
I took an intro to computer graphics class in college in the mid-80s. Was so bummed to find out that it mostly about matrix multiplication (according to my hazy, non math-guy memories). I mean yes I wanted to write software to do graphics, but I wanted to do graphics, not just math. OpenGL was still in the future; maybe PHIGS was around, but I'd never heard of it then. The situation is just so much better these days.
- ggambetta 4y agoI'd argue that understanding the math, ideally having written it yourself at least once, gives you a massive advantage when using an API later. If you don't understand the math, you might find yourself wondering why certain things don't work as you expect, or copy-pasting code you don't understand from Stack Overflow (or doing enough research to understand the math anyway). I think a very illustrative case for OpenGL is what's up with all the glPushMatrix(), glPopMatrix(), GL_MODELVIEW and GL_PROJECTION stuff. Do you glTranslatef() or glRotatef() first -- and why does that depend on whether you're moving the camera or an object? I found all this very confusing, and I'd just try permutations of the calls until things worked, which is a suboptimal way to write software. At some point I decided to really understand what was going on, to the extent that I ended up teaching it (best way to verify if you really understand something!) and even writing about it [0] (even better way?) TLDR: Even as the user as an opaque API, understanding what's happening under the hood makes you a better user of said opaque API. [0] https://gabrielgambetta.com/computer-graphics-from-scratch/10-describing-and-rendering-a-scene.html#model-transform https://gabrielgambetta.com/computer-graphics-from-scratch/1...
- qikInNdOutReply 4y agoOr why the operations are order dependant >D
- deleted 4y ago[deleted]
- pixelpoet 4y ago> I wanted to do graphics, not just math. Much of CG is basically an exercise in linear algebra.
- bmitc 4y agoAlmost anything technical or even moderately mathematical is an exercise in linear algebra (effectively by design).