10

我正在尝试在我的 iPhone 应用程序中创建图像的“页面卷曲”动画。它是 UIViewAnimationTransitionCurlUp,它是无证的核心动画兄弟,但是我需要动画的图像是透明的 PNG,具有“不均匀”(一些 alpha 像素)轮廓。当使用上述预先制作的过渡时,这些 alpha 像素在动画开始时立即被涂成黑色,这看起来非常难看。

因此,我寻求创建自己的核心动画。我试图研究该主题,但无法找到所涉及技术的良好概述。实现当然必须比单个属性更改更复杂,我觉得即使 CATransform3D 也仅限于此目的,因为图像需要在其不同部分应用不同的 3D 转换 - 随着时间的推移而变化. 那么如何处理这个问题呢?我非常感谢任何想法或想法!

最好的,伊莱

4

2 回答 2

6

正如Corey 指出的那样,您可能需要为此使用OpenGL ES。Core Animation 展示了使用图层的能力,即使在 3-D中也是如此,但所有图层都只是矩形,它们都是这样操作的。你可以动画层围绕轴的翻转,即使是透视变形,但是你想要做的那种弯曲比你使用 Core Animation API 管理的更复杂。

您也许可以将图像分割成一个由微小层组成的网格,并使用 CATransform3D 对每个层进行操作以创建这种弯曲效果,但此时您也可以使用 OpenGL ES 来创建相同的效果。

于 2009-10-01T02:55:44.480 回答
0

Mac OS X 和 iPhone 的核心动画:从实用程序员创建引人注目的动态用户界面一书可以帮助您编写自定义核心动画动画。

于 2009-09-28T22:39:51.463 回答