Optimising iOS Level Load Times

I need some advice on how to improve my iPad game’s level load times. The main level for my game is currently taking roughly 10 seconds to load.

  1. I procedurally create most poly objects, and an average frame will have from 250 to 1000 vertices
  2. I’ve shrunk every texture to fit within 64x64 (they now consume less than 3mb). After shrinking all the textures the load times actually increased by one second
  3. My sound load types are “Compressed in Memory”
  4. I’ve compressed all my sounds to 32 kbps (they now consume roughly 500kb)
  5. I’ve tried using Application.LoadLevelAsync to hide the load times, but the game freezes while loading… for ten seconds

Below is the Editor Log from building my current test scene. Any thoughts or suggestions?

Mono dependencies included in the build
Boo.Lang.dll
Mono.Security.dll
System.Core.dll
System.dll
UnityScript.Lang.dll
mscorlib.dll
Assembly-CSharp-firstpass.dll
Assembly-CSharp.dll
Assembly-UnityScript.dll    

Unloading 3537 unused Assets to reduce memory usage. Loaded Objects now: 1943.
System memory in use: 295.5 MB.
Unloading 37 Unused Serialized files
  (Serialized files now loaded: 2 / Dirty serialized files: 2)

Textures      2.8 mb	 32.3% 
Meshes        8.6 kb	 0.1% 
Animations    418.1 kb	 4.8% 
Sounds        550.6 kb	 6.3% 
Shaders       1.9 kb	 0.0% 
Other Assets  160.5 kb	 1.8% 
Levels        158.8 kb	 1.8% 
Scripts       420.4 kb	 4.8% 
Included DLLs 4.1 mb	 47.3% 
File headers  68.5 kb	 0.8% 
Complete size 8.6 mb	 100.0%

Check also if you have a lot of textures that you are loading. I suspect that it is related to the objects you are procedurally creating at runtime.