I have utilized all of the below resources in order to develop games and game engines. I have only ever done this as a solo hobby game developer, so these resources may not be useful if you’re in the industry.
I will add to this list as I remember or find more interesting and helpful things.
I’ve separated these into the general areas that they cover.
- GameProgrammingPatterns.com – This is an incredibly useful website, highly recommend you read it.
Software & Tools
- CodeBlocks – This is my preferred IDE, but you can use anything you want.
- MSYS2 – Makes getting libraries that you need very quick and easy. Chews up a lot of hard-drive space, but is manageable.
- Renderdoc – If you are writing your own rendering code, you need this software. I couldn’t have made a game without it.
- Dr. Memory – This will give you reporting on exactly where you’re screwing up your memory management. Required if you’re coding in C++.
- BoUML – Of all the free UML visualisation software applications available, this is my favourite. I use it to generate the UML diagrams in this site.
- Doxygen – I document my code pretty religiously because I will likely be using the code in a years time and I won’t remember a thing. Doxygen generates great reference docs for your own code.
- Ardour – Simply the best open source DAW that you will find.
- NeHe – This guy has been around forever, teaching people how to draw things to the screen and make games.
- LearnOpenGL.com – another incredibly helpful website. Takes you through a lot of things you’ll need if you want to do 3D
- OpenGL Shading Language Cookbook – This is a fantastic book that gives you a lot of information on common tasks. The example code is freely available here.
- OpenGL Reference – I don’t think I’ve ever closed this tab in my browser.
- GPU Gems, GPU Gems 2, GPU Gems 3 – are pretty old books, but they’re available online for free now. There is still ideas a code in here that will help you.
- OpenAL Programmers Guide – is pretty much everything you need to know to get OpenAL working
- OpenAL Specification and Reference – is something that you need to keep referring back to.
- The Dragon Book – If you’re going to write your own scripting language, you need this book. Nothing comes close. For my first game that I never completed, I did manage to make an entire C-like scripting language because of this book.
- Value Multiplayer Networking – An amazing resource that you must read if you plan on an action packed multiplayer game
- Gaffer on Games Networking – Another fantastic resource, especially on building an ordered & reliable system on top of UDP.
- Beej’s Guide to Network Programming – I don’t think anyone could have made much sense of socket programming without this guide.