When asked what affects frame rate (the number of frames per second that the engine can output), most people
are quick to reply “poly count” (the number of polygons in the scene). While this is certainly a major contributor,
in reality, almost everything contributes: the number of scripts being evaluated, the objects that are animating, the
physics solutions being calculated, the GUI elements being rendered and monitored, the amount of textures stored
in memory, the number of polygons within the view frustum at any one time, the network communications being
sent back and forth, the shadows and shaders being calculated, and just about everything else. Unity Pro’s Profiler
is a great help in finding where resources are bottlenecking and can help you streamline your code for games
that need high frame rates or need to run well on mobile platforms, where resources are more limited.