【问题标题】:Animating and rotating images in iOS在 iOS 中动画和旋转图像
【发布时间】:2011-06-20 07:23:20
【问题描述】:

我有一组需要交互的 36 个汽车图像。即,使用 touchesMoved、touchesEnded 方法。轻按汽车的任何部分都会显示一个弹出框,具体取决于轻按下方的哪个部分。

例如,

用户向左滑动,汽车向左旋转。然后他选择前门或其他部分,根据选择的部分,我可以显示一个带有选项的弹出框。

我在 iOS 应用程序开发方面经验丰富,但不精通此类动画和交互。

我很困惑是使用 CoreGraphics 还是 openGL。有人能指出我正确的方向吗?非常感谢您提供一些示例代码或任何材料的链接。

【问题讨论】:

    标签: ios animation opengl-es core-graphics rotation


    【解决方案1】:

    如果您要绘制精灵(平面图像),那么take a third option:Core Animation。在 UIView 中表示每辆汽车,并使用视图的 CALayer 实际显示汽车并使其具有动画效果。

    如果你想将汽车绘制成一个三维物体,那么没有两种方法可以绕过它:你必须使用 OpenGL ES。

    至少在 GL 套件到达之前。您仍将使用 OpenGL ES,但这应该会更容易。关键是,you'll have to require iOS 5

    【讨论】:

      【解决方案2】:

      OpenGL 要求您自己做所有事情。它为您提供了强大的绘图工具,但您必须掌握它们才能使它们有用。但归根结底,OpenGL 归结为铅笔、画笔和蒙版。没有像动画系统、图形对象等那样的支持。

      那些必须由更高层实现。要么自己写,要么第三方写。 CoreGraphics 本质上就是这样一个层。您的任务听起来很像基于用户滑动和对点击做出反应的多个图像之间的混合。

      这可以使用 OpenGL 完成(哎呀,我可能会比我首先必须学习使用 CoreGraphics 更快地在 OpenGL 中编写代码),但如果您是 OpenGL 新手,那么 CoreGraphics 可能是更好的选择。

      【讨论】:

      • 感谢您的提醒,但我会将@Peter 的答案标记为正确,因为它更适合我的平台。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-15
      • 2011-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多