General Advice Needed

Started by
3 comments, last by Mark Koczwara 10 years, 9 months ago

Hello all,

Like the stereotypical school kid sitting in the classroom doodiling about game designs when he was only nine, I negelected a lot of the mathematics being taught to me. More focused on Something that would never come to fruition due to the complexity that they would require. I started programming when I was 14 more as a passion then anything else hoping that it would eventually lead me to be able to create my own game's that I had once imagined into a 3D realm.

If I had been told while I was spending countless hours drawing on my notepad in the class room that the math I was being taught would one day be greatly applicable to Mathematics and Physics for Games, I may have been more attentive to the teachers word's. However that is simply a case of could've, should've or would've.

As I stand now, I am able to make simple DirectX tech demos using C++. They can never become more complex like I would want them to simply because of my impairment in Mathematics. I can get the general idea of how ray to plane intersection works and even be able to copy and paste it into my code and have it work. But nothing more.

As I stand now I have the Algebra level of a freshman in High-School and almost no working knowledge of Geometry or other branches of Mathemtaics such as, Trignometry, Calculus, ect.

So as to digress from the verbosity, I am simply asking what next? I have a algebra book that is focused on the topics dubbed Algebra I & II. After I finish that book what should I move on to? College Algebra or Geometry? Then Trigonemtry

What kind of resources can I take advantage of that are somewhat applicable to what I am trying to apply these abstract formulas to?

-Marcus

Advertisement

This post contains only my opinions.

It depends on your goals and aims.

If you wish to create a game, there's no need to know how to multiply matrices, how to calculate cross product & so on, just use library and find out what's the meaning of each function. So for example, instead of (bunch of weird numbers) = (bunch of weird numbers) matrix_multiply (bunch of weird numbers) you can think of it like (rotate and scale) = (rotate) * (scale) without a single care what those numbers might mean or where they come from.

As for ray/plane intersection you could use physics library. You might prefer own code, however, in the end you'll want efficient code, so you'll end up reinventing library, therefore it's best not to waste any time and use one right away.

Different people learn differently, but one possibility would be to pick one thing that is out of reach and concentrate on learning whatever you need for that particular purpose. Iterate a few times and you'll discover that you have learned most of the math you are talking about, but you actually truly understand why it's relevant. You can then go though textbooks for those courses really fast, because you only need to learn a few things that haven't shown up in your problems.

If you post a few examples of problems you would like to be able to solve, I can try to point out what you need to learn to get there.

I myself have a mother that teaches math at college, and used to do programming many years ago, and as such I was told how important the math was the whole time.

However, with the help of the internet, many things are much easier to find out now than they used to be, and you can get help with problems that are beyond your grasp.

...

That said, you will certainly need to get through the algebra, and then I would recommend looking into Discrete Mathematics, as this will force you to learn logic as well as give you the ability to prove an idea... or at least help you to understand other peoples proofs to make sure that it will hold true no matter what is thrown at it.

(I enjoy proofs... and matrices... more than I probably should...)

Matrix multiplication is going to be useful for you (for moving vertices etc) - I recommend taking a look at Khan academy for a bunch of easy to understand examples then writing some little programs to make use of what you're learning.

This topic is closed to new replies.

Advertisement