Let's make a list of the best books that every game developer should read.
Each answer should have a single book (by title and optionally author), a link to buy the book, and a short synopsis of what the book is about.
Let's make a list of the best books that every game developer should read.
Each answer should have a single book (by title and optionally author), a link to buy the book, and a short synopsis of what the book is about.
Game Programming Gems, all of them.
Internet Archive: Game Programming Gems
Even just reading them will give you a lot of ideas and insights in different approaches that will spark your thought processes and will give you a nice interdisciplinary toolbag. Also, lots of references to other interesting works.
Game Engine Architecture by Jason Gregory
Touches on most areas involved in game development. Because of the number of subjects covered the book doesn't go into depth in any specific area but gives a broader view. I recommend anyone interested in game development read this book.
Real-time Rendering
If your interests lie in 3D rendering; this is the reference book to own. The book is theoretical and requires the reader have strong math skills.
Also if you're developing shaders (then you probably already know this but) the ShaderX series are a great read, and the series will continue under the name GPU Pro. (I have not read this one yet though)
Real-Time Collision Detection by Christer Ericson
Collision detection has always been an integral part of game development, and this is a great book on the subject covering a huge area.
Mathematics and Physics for Programmers
I see no one talked about this one, wich I think is a must-must for any game programmers. A lot of good stuff about mathematics used in video games like trigonometry, vectors, ballistic and collisions and some more complex motion laws. It's a must have in your bookshelf !
And I almost forget... "Clean Code" and "The Pragmatic Programmer" are really nice books to read and keep not too far when working in a developer team. Teach you about how to make good programs that will save time and money to your team.
Don't have the Rep to post more than one hyperlink sorry...
The Pragmatic Programmer: From Journeyman to Master
I learn something every time I read this.
For Programmers:
Real Time Cameras
I really liked this one. Its contents are pretty standard in terms of engine/rendering structure, but it also considers game narrative through cameras.
Someone said it's a must read for all programmers and I completely agree with that.
This one is great for programming best practices and tips from the trenches. Tons of game programming books have you go down the same path with whatever scripting language or engine they are pimping. This book goes into WHY you should do things for game development. For example, the networking section talks about why you should do things for games that normally would never be done for non-game applications. Those nuggets of information, backed up by experience, are priceless.
For game design, the best book, hands down, is The Art of Game Design (linked in other answers)
Although it is a general programming book, you shouldn't miss it! It teaches you a lot of things every programmer should know.
The Pragmatic Programmer : Journeyman to Master
If I'm putting together a project, it's the authors of this book that I want. . . . And failing that I'd settle for people who've read their book." -- Ward Cunningham
A book that present tips on various topics. The book doesn't need to be red from the beginning to the end, just read about the tips you want ! Here are the topics covered :
I'm just starting them but the series looks promising.
All Aspects of the 3D Pipeline and how to optimize and implement them in software most efficiently as possible. Has many techniques that transfer to hardware well too.
Introduction to 3D Game Programming with DirectX 9.0c: a Shader Approach
This was the best book I've ever found on teaching game/graphics development. It starts with an overview of the math involved and moves on to explaining DirectX. But the lessons can useful beyond DirectX: it explains, at a mathematical level, lighting and shadows and normals and many other things.
I recommend it for all the newbies like me
Personally, I'm a huge fan of this one for game designers. It offers a lot of examples and exercises for people looking into game design as a career.
3D Game Engine Design and 3D Game Engine Architecture
both by David Eberly, are quite good, if a bit heavy on the math.
Game Engine Gems
just came out, and I've been enjoying its content so far. It's been a lot more helpful in some areas than the Game Programming Gems series (of which I've read up to Vol. 5).
Tricks of the Windows Game Programming Gurus (2nd Edition)
This book taught me a lot...
Design Patterns : Elements of Reusable Object-Oriented Software
A must have reference book written by the GOF who are highly know in the litterature of programming. Begins with a quik presentation of each patterns in the book and then explain them one by one with exemples, when to use, UML representation and more.
Great book that covers making an FPS engine with DirectX with multiplayer and an engine that supports Octree and Occlusion Culling
Programming Role Playing Games With DirectX This is a great book that goes through everything about the basics of DirectX and Role playing games. It includes many examples that can be used for many different games. Some topics include:
takes you up from the basics of scripting to assemblers, compilers and virtual machines. I love this book.
Refactoring : Improving the Design of Existing Code
I think this book is the logic one to read when you finish Clean Code (See other answer). It teach you how to deal with bad design of code and rework it into well-designed, robust code. The author present you how to deal with such code in a nice and easily-understandable way. A must have in your bookshelf !
David Perry On Game Design: A Brainstorming Toolbox by David Perry, Rusel Demaria
It's the biggest book on game design ever written, at over 1,000 pages long. It's designed to help students & designers come up with innovative new ideas, and also to expand current ideas.
The Mastering Unreal Technology books are really good for learning how a great engine works. Learning how a great engine works doesn't necessary teach the nuts and bolts of how to create an engine. But, it will teach you the features of a great engine and how those features should work.
There are two versions of the books. An older book and a new set of three (1, 2, 3)
Rapid Development (Amazon.com)
Even though it's more about the development process than actual programming, I'd still recommend anyone involved in development to read Rapid Development (the "other" Steve McConnell book)
This is a novel book but seems like a perfect book for Gamedev according to me. Free download at http://craphound.com/ftw/download/ by the BoingBoing founder.
A nice book that teach you how to write code that can be easily understood, a must-read that taught me much more than I though at first. Talks about meaningful names, comments, functions, formatting, objects and data structure and much more. I highly recommend !