Vous voulez voir cette page en français ? Cliquez ici.

Sign in to turn on 1-Click ordering.
Amazon Prime Free Trial required. Sign up when you check out. Learn More
More Buying Choices
Have one to sell? Sell yours here
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Multi-Threaded Game Engine Design [Paperback]

Jonathan S. Harbour

List Price: CDN$ 64.99
Price: CDN$ 40.94 & FREE Shipping. Details
You Save: CDN$ 24.05 (37%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 1 left in stock (more on the way).
Ships from and sold by Amazon.ca. Gift-wrap available.
Want it delivered Thursday, April 17? Choose One-Day Shipping at checkout.

Book Description

Aug. 19 2010 1435454170 978-1435454170 1
MULTI-THREADED GAME ENGINE DESIGN shows experienced game developers how to apply multi-thread techniques to game programming technology to improve game performance. Using Direct3D and C++, a sample game engine is created step-by-step throughout the course of the book, and numerous examples illustrate the concepts presented. Detailed screenshots and well documented source code help readers understand the techniques being presented throughout the book. Multi-threading is one of the hottest game development topics today and this book will show you how to apply cutting edge techniques to your programming skill set.

Customers Who Bought This Item Also Bought

Product Details

Product Description


1. An Introduction to Symmetric Multiprocessing. 2. Working with Threads. 3. Working with OpenMP. 4. Creating The Engine Core. 5. Rendering I: Setting Up The Pipeline. 6. Rendering II: Mesh Objects and Scenes. 7. Threading The Engine for Performance. 8. Threading The Renderer and Entity Manager. 9. Creating The Test Environment (Simulation/Game). 10. Optimizing The Threaded Engine. Appendix A: Configuring Your C++ Compiler . Appendix B: Additional Resources Related to Multi-Processing. Appendix C: References/Bibliography.

About the Author

Jonathan Harbour taught game development as an Associate Professor at UAT (Tempe, AZ) for five years. He has written more than 20 books (plus revisions) on most of the major programming languages, such as C++, C#, VB, Java, and Python. He has also tackled hardware such as the Xbox, Xbox 360, Windows Phone, Android, Game Boy Advance and Pocket PC. He can be reached at www.jharbour.com.

Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index
Search inside this book:

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Customer Reviews

There are no customer reviews yet on Amazon.ca
5 star
4 star
3 star
2 star
1 star
Most Helpful Customer Reviews on Amazon.com (beta)
Amazon.com: 3.1 out of 5 stars  9 reviews
18 of 22 people found the following review helpful
2.0 out of 5 stars Disappointing book. Oct. 8 2010
By Avengre - Published on Amazon.com
Format:Paperback|Verified Purchase
I bought this book expecting it to tell me how to effectively incorporate Multi-threading into a game engine, which is likely what anyone would think. I was very much mistaken by deciding to purchase this book. The title leads you to think it would have been a great resource for this fashion, but alas its not.

The book starts off by telling you what its not, which mostly includes, "Not a good resource for advanced engine techniques, or building an efficient engine". Not exactly the strongest start, but proceeding on it has a very bright outlook when it discusses the first few chapters on multi threading. Unfortunately, it mearly tells you that there are a few options for multi threading (Windows Threads, Boost::Threads, OpenMP, POSIX), and gives a few lines of code (perhaps 3-5 lines of code specific to each Threading API). No explanation of even what the different arguments really pertain to for any of the function calls. It mentions mutex's only briefly, and says its out of the scope of this book. [Which I found to be rather odd, as mutex's are an EXTREMELY important aspect of Multi threading]. It then proceeds to spend the next 430 pages (out of 564 text pages) discussing how to implement DirectX and a few misc features of an engine. The kicker is, there is basically no explanation of why certain functions or classes are being used. Many many many pages, probably almost 1/2 are nothing but source code cut and pastes. Considering the cost of the book, at best highlights could have been included instead of pumping the page count up by using over-sized font sizes on cut and pasted code blocks. Additionally there are numbers of spots in the book where large sections of text are taken up by a single picture or two. The most glaring example is the section on Matrices, when an entire page was dedicated to two, 4x4 matrix pictures.

the only section which references "Multi-threading agme engine design" is the last chapter. In which the only API used is OpenMP. And surprise again, its large sections of code pasted with a single line or two of OpenMP #pragmas.

What this book is good for:

Now I have to be fair and provide some positives from this book. If you're looking for a 1000ft view of game engine creation, this is probably a good book. It touches on all the fairly interesting sections, short of networking and sound. It gives some examples of how to implement .X mesh loading, and entity management. It provides a very quick primer on the multi-threading API's available.

Unfortunately, my take on the book, was that it is a fairly poorly written book lacking Actual information. The font is rather large for a "text book" style Programming Text, uses over sized pictures, code blocks, and numerous 'bullet points' to expand the page count. So as such, I can't suggest anything more than two stars.

Reader Beware.
11 of 13 people found the following review helpful
1.0 out of 5 stars Definetly don't judge by it's cover or title Nov. 3 2010
By Goscho86 - Published on Amazon.com
Format:Paperback|Verified Purchase
When I first saw the title of this book I was really excited and thought that it was exactly what I needed to be able to convert my current game into a multithreaded game.

But as most of the other reviewrs has also written that's not the case. I have never written a bad review but this book leaves me no choice and I feel I have a right to save others from the same.

The book spends one way too general chapter on what Multi-threading is and what options you have for your game engine. The rest of the book is then spent building a simple serial game engine, which in my opinion is not as good as many other engines built in books eg. the Luna series.

Then the last chapter shows you how to add OpenMP lines to loops in that engine with no explanation of why the sections are chosen or what the gains are now that its "multi-threaded"

The book should be renamed "Adding OpenMP to the loops of a simple serial Game Engine". If you have already got some game programming experience under your belt don't waste your money, you'll learn just as much from your average OpenMP tutorial online. And if you are completely new try one of the Frank Luna books instead
5 of 6 people found the following review helpful
2.0 out of 5 stars Like an old-school programming book Jan. 1 2011
By M. A Little Chubby - Published on Amazon.com
Format:Paperback|Verified Purchase
I agree with the other reviewers. This is like a game programming book from the 90s. It spends 20-30 pages actually talking about threads and then the rest of the book is a tutorial on writing a DirectX engine.... and a poor one at that. If you're looking for a step by step guide to assemble a small game engine, then I guess this book helps, but if you're looking for ideas and workarounds to building a multi-threaded game engine forget it.
2 of 3 people found the following review helpful
5.0 out of 5 stars Good book April 21 2011
By reader - Published on Amazon.com
Format:Paperback|Verified Purchase
Good book for those who have no good idea how a game engine looks like. You need to know C++ and have a basic understanding of DirectX. OpenGL seems not good for Windows anymore. I didn't buy this book for Multi-Threading, I bought it to follow the author's other book which is: Advanced 2D Game Development. This new one improves the basic engine of the old one and includes basic Shaders technology too. With this book, you won't make a professional game engine, you just make a basic game engine that requires lots of works. Of course, you can latter read more advanced books to find how to make this engine perform better and how to add more features. If I were the author, I would title the book as: Beginning Game Engine Programming with Basic Multi-Threading. Also I would put the Part I of the book at the end.
5.0 out of 5 stars The perfect book to go through if you are interested in multi-threading and making a DirectX rendering engine Nov. 29 2013
By Ben - Published on Amazon.com
Format:Paperback|Verified Purchase
This book far exceeded my expectations. It starts off with the very basics in multi threading and testing speeds. THen gets increasingly more advanced, showing you options in multi threading. Then he codes an entire render engine with you. It's exactly what I needed. I would love for an updated version with DirectX 11 and the usage of the new 0x11 standars that were adopted. The book is a tiny bit outdated, using boost package threads rather than the new std::threads. But I really have no complaints.

Look for similar items by category