I have my iPhone 4 in hand, yesterday was spent getting it ready for development, which also included updating to Mac OSX 10.6, iTunes 9.2, and the latest iPhone SDK. Took forever to finish all that junk, guess that will teach me to update as things become available instead of waiting until I need it all!
Now that I've had several hours to mess around with Rogue Touch in iOS 4.0 there are a few things I can see...
1) Looks like default thread priorities may have changed, so I am trying to force my game thread into a higher priority (for the technically inclined, I needed a joinable pThread to make things work properly. NSThreads are not joinable). This might be due to Apple's "Grand Central" technology trying to schedule things based on it's idea of need, rather than MY idea of what is needed.
2) Updates to some objects seem to take a long time. Select an item in inventory, and as the screen comes into view, the "action" buttons (not throw or drop) will end up showing the wrong activity as it slides in. Let's say I look at a weapon, then go to look at a scroll. As the scroll detail screen slides in, the action still says "wield", and switched to "read" after it stops. Oddly, the item name and icon show correctly, all that info is set AT THE SAME TIME, prior to sliding the display in.
3) Coregraphics draw calls are dramatically slower. I see calls to a resample_create, resample_filter, img_interpolate_stage, resample_byte_v_Ncpp_vector, and esample_byte_h_3cpp_vector... these would appear to be happening due to the new scaling that iOS 4 allows on UIViews and objects so that they can display normal on older devices and upscale to fit the iPhone 4 screen. Googling reveals pretty much nothing on the topic of this.
I do see that the performance degrades more quickly the further out you are zoomed. If you pinch-zoom back up to 100% magnification, things are not perfect, but it does help quite a bit. Zooming way out caused the screen to update slower than molasses in January.
Battery life would likely be affected as kharstin notes, because this Coregraphics scaling appears to be handled by the CPU. Monitoring it shows huge spikes of activity when screen updates are taking place.
Attempting to disable antialiasing did not help. I'm afraid if I can't find a simple solution in a few days I might have to pull it from the app store completely, pending a rewrite in OpenGL when I'm done with Mineko. Hopefully it does not come to that. I'll be asking for UDIDs to test with as soon as I have something that makes a noticeable improvement.
Sorry for the gloomy outlook here, wish I had some better news to report. The good news is I've only spent a couple of hours on this so far, and a solution may present itself yet