官术网_书友最值得收藏!

Chapter 1. Detecting Performance Issues

Performance evaluation for most software products is a very scientific process: determine the maximum supported performance metrics (number of concurrent users, maximum allowed memory usage, CPU usage, and so on); perform load testing against the application in scenarios that try to simulate real-world behavior; gather instrumentation data from test cases; analyze the data for performance bottlenecks; complete a root-cause analysis; make changes in the configuration or application code to fix the issue; and repeat.

Just because game development is a very artistic process does not mean it should not be treated in equally objective and scientific ways. Our game should have a target audience in mind, who can tell us the hardware limitations our game might be under. We can perform runtime testing of our application, gather data from multiple components (CPU, GPU, memory, physics, rendering, and so on), and compare them against the desired metrics. We can use this data to identify bottlenecks in our application, perform additional instrumentation to determine the root cause of the issue, and approach the problem from a variety of angles.

To give us the tools and knowledge to complete this process, this chapter will introduce a variety of methods that we will use throughout the book to determine whether we have a performance problem, and where the root cause of the performance issue can be found. These skills will give us the techniques we need to detect, analyze, and prove that performance issues are plaguing our Unity application, and where we should begin to make changes. In doing so, you will prepare yourselves for the remaining chapters where you will learn what can be done about the problems you're facing.

We will begin with an exploration of the Unity Profiler and its myriad of features. We will then explore a handful of scripting techniques to narrow-down our search for the elusive bottleneck and conclude with some tips on making the most of both techniques.

主站蜘蛛池模板: 阿拉善右旗| 东山县| 台东市| 衡东县| 陈巴尔虎旗| 大渡口区| 思南县| 伽师县| 汪清县| 武安市| 高要市| 印江| 宁德市| 迭部县| 襄城县| 天台县| 临武县| 新平| 郯城县| 高尔夫| 耒阳市| 四会市| 江永县| 绥宁县| 沅江市| 吐鲁番市| 七台河市| 荣成市| 香格里拉县| 辽宁省| 都兰县| 炉霍县| 大新县| 遵义县| 奉新县| 文水县| 全州县| 德安县| 平遥县| 东乌| 芦溪县|