I recently finished Introduction to Game Design, Prototyping and Development by Jeremy Gibson. This book is an excellent starting point for any one wanting to get into game creation. The book approaches the subject with the assumption that the reader knows little to nothing about game design, programming, or Unity in general. Thankfully the author acknowledges this and breaks the book up into 3 main sections, A primer on Game Design theory, a primer on the C# language, and finally a section that teaches the reader on how to navigate the Unity platform and instruction on creating multiple types of games. This allows those who already have a working knowledge of C# to skip that section easily and focus on learning Unity.
The book is pretty thorough for an introductory book. The book itself is much more like a college textbook rather than a “do it yourself” style programming book. The author’s writing is easy to follow and makes no assumption on the skill level of the reader, he boils down the difficult portions well, and makes sure that topics are well defined before continuing.
There was a section on Agile software development and Scrum, which while great for a software development course was odd to see wedged into an Intro book to game design. While important for a software developer to know and understand, It felt out of place and jarred with the flow of the book. This is a pretty minor “con” but it was just a little weird for a beginners book.
Overall this was an awesome book. As someone who has been working in C# for years, I really just wanted a Unity tutorial, but the section on game theory was a nice bonus. I did read through the C# section a bit just to see and it was a great little introduction to programming.
I recommend this book to anyone wanting to dabble or learn more about making games.