IPhone Optimization Tips
Ragdolls make the game significantly slower. Give the player the option to
use ragdolls or not.
Skinned Mesh Renderer:
Set Quality to 1 Bone
Uncheck Skin Normals
Set iPhone Script Call Optimization to “Fast but no Exceptions”. Naturally,
set it to “Slow and Safe” during debug.
Don’t play new compressed music at the middle of the game, it freezes the
game for a short duration. Play it at scene initialization instead.
Remove most (or all) lights from your scene. Use baked lighting instead.
In Project Settings > Time: Set Maximum Allowed Timestep to 0.1 bringing
the game’s framerate to at least a guaranteed 10 fps minimum, assuming
your bottleneck is coming from the physics. Use the profiler to find out
where your bottleneck is.
Keep drawcalls under 20 if at all possible
Scripting tips:
Avoid SendMessage() calls, create a script/class variable to hold a
reference to the specific scripts you want to call, and use a standard
method call. Method calls are ~100x faster than SendMessage()!
Avoid Find or GetComponent type calls during normal runtime if at all
possible, use script variables to hold references.
initialize script variables in Awake()
For example in Javascript: