For People In College or Who Have Graduated

Started by
7 comments, last by executor_2k2 22 years, 2 months ago
Im a high school senior looking to go to college next year, but I'm having trouble deciphering some of the course descriptions. What are typical course titles for courses that go over 3d math like quaternions, matrices, interpolation, and other forms of advanced math? Edited by - executor_2k2 on February 18, 2002 7:22:22 PM
Well, that was a waste of 2 minutes of my life. Now I have to code faster to get 'em back...
Advertisement
At UC San Diego where I went there are 2 tiers for the math courses. The first tier is for non-science students - 1a, 1b, 1c. You don''t want to bother with those. The second is for science students. There were 6 courses in the second tier. The entire first year (2a,2b,2c) is all calculus and analytic geometry - 2 dimensions, derivatives, integrals, differential equations. The second year (2d, 2e, 2f) was split up. 2d involved more advanced differentials, fourier and laplace transforms. 2e involved linear algebra, ie matrices, eigen vectors. 2f returned to calculus and analytic geometry except this time in 3 dimensions. Beyond that was upper division coursework, stuff you wouldn''t likely take unless you were a math major or minor. That was 10 years ago. How it lines up now who knows. This sounds like a question your math teacher ought to be better able to help you with.
"I thought what I'd do was, I'd pretend I was one of those deaf-mutes." - the Laughing Man
Matrices and vectors are covered in linear algebra. This is usually required for computer science majors. My 3d graphics class (not math class) also reviewed the necessary math.
I think, tehcnically, quaternion''s fall into ring theory, which would be Modern Algebra. Modern Algebra is rather large area of study, so it''s unlikely that you would study quaternion''s in that class. If you take a computer graphics class, they may be covered in it - depends on how advanced the class is. The one I took was a 500 level class (100->frush, 200->soft, 300->junior, 400->senior, 500->masters, etc...) and it was kinda lame (q''s were mentioned, but not covered).

Interpolation falls into either applied linear algebra, mathematically modelling, and/or numerical analysis - depends on what you''re interpolating. Some 3D game stuff is linear algebra interpolation, some is ODE interpolation (runge-kutta).

Splines are an essential concept to modern 3D graphics, the theoretical basis for is covered in Advanced Engineering Mathematics.

The track I had a few years ago went like this:

Calc 1 (derivatives, HS stuff)

Calc 2 (integrals)

Calc 3 (vector/3D calc)

Differential Equations (equations with derivatives, think quadratic formula on steriods)

Partial Differential Equation (DifEScrew on steriods, 4D calc)
Linear Algebra (Matrices, Matrices, Matrices)
Complex Analysis (Imaginary math, lots of EE & DSP applications)
Advanced Engineering Mathematics (Wierd stuff that has amazingly useful applications - like the Bessel basis that is used in Bezier splines & patches)

Modern Algebra (Why math works)
Numerical Analysis 1 (Let''s use a computer)

Numerical Analysis 2 (Until it hurts)


Every single one of the classes covered something that has come up in the math for a 3D game. That said, I don''t think it''s necessary to take all of those classes to make a 3D game - though it would help if you want to implement or design your own phsyics or math functions/engines instead of using existing ones. C, C++, an assembly course, and data structures along with a graphic class would be good though.
- The trade-off between price and quality does not exist in Japan. Rather, the idea that high quality brings on cost reduction is widely accepted.-- Tajima & Matsubara
First off, I''m a computer engineering major and not a math or comp sci major (and as much as I love computer science, engineering has its merits...)

I''ve taken the calculus, linear algebra, matrices, yadda yadda yadda... but to tell you the truth, I''d have to say that the few classes I took in Physics and Mechanical Engineering (statics and dynamics) probably taught me more about vector manipulation than the math classes did just due to the fact that it had a context

In my opinion the math isn''t the hard part... it''s figuring out how to apply the math to solve a problem that''s difficult ... (A.K.A. engineering ;p)

-noh

(BTW, Love the Numerical Analysis descriptions Magmai)

I''m studying a Comp Sci & Software Engineering degree in Ireland - our courses seem to be structured a lot more rigidly than US equivalents, but we covered some of the stuff you mentioned.
Matrices, etc - Liner Algebra courses.
Interplotation - we covered some of this in DSP courses - don''t know if that''s what you''re looking for.

From what I''ve seen, the most relevevant course to 3D related math is probably linear algebra.
I just spent all night doing a problem set involving interpolation and splines, so I might as well contribute. In my experience the courses I''ve listed below are pretty typical for engineering students, and for some computer science students. Depends on the school I guess.

You''ll usually see a series of calculus courses, often called calculus 1-3 or something similar. These cover from the basics of calculus, limits and derivatives, up to more advanced topics like differential equations. You might not see much mention of this stuff in 3d math at the level it''s typically presented online, but it is definitely very useful.

Linear algebra is a very typical course. Covers all sorts of topics in vectors and matrices. An introductory course should cover most of the applications you would do in basic computer graphics.

Numerical Analysis aka Scientific Computing as someone else said is using a computer to solve mathematical problems. Often involves application of linear algebra to various problems like interpolation, approximation, etc.

Although they''re not directly related to 3d math, courses with names like "Algorithms and Data Structures" are very important. Among other things they teach you how to analyze algorithms and understand why some are more efficient than others, a definite requirement for 3d math.

One thing is be careful how you use the word ''advanced.'' In college a lot of math associated with 3d stuff is not really considered advanced, more like applied. What''s usually considered advanced math goes way beyond matrices and interpolation.
I have a long way to go before I can begin with major''s and stuff. Im currently reading "descrete" math (spelling?) with a teacher that doesnt know what i means. (easy)

Will I get picked on now?
;-)
quote:Original post by Magmai Kai Holmlor
I think, tehcnically, quaternion's fall into ring theory, which would be Modern Algebra. Modern Algebra is rather large area of study, so it's unlikely that you would study quaternion's in that class.



Actually, modern algebra (which some universities call abstract algebra) will almost certainly cover quaternions, since they are one of only three examples of an associative real division algebra. Even if the professor doesn't go over them, they will be covered in the textbook.

I'm not sure that coverage would be useful to game programming, though. As I recall, when I took my intro abstract algebra course, quaternions were covered, but not in the context of rotations. I first saw that in a 3D animation course.

Anyways, you want (at least) four math areas for computer science. 1) Calculus. 2) Discrete Math 3) Linear Algebra 4) Graph Theory.

Modern Algebra, Differential equations, and number theory are all good candidates if you need extra math credits for your degree.

Edited by - cheesegrater on February 21, 2002 10:19:38 AM

This topic is closed to new replies.

Advertisement