So my reasons for making this are pretty straightforward: becoming a skilled game developer requires the intake of scattered, disparate information from across the internet, and it’s a shame that gathering this information can be so laborous. This is especially true considering that this information, while readily available, is difficult to find if you don’t already know what to look for. The best solution I can think of is to dump a series of links and resources that can guide you and teach you core concepts in topics ranging from graphics programming to 3D math to artificial intelligence, to the best extent that I can, so you can grow from a beginner to an intermediate or advanced developer able to stand on his own two feet and able to learn for himself. So first, a little about me…
My name is Philip Guin, and I’m a 25 year old professional game developer and graphics programmer. I go by Frizzil across the interwebs, and am responsible for a popular total-conversion Minecraft mod entitled Hack/Mine, later working at Daybreak Game Company on an MMO called Everquest: Next. Since then I’ve been working on my own project Sojourners, which will essentially be “Dragon Ball meets Star Control II with fully destructible terrain!”
It’s taken a lot of self-driven learning for me to get to this point, and I’m hoping I can take other passionate people to the point I am with a lot more ease than I had. So, without further ado…
Frizzil’s Ultimate Game Development Knowledge Dump!
Note: much of this guide expects you to know basic programming, at maybe a Freshman level if you learned at university. Of course, the more you already know, the better: this guide is really about specialized subject material, not programming in general (although I will include a few inspiring programming resources for kicks and giggles).
The order of the materials under specific categories are in roughly the order in which you should read them, if you’re learning.
If you’re really invested in any particular category, I strongly recommend applying the concepts as you go to an actual project that you’re passionate about. If you’ve been wanting to make a game, now may be the time! The important thing is, you’re not really going to learn any of the practical bits unless you apply them and supplement with your own research, so consider yourself warned.
- Beginner: Little to no knowledge of the subject matter.
- Intermediate: An understanding of the fundamentals, and able to be self-sufficient with lots of Googling.
- Advanced: A solid understanding of the majority of the subject material, and able to produce much without excessive Googling.
- Expert: A fabled unicorn with unwavering comprehension of the subject matter. If you ever meet one, you’re encouraged to bring it in for scientific research, so mankind can learn from these mythical creatures.
Go through the topics at your own leisure – I mostly recommend the math and graphics guide, as it’s where I have the most experience. Have fun!