From the iPhone OS Programming Guide:"iPhones and iPod touches support two instruction sets, ARM and Thumb. Xcode uses Thumb instructions by default because using Thumb typically reduces code size by about 35 percent relative to ARM.So, are you using cocos2d + chipmunk ? Probably you will need to disable "compile for thumb".
Applications that have extensive floating point code might perform better if they use ARM instructions rather than Thumb. You can turn off Thumb for your application by turning off the Compile for Thumb build setting."
How to:
- Open your XCode project
- Select 'Device - iPhone 2.x' as Active SDK
- For each Target do these:
- Go to: Project -> Edit Active Target
- Search for 'thumb'
- Disable 'Compile for Thumb'
On the other hand, if you're not using Chipmunk, you might want to leave 'compile for thumb' enabled.
| Chipmunk example | Thumb disabled | Thumb enabled |
|---|---|---|
| Example 1 | 60 FPS | 60 FPS |
| Example 2 | 30 FPS | 12~15 FPS |
| Example 3 | 15~20 FPS | 8~12 FPS |
| Example 4 | 60 FPS | 30 FPS |
| Example 5 | 12 FPS | 4 FPS |
| Example 6 | 60 FPS | 60 FPS |
| Example 7 | 60 FPS | 60 FPS |
update: Added FPS comparisons
No comments:
Post a Comment