CoreAnimation fade "jerky" on OS X Leopard (CPU 100%)
I've made a screensaver which displays tables of statistics across a number of "screens" which it fades between. I've used only CALayers and implicit animation, but even so the animation is jerky at best; rather than a smooth transition there are 3 "jumps" between screens, one at ~5%, one at ~30%, then 100%.
Running top
in a terminal from another machines, the screensaver always hits 100% CPU during transitions.
I'm running this on a Mac mini, PowerPC G4 (1.5) @1.33GHz with 512MB RAM, running Leopard. No other pr开发者_开发知识库ograms are "active" during running.
System Profiler states that Core Image is supported by software, so I'm assuming the implicit animations are computed in the CPU rather than the built-in Radeon card.
What would one need to do to move the animation to the GPU?
OS X will automatically do the animation on the GPU on most graphics cards that support pixel shaders 2, I believe. The exact list of supported GPUs is pretty hard to find, since it hasn't really been talked about since 10.4 came out. The minimum spec list is:
- ATI Mobility Radeon 9700
- ATI Radeon 9600 XT, 9800 XT, X800 XT
- nVidia GeForce FX Go 5200
- nVidia GeForce FX 5200 Ultra
- nVidia GeForce 6800 Ultra DDL, 6800 GT DDL
So it seems the Radeon 9200 and 9500 in Mac mini and iBook G4s is not properly supported.
精彩评论