- Series: Game Development Series
- Paperback: 512 pages
- Publisher: Cengage Learning; 2 edition (October 24, 2006)
- Language: English
- ISBN-10: 1584504528
- ISBN-13: 978-1584504528
- Product Dimensions: 1 x 7.2 x 9 inches
- Shipping Weight: 1.8 pounds
- Average Customer Review: 4.1 out of 5 stars See all reviews (15 customer reviews)
- Amazon Best Sellers Rank: #818,862 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
C++ For Game Programmers (Game Development Series) 2nd Edition
Use the Amazon App to scan ISBNs and compare prices.
Customers who bought this item also bought
What other items do customers buy after viewing this item?
About the Author
Michael Dickheiser (Raleigh, NC) is a Software Engineer with over nine years experience in team-oriented projects within the computer game industry. He has been involved in all stages of development from conceptual design, technical design and documentation, to implementation, debugging, and formal testing.Dickheiser was most recently a Senior Engineer at Red Storm Entertainment and he is now Senior Computer Scientist at Applied Research Associates.
If you are a seller for this product, would you like to suggest updates through seller support?
Top Customer Reviews
If you're a computer science student looking to work in games or a seasoned developer who needs to brush up for a job interview (or just day-to-day development) - then this book is a fine choice!
The Performance and Memory Management topics are clearly worth buying this book. The style of writing is clear and entertaining. If you like programming and if you like C++, you'll enjoy clear explanations. Something else that I've really appreciated is that for some problems, the author explains several solutions, discussing the pros and cons of each one, until reaching the 'best' one. This is nice, because it encourages the reader to think by himself and to learn from the mistakes.
I don't give it 5 stars because I'd have liked to receive more in-depth information on scripting, since this is something that is of growing importance in the market.
Conclusion: if you want to be better at programming in C++, buy this book.
Michael Dawson's book's last chapter talked about the basics of Inheritance, and the first chapter of this book started talking about Inheritance, this coincidence was funny and awesome for me, the transition between books made me feel the same way I felt the day I finished elementary school and began to go to high school.
I found the information in this book amazing and really valuable. I really loved it, it was intensive enough for me to understand most of the code I have seen in StepMania, it explained technical implications in detail to be conscious about where to use a specific feature of C++ or not, at the end of the chapter provides you a list of additional sources if you want to research further in a specific topic. It also helped me to understand about many mistakes I did when developing my own StepMania version with only the background of PHP/JS.
I don't like to give 3 stars to such a good book that deserves 5 stars, but I really have to do it.
The first dropped star is because there is no digital version, although this has nothing to do with the quality of the book, the lack of digital version affected my overall experience with it. I have different devices (PC/iPad/Kindle), and I use all of them in conjunction with Paperback for a single book, for ex. if I don't remember something but I know its in the book, a search in the digital version is pretty straightforward. When I'm having a meal, waiting in a line (ex. bank), in the restroom, etc. its really comfortable to read it in the Kindle, or in the iPad if i'm at home, and finally, I use the Paperback format to read during my travel to work in public transport since its too dangerous to read using a device because of the delinquency of my country. With this specific book I had to break my reading habits, If I could spend 2-3 hours per day reading it, I had to reduce it to 1 hour per day.
The second dropped star is because some chapters doesn't feel as good and polished like most of the content of the book, they were either incomplete or not what I was expecting, I even felt like "now what?" after reading them because of this "incompleteness".
Chapter 13: Plug-Ins, has an excellent overview about why you should consider using plugins and gives you useful examples for Windows, but that's all, the chapter ends with "Both Linux and Apple operating systems have similar mechanisms to load dynamic libraries" but doesn't provide more information, and the Suggested Reading, is just a Microsoft's Book (although its explained that there are almost no information).
Chapter 14: C++ and Scripting, after the amazing coverage of STL in the previous chapters I was expecting at least the basics of LUA (or Python) rather than 17 pages explaining why scripting is a good idea and where you should use it.
Chapter 17: Object Serialization, This chapter explains pretty well the basics of object serialization, but it lacks a further discussion, I was interested about serialization strategies with binary formats less likely to break with changes of the structure.
Chapter 18: Dealing with Large Projects, I found the title of this chapter misleading, it talks about architectural strategies which also apply for small projects, a better title could be "Project Architecture", the content is OK, but the title bugs me.
Anyway, I really recommend this book, Its worth every penny, and I would not mind paying a bit more if the chapters mentioned before had a deeper coverage, but don't take my poor background as a reference to decide whether to read it or not. The book is pretty dense and it would be difficult for a "normal person" to be able to digest it the way I did.
I do not regret buying this book and recommend that anyone who is getting ready to design efficient code should get it as well.