quote: Original post by CheeseGrater
Computer Science majors from bad schools, or 'Computer Science' majors from schools who are really just teaching programming, maybe. At the 3-4 schools I've been involved with in various capacities, you couldn't get out without a couple of classes in calculus, linear algebra, graph theory, basic combinatorics, and probably ODEs as well.
If you think a couple of calculus courses and linear algebra is going to get you to were you need to be to code a modern 3d graphics engine, you are sorely mistaken.
Collision detection alone requires WAAAAAY more mathematics than linear Algebra. Its rooted in Vector Calculus and Analytical Geometry. Knowledge I myself, as a Physics major, did not have until my Junior year. Thats 3 years of mathematics courses. You telling me a CS major will have this same degree of mathematics knowledge?!
Ive met many a CS majors at the various places Ive worked, many were from very good schools. None of them had this kind of knowledge.
Ive worked for high technology companies, most recently at Applied Materials in one of the Engineering departments. If you are just a straight CS major, they wont touch you. Reason? Lack of mathematics skills for CS majors. They want people with BOTH Physics or some Engineering and CS backgrounds. Many game companies are the same way. Engine coders have to have superior mathematics skills well above and beyond what is required of CS majors.
Those of you out there saying 3d game engine coding is easier than an average business app, I ask you, have you tried to code one?
And Im not talking spinning and floating cube demos using Direct3d or OpenGL. Im talking a REAL engine with collision detection and response, kinematics, Animation blending, and other belles and whistles seen in modern games. Its not as easy as you think. The most technically challenging work I have ever done has been when developing a 3d game engine. Simply for the fact that I have to on many occasions derive the mathmatics behind my algorithms. In all my business applications work, never have I had to dig so deep into my mathematics background as I have with 3d engine coding.
Check this thread here and read the bottom post by a former game programmer. Ill quote it here as well. I totally agree with this guy. I disagree with the part about needing a MS in math though. I think any physics or engineering(mechincal,eletrical etc.) will give you the mathematics background needed. A BS in Physics and/or Enginereering and a BS in CS is what you need.
quote: Cutting edge game programming is orders of magnitude more technically challenging than business apps. To be a good game programmer you will need the knowledge equivalent of a least a MS in mathematics and a BS in EE. I realize this sounds like hyperbole, but 3D graphics is actually a wide-open field that is heavily reliant on algorithmic optimizations. To be on the cutting edge, which is where you need to be if you want to sell your games, you will need to be able to invent new algorithms (so an MS in math would come in handy).
[edited by - Wikkyd on December 11, 2002 10:01:39 PM]