2014-12-02 44 views
1

我正在尝试执行一些全屏动画效果,如移动/缩放窗口和效果,如文件如何“跳入”Safari中的下载文件夹。CoreAnimation的全屏动画效果?

我第一次尝试是使窗户,NSImageView内容视图,并使用CoreAnimation移动窗口在屏幕上。这很失败,因为CoreAnimation在这种动画窗口中显然非常慢(NSViewAnimation也失败了)。令人惊讶的是,在网络上没有太多关于这方面的文章,或者表明没有人这样做,或者他们没有性能问题。

我已经离开正在一个全屏透明窗口和(使用CoreAnimation)动画的窗口内NSViews或做与精灵全屏透明OpenGL上下文的其他的想法。

什么其他的选择或者是有一些方法,使CA动画窗口流体? CoreAnimation应该很容易,所以我很困惑。多谢你们!

回答

0

我放弃了这个好几个月,直到我发现这个链接的例子:

http://www.cimgf.com/2008/03/15/core-animation-tutorial-dashboard-effect/

其最佳的工作是基本的解决方案使用全屏透明窗口和CALayers专(不含如果可能的话阴影)并仅对这些图层进行动画处理。使用NSView或NSWindow将不起作用。

你可以达到同样的性能,我相信通过设置在透明窗2D OpenGL上下文,但是这将是更多的开销。同样,SpriteKit或Cocos2D可能与纯CALayers或OpenGL上下文相同。