Very impressive article Jake! You are very talented.
nice article! i love seeing the breakdowns.
The author points out that maximizing game performance is quite relative to the type of game you’re working on, so performance tips that may work for one game can be completely pointless for another. Still, there are some key techniques you can use in most cases.
USE CULLING TO LIMIT WHAT IS RENDERED
By default Frustum Culling is utilized by the camera. To quote Unity:
The near and far clip planes, together with the planes defined by the field of view of the camera, describe what is popularly known as the camera frustum. Unity ensures that when rendering your objects those which are completely outside of this frustum are not displayed. This is called Frustum Culling. Frustum Culling happens irrespective of whether you use Occlusion Culling in your game.
Frustum culling is a great way to improve performance and something Unity does by default. The problem with this alone is that it can render objects that we have no direct line of sight with. Imagine standing in front of a door and still rendering all objects behind that door. This is where Occlusion Culling comes in. To occlude is to block, and in this case a game object is blocking the view of other game objects. We can tell Unity not to render objects that are occluded using specific parameters we designate within the occlusion culling window. That allows us to only render objects that we have a direct line of sight to. There’s no reason to render an object at the far end of our camera’s view unless we can see it directly.
Like many of Unity’s built-in features, there are always great assets that can take it to the next level. One that I’d recommend is SECTR VIS, which gives you better control over what can be rendered when.
You can find 10 other useful techniques in the full article on CG Cookie.