In the game I'm making there's 5 instanciaters which will birth 2 objects a piece over the life of the level. The objects themselves are baskets with 3 balloons attached and have about 100 faces or less, as the baskets move across the screen you can fire arrows at them which if don't hit the balloons will be destroyed after 2 seconds and the baskets and leftover balloons are destroyed once they hit a collider outside of the view. The game runs smooth until the last 2 objects are born and then starts to run a little slower. If i reload the game by refreshing the browser it runs perfect again until the last 2 objects. The only Update Functions in the game are attached to the bow and arrow for aiming reasons and on the baskets to move them across the screen but those are destroyed once they cross the screen. I have the fixed timestep set at .01 because .02 lets the arrows fly trough the balloons without destroying them, but even at .02 the game still slows at the same time. Any ideas on why it would do this or how to fix it? thanks
Try not to destroy but to deactivate the game objects.
The next Application.LoadLevel() does the job
There are a couple of answers regarding performance issues of Object.Destroy() and garbage collector runs. (search for 'destroy')