Math for 3d programming?

Started by
5 comments, last by thedustbustr 16 years, 1 month ago
Hey, if I was thinking about getting into 3D graphics programming (e.g. making my own game engine) what kind of math would I need to brush up on? Geometry? Calculus? Sorry, I'm a n00b. :(
Advertisement
Basic Math > Algebra I > Algebra II > Trigonometry > Linear Algebra > Calculus I > Physics I > Calculus II > Advanced Physics ... in that order :)

Incase you are wondering where Geometry on the list is, it's a component of everything listed here, with entry level emphasis on it during the Algebra stage.

http://www.mathtutor.ac.uk/viewdisks.php (Complete set of free tutorials covering everything up to Calculus and some basic vector math)

Hints 1: Don't bother with a "3D Math Book / Tutorial" unless you have at least a "confident" understanding of Algebra and Trigonometry.

Hints 2: Don't expect to learn this in 3 days, patience..


Recommendations for a self-taught person:

Practical Algebra - Peter Selby
Trigonometry and Geometry for Calculus - Peter Selby

These books will get you kick started.
I'm in Interactive Computer Graphics course (a senior level CS class, I'm a CS major) and I right now I can tell you that linear algebra is what you want if you want to do 3d programming.
Dat is off da hizzle fo shizzle dizzle
All you really need are some of the basics from Trig and Linear Algebra (and obviously basic math skills too). Once u learn how the projection transform works, and it is really simple, uve pretty much got the whole thing.

you definitly dont need any calculus.. for 3d math. I mean, yeah it helps if your talking about curves and surfaces but for the basic 3d graphics ideas u dont need it.

Also from linear algebra you only need to know what a matrix is , how to multiply them and vectors and thats pretty much it. So you dont need to know any of the real linear algebra type stuff anyway.

If you want to get into the physics side of things etc.. then you need calc diff eq etc etc but 3d math is actually ridiculuosly simple.

EDIT: Id like to add that i am somewhat of a math freak, part of the math team at uni, math major, went to the last maa math conference.. so if there was a way to overcomplicate it with math i would probably do it :)
Quote:Original post by Pickl3d

Basic Math > Algebra I > Algebra II > Trigonometry > Linear Algebra > Calculus I > Physics I > Calculus II


I've also heard Multi-variable Calculus could be useful as well. Physics is very important too. If you're serious about taking courses to improve your 3D programming, you should take some Physics courses as well as Mathematics.

The University of Oregon provides all these courses by the way.
In my opinion, just a good working knowledge of algebra and trig, including vector math and matrix math, is just about all you need. Even when I have a problem that requires calculus, I usually end up implementing some poor-mans approximation, if only for speed considerations. Plus, a lot of the stuff you only need to write once and put into a math library, and from that point forward, it's not so much important that you've memorized everything about the math as it's important that you know how to use it (i.e., knowing you have to multiply matrices together in order to concatenate them, as opposed to remembering how to multiply matrices...I actually worked with matrices long before I understood precisely how they worked, because I was using a math library that had all of the operations already programmed for me).
Mathematics for 3D Game Programming and Computer Graphics, Second Edition by Eric Lengyel

This topic is closed to new replies.

Advertisement