I'm confused, isn't this quite contrary to the optimization guidelines for iOS apps? There we're told to split large gfx into smaller pieces to save RAM, but once they're too small we have performance problems.




I'm confused, isn't this quite contrary to the optimization guidelines for iOS apps? There we're told to split large gfx into smaller pieces to save RAM, but once they're too small we have performance problems.





I guess it's to do with the collision boxes, it has to draw less.
Yes, and I think that probably needs some clarification. Obviously if you're using tons of 640x480 objects, it could cause slowdown if it's causing you to hit the ram limit. But as long as you're good on ram, you are better off using fewer objects. That's what I've gotten out of this anyway.

It is a "grey area" when it comes to giving "correct" advice on this.
jregork is correct: Don't use too large objects, but don't use too small objects either if it means you will get a lot them.
It takes a while for OpenGL to switch between resources (like different textures). If you have thousands of objects each with different textures (or just alternates between different textures when drawing) you loose a lot of performance.
I just tried switching fine detection to off where it wasn't necessary and HOLY CRAP did it make a difference! Great jobs on the tips everyone!
Yes turning off Fine Detection does make quite a difference (especially when running in Debug rather than Release in XCode)
Shame there isn't an extra tickbox for No Detection as well as Fine, since some objects just don't need it, eg scaling and rotating graphical effects which must slow it down a bit checking for collisions when they're never used.

AyreGuitar: MMF2 only checks for collisions between objects where you actually have actions that tests for collisions between them. For backdrop objects no collision testing is made on the ones that aren't set to 'obstacle'.
So you only need to worry about the objects that are actually involved in collisions events in your game![]()
Andos - that's very good to know!
The only reason I mentioned it, is because I have some scaling and rotating effects objects that caused slowdown on fine detection but speeded up when changed fine detection turned off. Seemed logical to assume a speed increase if had no detection. There are no collision events for these objects - they're just created when an object is picked up. I'll check the events again in case they're part of a Qualifier Group.
It is right Diablohead iPod Touch only has 256 MB RAM and that's a big difference!