Video Game Optimization and over one million other books are available for Amazon Kindle. Learn more



or
Sign in to turn on 1-Click ordering
More Buying Choices
Have one to sell? Sell yours here
Start reading Video Game Optimization on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 

Video Game Optimization [Paperback]

Eric Preisz , Ben Garney
4.4 out of 5 stars  See all reviews (7 customer reviews)

List Price: $39.99
Price: $21.85 & FREE Shipping on orders over $25. Details
You Save: $18.14 (45%)
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 8 left in stock (more on the way).
Ships from and sold by Amazon.com. Gift-wrap available.
Want it Tuesday, May 21? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student

Formats

Amazon Price New from Used from
Kindle Edition --  
Paperback $21.85  
Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Book Description

March 1, 2010 1598634356 978-1598634358 1
"Video Game Optimization" describes a process for increasing the performance of a video game for better gameplay and visual experience. Very few game developers understand the process of optimizing an entire video game, yet learning the process is surprisingly simple and applicable to a broad audience. The book tackles the process of optimization by first describing how to determine where a game is limited and then providing detailed solutions and examples to solving this limitation. All the examples covered in the book can be applied to a variety of game types and coverage of how to optimize system memory, CPU processing, graphics, and shaders is included.

Frequently Bought Together

Video Game Optimization + Real-Time Rendering, Third Edition + Game Engine Architecture
Price for all three: $152.92

Buy the selected items together


Editorial Reviews

About the Author

Eric Preisz is the course director for optimization at Full Sail Real World Education's game design bachelor's program. His practical experience began while optimizing video games and simulation software. Eric is the founder of C2C Simulation, a company that provides visual application development for the modeling, simulation, and training community as well as the location based entertainment industry. His experience involves work with NASA, Army, Department of Homeland Security and other government agencies.

Ben Garney works at PushButton Labs, where he is the lead developer on the PushButton Engine, an open source Flash game framework. Before he got into Flash game development, Ben spent five years at GarageGames, working on Torque engine technology. During that time, he helped ship several games, most notably Marble Blast Ultra on the XBox 360.

Product Details

  • Paperback: 368 pages
  • Publisher: Cengage Learning PTR; 1 edition (March 1, 2010)
  • Language: English
  • ISBN-10: 1598634356
  • ISBN-13: 978-1598634358
  • Product Dimensions: 7.3 x 1.1 x 8.9 inches
  • Shipping Weight: 1.6 pounds (View shipping rates and policies)
  • Average Customer Review: 4.4 out of 5 stars  See all reviews (7 customer reviews)
  • Amazon Best Sellers Rank: #1,111,324 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

4.4 out of 5 stars
(7)
4.4 out of 5 stars
Share your thoughts with other customers
Most Helpful Customer Reviews
12 of 12 people found the following review helpful
3.0 out of 5 stars Good introduction, but seems rushed August 8, 2010
Format:Paperback|Amazon Verified Purchase
I have worked in the graphics (but not game) industry for a few years. A book dedicated to optimizations sounded interesting both for my own benefit, and as learning material for new engineers on my team.

The Introduction could have used a "prerequisites" section. The chapters on graphics, especially, use terms without defining them, e.g. "consider a game with a CPU animation bottleneck caused by having too many bones", p.91. General knowledge of graphics algorithms and terminology is definitely a prerequisite for this book.

The two first chapters serve as a good introduction to the book. The concepts of the Optimization Lifecycle, the Levels of Optimization and the Performance Budget certainly seem like a sensible way to structure - and talk about - optimization work. Chapter 3, The Tools, is necessary, but the section on vendor-specific tools is already slightly out-of-date (does not cover Parallel Nsight). This is inevitable, though - and generally the book is very up-to-date.

Chapters 4-10 is the core of the book. This is mostly very good - covering both CPU and GPU performance issues. The focus on "Holistic" optimization deserves special mention - it keeps the attention where it needs to be, which is on getting the overall game to run "fast enough" rather than needless cycle-optimization of code that's not on the critical path. That said, it's not perfect. Some parts feel slightly disorganized. For example, Chapter 8 has a section called "Locked Culling" - but there's no (explicit) mention of frustum culling in the preceding chapter. Similarly, including "Lights and Shadows" as one of the "Special Cases" seems quite strange. Also, I'd personally wished for more details - and further analysis of some of the performance results, but given that this is an introduction (and that the source is available) I can't complain too much.

Chapters 11-16 consists of various "bits and pieces" of varying usefulness. I got a lot out of the chapter on Managed Languages, which is an area I knew little about.
The chapter on Consoles felt unnecessary. It's short (10 pages), and all it really says it that with fixed hardware you can do more tricks. Perhaps focusing on one specific Console platform, or having a chapter on mobile game development (Android/iPhone) would have been more useful? Similarly, the chapter on GPGPU is too short to bring any real value. After an introduction to what GPUGPU is, there's only room for about a page of bottleneck-detection, and then it's finished.

Unfortunately, the book seems rushed, in that it's riddled with typos and minor errors.
A few examples:
* "such as OpenGL's GetLastError()", p.30. GetLastError is a Win32 API, glGetError is what's intended.
* "Consistency of frame rate, ..., is more important than the frame rate being too high.", p.33.. I assume "too low" is what's intended.
* Figure 10.1 and Figure 10.2 seem to be identical (except the x-axis is shifted). This is problematic since the text asks the reader to compare the graphs.
* "As you can see from this graph, ..", p.262. But there's no graph - only a formula.

There are also occasions where results are misquoted, e.g., "shows that it's about 100x faster", p.249, but the graph shows that it's about 6x faster. This is a shame since it reduces confidence in the numbers and figures quoted, which limits the usefulness of including these (otherwise very interesting) performance measurements in the first place.

Overall, this book has some good content, but it would have been easier to recommend if more of the bugs had been crushed before the book was published.
Comment | 
Was this review helpful to you?
6 of 6 people found the following review helpful
5.0 out of 5 stars A Good Primer July 6, 2010
Format:Paperback
(I put this on my blog, with links, so thought I'd also post it here.)

I had the chance to spend some quality time with Preisz & Garney's recent book "Video Game Optimization" a few weeks back, as I was trapped in a 14 hour plane flight. I hardly spent all that time with it, though I probably should have spent more. Instead, "Shutter Island" and "It's Complicated" (with bad audio) are four hours out of my life I'll never get back.

This book goes from soup to nuts on the topic: types of optimization, how to set and achieve goals, discussion of specific tools (VTune, PIX, PerfHUD, etc.), where bottlenecks can occur and how to test for them, and in-depth coverage of CPU and GPU issues. Graphics and engine performance are the focus, including multicore and networking optimization, plus a chapter on consoles and another on managed languages. Some of the information is in the "obvious if you've done it before" category, but critical knowledge if you haven't, e.g., the first thing to do when optimizing is to create some good benchmark tests and lay down the baselines.

There are many specific tips, such as turning on the DirectX Debug runtime and seeing if any bugs are found. Even if your application appears to run fine with problems flagged, the fact that they're being flagged is a sign of lost performance (the API has to recover from your problem) or possible bugs. I hadn't really considered that aspect ("code works even with the warnings, why fix it?"), so plan to go back to work with renewed vigor in eliminating these when seen.

I also liked reading about how various optimizing compilers work nowadays. The main takeaway for me was to not worry about little syntactic tricks any more, most modern optimizers are good enough to make the code quite fast.

There's very little in this book with which I can find fault. I tested a few terms against the index. About the only lack I found was for the "small batch problem", where it pays to merge small static meshes into a single large mesh when possible. This topic does turn out to be covered (Chapter 8), but the index has nothing under "batch", "batching", "small batch", etc. There is also no index entry for "mesh". So the index, while present (and 12 pages long), does have at least one hole I could detect. There are other little index mismatches, like "NVIDIA PerfHUD Tool" and "NvPerfHud Tool" being separate entries, with different pages listed. Typo-wise, I found one small error on page 123, first line should say "stack" instead of "heap", I believe.

Executive summary: it's a worthwhile book for just about anyone interested in optimization. These guys are veteran experts in this field, and the book gives specific advice and practical tips in many areas. A huge range of topics are covered, the authors like to run various experiments and show where problems can occur (sometimes the cases are a bit pathological, but still interesting), and there are lots of bits of information to mull over. Long and short, recommended if you want to know about this subject.

One little update: Carmack's sqrt trick, mentioned in the book on page 155, is dated for the PC. According to Ian Ameline, "It has been obsolete since the Pentium 3 came out with SSE. The rsqrtss/rsqrtps instructions are faster still and have better and more predictable accuracy. Rsqrtss + one iteration of Newton/Raphson gives 22 (of 23) bits of accuracy, guaranteed."
Comment | 
Was this review helpful to you?
5 of 6 people found the following review helpful
3.0 out of 5 stars Somewhat disappointed April 27, 2010
Format:Paperback
I was highly disappointed in this book. I had high hopes for it, even after browsing the table of contents it looked like it really hit the spot.

It does touch on all right points, but is almost completely devoid of detail in every area. It's basically just a lot of describing of what things ARE, with very little HOW or WHY. It'll tell you what vTune *is*, and what a cache miss *is*, and what a branch misprediction *is*, and what it means for something to be CPU bound vs GPU bound, but I found almost nothing in this book that I didn't already know. A lot was just definitions with very superficial explanations of what is going on behind the scenes.

What this book really needs are case studies at the end of every chapter. It needs before and after source code, an explanation of how a profiler was used to arrive at various conclusions and tune the code. Knowledge is useless if you can't apply it.

If you have a cursory understanding of the types of problems that arrive in optimization of graphical applications, then you might want to do a more thorough read of some of the pages fo the book before you make a final purchasing decision.

I gave it 3 stars because it's ok as one's first introduction to the subject. But if you have any practical experience, even if you just hear about other people talking about optimization, you might already know a lot of the material in the book.
Was this review helpful to you?

What Other Items Do Customers Buy After Viewing This Item?


Forums

There are no discussions about this product yet.
Be the first to discuss this product with the community.
Start a new discussion
Topic:
First post:
Prompts for sign-in
 



So You'd Like to...


Create a guide


Look for Similar Items by Category