Gamasutra is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Gamasutra: The Art & Business of Making Gamesspacer
Sponsored Feature: Updated Tools Spice Up New Ghostbusters Game
View All     RSS
February 28, 2020
arrowPress Releases
February 28, 2020
Games Press
View All     RSS







If you enjoy reading this site, you might also want to check out these UBM Tech sites:


 

Sponsored Feature: Updated Tools Spice Up New Ghostbusters Game


January 14, 2010 Article Start Previous Page 2 of 4 Next
 

Step 3: Conduct a Single-Frame Analysis

The team wanted to investigate other possible hot spots in the scene by using the Intel GPA Frame Analyzer.

According to the Intel GPA Frame Analyzer, the Library scene had 12,564 Draw() calls (Fig. 3). However, other scenes in the game typically had about 3,000 Draw() calls, and those scenes had higher frame rates. The conclusion was that there were too many Draw() calls in the Library scene, indicating to the team that further testing should be aimed at reducing the number of Draw() calls in the troublesome scene. The team also wanted to investigate how many of these calls were coming from the rendering of the books.

Step 4: Estimate the Cost of Rendering the Books

The team placed the camera in front of a wall that had no objects behind it. Because this is a third-person view game, the characters in the Library scene are still rendered-as they should be. However, the books, which are now behind the camera, are invisible and should not be submitted for rendering due to the game's culling algorithm.

The team wanted a reliable estimate of the cost of rendering the books. By submitting the scene to the Intel GPA Frame Analyzer (Fig.4), the team discovered the scene had 14,731 Draw() calls, confirming that the books were quite expensive to render. In fact, the overhead of rendering the books is significant enough that it negatively affected the frame rate when the books were occluded yet still rendered.

Step 5: Verify the Potential Gains

Next, the team included a software switch in the graphical user interface (GUI) that allowed them to completely turn off rendering for all the books (whether visible or occluded). They then rendered the scene by dynamically turning this switch on and off, allowing them to determine the change in frame rate when books were rendered versus when they weren't.

When book rendering was turned off, the frame rate increased by approximately 2.5 times, as shown by the data from the Intel GPA System Analyzer within the red oval in Figure 5. This indicated that the cost of rendering the books in the scene was quite high.

At this point in the analysis, the obvious options for increasing the performance of this scene were either:

  • Don't render the books that aren't visible in the scene, or
  • Reduce the number of books in the scene.



Article Start Previous Page 2 of 4 Next

Related Jobs

Purdue University
Purdue University — West Lafayette, Indiana, United States
[02.28.20]

Assistant Professor in Game Development and Design
Heart Machine
Heart Machine — Culver City, California, United States
[02.28.20]

Gameplay Engineer
Vicarious Visions / Activision
Vicarious Visions / Activision — Albany, New York, United States
[02.28.20]

Senior Software Engineer
Sucker Punch Productions
Sucker Punch Productions — Bellevue, Washington, United States
[02.28.20]

Gameplay Programmer





Loading Comments

loader image