Hacker News new | past | comments | ask | show | jobs | submit login
Essential Math for Games Programmers (essentialmath.com)
230 points by th0ma5 on Nov 10, 2014 | hide | past | favorite | 28 comments



A few years ago, the Wolfire team (AKA, the Humble Bundle originators), put together a great set of articles on linear algebra as it applies to game development. I think it's one of the most plainly-written and practical guides out there. I still mentally picture the diagrams when I've been out of the loop for a bit.

http://blog.wolfire.com/2009/07/linear-algebra-for-game-deve...


this is absolutely wonderful, as someone who dabbles in gamedev on the side this is immensely useful (just like gameprogrammingpatterns.com).

I love math, it is my favorite subject (numbers are beautiful) but sometimes I don't know the concepts for the math I am trying to apply, this definitely helps fill in some gaps.


I really enjoyed the link. The simple explanations are great. Thanks.


Don't panic. The page is titled "Essential...", but unless you're beginning a new AAA engine by yourself, much of this laundry list is more like "Interesting"


Yep. Things like using dictionary learning for skinning models is overkill. Not to mention its not practical for realtime applications like games. Might be useful for animators though or devs writing animating tools.


Indeed. All this is hardly essential.


but knowing it makes you a more versatile developer.


It would be nice if this were in some sort of curriculum order. It was disconcerting to see that the first topic was Grassman [sic] Algebra.

Honestly, based on my 20+ years in game development, the one essential piece of math I wish all game programmers had in their toolbox is to know basic linear algebra backwards and forwards.


> basic linear algebra backwards and forwards

On that note, here's a short tutorials about linear algebra on fast forward: http://minireference.com/static/tutorials/linear_algebra_in_...

It's aimed at students who are in a rush so it doesn't cover too many applications (the cool parts of LA), but the essential ideas are there.


I'd argue that the Grassmann algebra is simpler than linear algebra. Deriving the determinant from its definition makes very little sense to me even today but it falls out pretty naturally from the definition of wedge product, i.e. the coefficient of the highest degree wedge product. Also, a lot of the operations in geometric algebra have pretty much direct geometric analogs whereas in linear algebra you have to jump through some hoops to figure out what the formulas mean geometrically.


speaking of linear algebra, i just ran into this oddity: manual affine matrix calc differs from what css-transform computes. why?

http://jsfiddle.net/dfqhw64q/6/


Am I the only one who can't stand people trying to deliver technical information via power point slides?


Not at all. Slides are to support a talk. I find most of them fairly useless without the speaker audio/video.


The quality of a talk is probably inversely proportional to the "stand-alone-ability" of the slides. If you can get all the information from the slides they're way too dense. The best lecturers use the slides for pictures and as an outline, but deliver most of the information through speech.


I think slides should be useless without the speaker. If I don't need the speaker to understand the talk, then it was not a good talk.


And it gets especially annoying when those slides are rendered as a static PDF file. Lots of information gets repeated. It was especially ironic in the slides about Frames, Dictionaries and K-SVD, as they were talking about doing efficient and sparse representation of things.


I actually prefer slides in PDF form rather than .ppt/.pptx, as long as all the immediate transitions are omitted in the .pdf file. OpenOffice and LibreOffice have trouble rendering some .pptx files, and it's just less convenient than firing up a PDF reader


I'd rather have a list of book-recommendations.


"A one-day course and a set of PowerPoint slides are not enough to hope to cover all the material in any great depth. So Jim Van Verth and Lars Bishop wrote a book, with the help of our friends at Morgan Kaufmann:"

You aren't the only one who failed to see the connection between their slides and their book. It's a bit of a marketing blunder.

They should have put the book on the same page.


I am going to reveal a bit of ignorance here. I code simply because I am horrid at math and since my work only entails business math I rarely have to even search for good examples. Balancing books, invoicing, etc, doesn't seem to stretch my math skills.

So which areas are still math intensive outside of engineering related work?


Most people have a wrong conception of what math means. Math encompasses large parts of pretty much any engineering discipline including programming. At the end of the day the foundations of programming are boolean logic, turing machines, lambda calculus, etc. Those are all technically math so when you say you're horrid at math and that's why you code that doesn't really make any sense.

More generally, using any kind of analytical approach to solve problems is math.


Is professor of mathematics "engineering related"? If not, it's a trivial example :-P

More generally, there are a number of fields that rely on statistics and modelling of various sophistication. Parts of finance, insurance, polling...


All the exciting ones.


Another resource, titled "Coding Math", but covers such topics as tweening, easing, ballistics…: https://www.youtube.com/user/codingmath/videos


I have developed some games on my own and these math resources are far more than essential.


How come is it essential if I don't really need most of that to build games these days? Correct title: "Math that might be useful for 2d+3d games with custom engines".


Even if all development moves over to a selection of a few engines (which won't happen), you'd still have to have people who make the engines, and they don't pop out of nowhere.


there's a very long list of videos on youtube on maths for game devs: https://www.youtube.com/watch?v=sKCF8A3XGxQ&list=PLW3Zl3wyJw...

i watched some of it - quite educational, albeit a bit dry.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: