For the modern game developer who’s looking to get their hands on some knowledge regarding the art of game design/ development, there are a plethora of options. Ebooks, tutorial videos, online courses, and much more. But nothing beats reading a book. It might be old fashioned but it works really well.
And books contain a lot of detailed, in-depth information which you won’t find in some online courses or Youtube videos. Information from reliable trusted sources like lead developers who have decades of experience working in various AAA studios. I searched for some of the most well-written and informative game design books and came up with this list.
The Art of Game Design (Jesse Schell)
Good game design is all about viewing your work from different perspectives, or “lenses” as they are called in this book. Jesse Schell believes that the basic principles of psychology which apply in puzzle games, sports, card games, etc. are also applicable to video games. The book breaks up game design into its most fundamental elements.
It succeeds in providing definitions that are applicable irrespective of genre and platform. Every concept is approachable and easy to understand for the vast majority of readers across varying skill levels. For practicing designers, Jesse has included some practical tips/ tools in the form of 100 lenses.
Each lens provides a question that encourages you to iterate upon your current design by viewing it from different perspectives. For example, one Lens talks about Competition vs Cooperation. How to balance the two and asking yourself whether your game is more fun with competition, cooperation, or a mix of the two.
Game Engine Architecture(Jason Gregory)
Want a book that delves into both the theoretical as well as practical aspects of game engine development? Jason Gregory has nearly two decades of experience working in large AAA studios such as Naughty Dog, EA, and Midway. He draws upon his experience to provide you with some insight into how a commercial game engine is truly constructed from start to finish.
Every concept or technique is supported by real-life examples. And the third edition of this book has been thoroughly updated to keep in touch with the modern landscape of game engine development. The scope of the material presented in this book extends beyond APIs and specific technologies, and you start getting deeper into the actual process of game development itself.
Ideal for hobbyists, self-taught programmers, amateur game developers, and even senior engineers who might benefit from the vast array of information within this book. The book covers all components of a modern game engine, its architecture, and the various subsystems like the renderer, animation, resource and input management, etc.
If you’re looking for a book that teaches you how to quickly program a basic game engine for start to finish, this isn’t it. It doesn’t waste too much time talking about basic programming techniques or 3D rendering APIs. Instead, it starts with a brief review of software engineering and c++, along with a quick math primer in the first few chapters.
Subsequent chapters deal with low-level game engine subsystems and rendering. Final chapters address gameplay mechanics. Each chapter is dedicated to a single game engine subsystem, it starts by providing a high-level overview of all requirements and associated issues. Then you are given detailed explanations, with references to various external resources and solutions.
Jason Gregory has worked on famous titles such as Uncharted and Medal of Honor: Airborne, so his book is a goldmine of ideas and concepts. I highly recommend this book if you’re an amateur game developer.
No-Code Video Game Development (Michael Kelly)
I did an article a while back talking about how you can create entire games without writing a single line of code. Well now, you’ve got an entire book on the subject which demonstrates how you can use Playmaker (a Unity plugin) visual coding to create codeless games.
You basically stack up visual blocks of logic, combine it with assets such as character models, audio, etc. and you’ve got a game. Well, it’s not THAT simple, but yeah- pretty simple for those who want to create a simple game but feel squeamish when they hear about coding.
The book provides a complete course, it takes a project-based approach and comes with a bunch of stuff. Like Unity gamedev packages, Playmaker templates, character models, animations, materials, and much more. You can use all these to create your first game in Unity, without writing a single line of code.
However, if you do decide to eventually get serious about game development, I highly recommend you check out some C/ C++ books because code writing will become a requirement.
Indie Games From Dream To Delivery (Don L. Aglow)
Written by the creator of Emmy winning RPG Neverwinter Nights, this book is a must-read for people looking to create their first game. Daglow draws from his multiple decades of experience in the game industry to give you a step-by-step guide on how to come up with an indie game. It is a book that bridges the gap between developmental concepts and “how to build your business”.
The book delves into more than just developmental matters. It also talks about the philosophical aspects of indie game development and the kind of life you are expected to lead as an indie dev. It talks about game design, business, interaction within teams, and more.
It isn’t so much a book that answers your questions as it is a book that asks you questions. Questions asked from the perspective of someone who has seen people try and fail, someone with the passion and drive who has been creating games for decades.
Daglow will help you make the right decisions in your path as an indie game developer, by asking you what you want to do before telling you how to do it. Each person will have their own answer to the questions, and the book will collect all your answers at the end to give you a customized roadmap for your indie dreams.
The WoW Diary (John Staats)
As the title indicates, this is a journal that contains notes and ideas from World of Warcraft’s first 3D level designer- John Staats. Think of it as information presented in a fly-on-the-wall style, from someone who worked on one of the largest and most popular games ever. The book explains common development practices, why people do things a certain way, and debunks gaming industry myths.
You will also find behind the scenes material like screenshots, abandoned concepts (art, levels, dialogue, etc.), and much more in full color. There isn’t a whole lot of technical jargon either, so the average Joe looking to take their first step into game development can easily understand everything. You get to understand how a development team in charge of a giant project like WoW works.
This book provides great insight into Blizzard’s decisions and the various compromises and accidents along the way. It is like a slice of time, filled with valuable insider info and nuggets of information from an experienced game developer. You get to see the chaotic, sometimes humorous, and often ugly side of game development.
Programming Game AI By Example (Mat Buckland)
One of the best reads on the implementation of AI in games and how to design an intelligent agent for your own games. It is comprehensive, filled with practical examples, and thorough in its explanation of key concepts. It provides an overview of the “bread and butter” AI design techniques common within the gaming industry, and doesn’t shy away from tackling difficult problems.
You will find the book covers topics like state and goal-based behavior, inter-agent communication, individual and group steering behaviors, team AI, graph theory, etc. Mat also talks about path planning, optimization, triggers, scripting, finite state machines, goal evaluation, fuzzy logic, and much more. Each chapter introduces you to a fundamental AI concept before expanding into solutions and examples with code.
Whether you’re new to game AI programming or an experienced AI developer, this book contains something for you. It even touches upon basic maths and physics principles that are essential to creating good AI. Lua scripting and tools needed to create some really complex AI behaviors are also included.
Foundations of Game Engine Development(Eric Lengyel)
In order to design a game engine, you must be familiar with certain linear algebra and geometry concepts. This book covers all that and much more, giving you all the foundational mathematical knowledge you will ever need to create an excellent game engine. It starts out with vectors and matrices, moving onto topics like transforms and geometry.
Then it introduces you to Grassmann algebra and geometric algebra, while also explaining how some of the conventional mathematical concepts aren’t quite right. If you’re interested in creating your own 3D games from scratch, this book is a must-read. Even though it isn’t that long, every concept is explained in a clear and concise manner which is sure to stay in your head for a long time.
The concepts explained in this book can also be applied in non-gaming workloads such as engineering and virtual simulations. It is a great math book in general if you’re a computer science student interested in 3D applications and practical knowledge.
If you like this book, I recommend you check out their other installments as well. They are all part of the “Foundations of Game Engine Development” series- Rendering, Animation, and Physics.
The Fundamentals of C/ C++ Game Programming (Brian Beuken)
Both C and C++ are extensively used in the development of games. If you want to develop a good understanding of these two languages, I highly recommend this book. It is especially good for novice coders, or enthusiasts who are keen on developing their own game using free engines like Unreal but don’t feel too comfortable with coding.
You will get a good understanding of C and C++ from a game development perspective, helped by examples of methods and techniques used in professional game studios. Your problem-solving skills with C/ C++ will be strengthened and you’ll even learn how to code games for restricted or fixed hardware platforms like consoles.
The book walks you through core game development concepts, ramping up the complexity while demonstrating that the fundamentals stay similar no matter what genre/ platform/ technologies you use.
Development and Deployment of Multiplayer Online Games (‘No Bugs” Hare)
Developing a game is one thing, but making it multiplayer is a whole new challenge in itself. There are plenty of really good resources and books you can read when it comes to topics like engine development, graphics APIs, general coding, etc. But consolidating all the multiplayer components of a game into a single package and integrating it with your creation is really complicated.
That’s where this book might help you out. It is part of a nine-book series that deals with the summarization of knowledge that is actively used and known within the gaming industry but rarely published in book form. You’ll learn about game design documents, specifically pertaining to multiplayer games. And the book also talks about cheating in multiplayer games, an aspect which is pretty much non-existent in single-player titles.
The discussion around cheating leads into authoritative server architectures, and later, implementation of anti-cheats. The largest chapter within this book is dedicated to multiplayer communication flows, discussing stuff like client-side prediction, sync, lag, lag compensation, and its demerits, etc.
Getting Started With Unity 2018 (Dr. Edward Lavieri)
One of the most popular free game engines on the market, Unity delivers all the tools you require in order to create a 2D/ 3D game from start to finish. Dr. Edward Lavieri will provide you with a comprehensive rundown of everything that makes Unity so awesome, and how you can implement it in your own games.
This will be done via examples and projects that you work on as you read through the book, progressing from one concept to another.
It touches on how to design VR experiences within Unity, AI development, and custom scripts. You will also learn how to import and use assets, and asset packages to make your game even more lively. The book also talks about animation techniques, game menu design, lighting, audio, particle effects, and much more.
Mastering iOS Game Development (Miguel DeQuadros)
The Apple mobile platform and App Store is a highly lucrative market for any mobile game developer. But getting into it can be hard if you don’t have the right tools and guidance. Worry not, Miguel will guide you through the process of creating a complete game while providing examples on the way.
Asset optimization, multi-tasking, character design, and multiplayer- you will learn all this and much more as you read through this book. It also covers performance optimization and pre-release code tweaking, so your app is in the best state possible before release.
If you’ve never coded for iOS before, some of the concepts within the book might seem daunting. I recommend this book for people who have prior experience with coding games for the AppStore, with a solid understanding of core components.
Game Development From Good to Great (Tony Floyd)
If you have an idea for a game but aren’t quite sure if it is worth the investment, check out this book. It will teach you how to get the most out of an existing idea and make your game the best it can possibly be.
Tony Floyd talks about structuring and organizing the game development process, figuring out what makes a game successful, how to write better characters, and more. Even though this book has the words “game development” in it, it isn’t about the technical aspect of development such as engine design or multiplayer coding.
Instead, it is centered around the business aspect of game design and how to extract more from an existing idea. Which elements characterize or highlight a genre, why do people like certain game mechanics, how to build a community around your game, all that stuff.
The Android Game Developer’s Handbook (Avisekhar Roy)
An all-in-one solution for intermediate developers who are looking to get serious with Android game development. The Android Game Developer’s Handbook will give you some really useful tips and tricks to create a successful game within months. Not only does it talk about the development of the core game itself, but also monetization and how you can track your game’s performance after it goes live on the store.
A prior understanding of Android game development with languages like Java/ C++ is required to get the most out of this book. Avisekhar Roy talks about the Android OS and its limitations/ weaknesses, how the inner architecture works, and common mistakes made even by seasoned developers.
You’ll also learn about the best cross-platform game engines to work with and porting games to different platforms. Memory and performance optimization is also covered, in addition to game monetization techniques and future prospects of Android within game development.
Hands-On Game Development With WebAssembly(Rick Battagline)
If you aren’t too familiar with WebAssembly, it is a new type of code that is designed to support the future of web development. A low-level assembly style language with a compact binary format which runs at near-native performance and allows you to write applications for the web in almost any language. This book is targeted at both web developers as well as game developers.
The Game Narrative Toolbox (Tobias Heussner)
Ever wondered what it takes to create a truly compelling storyline for your game? How to write a good character that the players can relate with? You also need to design a clear objective for the player to work towards and understand how the game genre affects what type of story you can have.
These issues and a lot more shall be tackled in The Game Narrative, a guidebook created by 4 experienced game authors with several years of writing experience in various game studios. The Game Narrative Toolbox demonstrates how to create a player-centric story-based experience and compelling dialogue.
It also shows the process of switching from prose or screen-writing to interactive writing. Every chapter carries examples and questions to help you write your own documentation and dialogue for independent projects.
Game Audio Implementation(Richard Stevens)
There are plenty of resources on coding, game engine development, AI, and stuff like that. But rarely do you find a well-written guide on how to compose game audio. This book is exactly that, it takes an interesting approach towards teaching you how to create your own sound and music for a game.
And it does all of it within Unreal, one of the most popular commercial game engines on the market. You start with basic concepts and gradually move your way up to more complex systems.
The book has a companion website from which you can download 12 demonstration games that will let you practice your SFX skills. It also teaches you all the quirks and intricacies of developing sound in Unreal, how it’s audio engine works, etc.
Directing Video Games(Brian Allgier)
Ever wondered about what a game director actually does? Well, the basic explanation is that they occupy the role of creative lead for the game and coordinate/ manage individual teams working on specific parts of the game. Just like a movie director. But what if you have been given the role of director for an indie team?
Managing and leading a team of developers is tough, so let Ratchet & Clank director, Brian Allgeier teach you some tricks of the trade. You will learn brainstorming methods, maintaining a vision as a team, providing structure and organizing ideas, leading effectively, and more. This book will teach you strengths that complement your technical skills, allowing you to function as an effective developer as well as a creative leader.
You’ll learn how to work with HTML5 and canvasses, understand paths, draw your own spaceships and asteroids for your Asteroid-inspired game project. Then you move onto animation and finally put it all together to get a completed game.
What makes this book unique is how it teaches you basic concepts in a manner that is fun while also building upon them with more advanced stuff using practical examples.
Unity From Zero to Proficiency (Patrick Felicia)
Creating your first game can be quite confusing and intimidating at first since you don’t even know where to start. Especially if you aren’t proficient with coding. So this book helps you out by introducing you to every tool you’ll need in order to create your first game.
First, there is Unity- a free, commercially available game engine with everything from animation to rendering and AI built right in. It may look daunting at first, but you’ll learn about its UI and tools gradually as you develop a project game with the help of this book. The book contains tips and tricks, quizzes, questions that encourage the development of problem-solving skills, and code solutions in C#.
There are chapters which focus on helping you write your first script in C#, explaining common coding mistakes and how to avoid them. You will also use C# to instantiate and control Rigidbody objects ( including scripts for explosions). You also learn how to create weapon management systems, creating weapons, and implementing a UI element to track ammo usage/ pickups.
Finally, you use all skills you previously learn to create a fully functional game level. And you then get to generate a maze dynamically from your code. All of this is topped off with an explanation of how to use Mecanim and NavMesh to create an animated NPC which detects, follows, or shoots at the player.
Introduction to Game Development Using Processing (James R. Parker)
It provides a complete breakdown of how game development works, from conception to finished product. You get to learn about graphics, sound, AI, physics, music, UI design, narrative, multiplayer, and everything else that goes into creating a game. The book walks you through developing actual games for yourself, as well as building a game engine.
In this book, you’ll learn about Processing. It is a free graphics-oriented language that provides the basic functionality needed for building and running games, and it’s supported on multiple platforms. The book also comes with a companion DVD that contains things like code snippets, games, and color figures.
So, what did you think of my list? I believe some of the more experienced programmers/ enthusiast game devs among you might have read a few of these books before. And surely there are many other awesome books on game design/ development that I didn’t include here.
But if I chose to include everything, the list would contain over a hundred items and I really didn’t want to make it so large that you couldn’t go through it in a single sitting. Therefore, I only chose the select few that I felt were the most relevant and informational.
These books in my list cover a wide range of topics, and each one can be read by both intermediate as well as advanced learners. There is something for everyone- game engine development, AI, learning to code, and I even included a book that helps you compose your own game music. So why wait, get your hands on a book from this list and start reading.