【问题标题】:iOS - rotating a sphere and responding to touchiOS - 旋转球体并响应触摸
【发布时间】:2013-08-07 20:25:58
【问题描述】:

我的任务是创建一个可以通过触摸(或动画)沿一个轴旋转的球体,就像一个普通的地球仪。我还应该能够在这个球体上绘制动画线(例如,在悉尼和纽约之间画一条线)。我通常在 2D 中制作所有动画,通常使用核心动画,因为我从来没有真正需要做任何其他事情。我有一种感觉,这种问题虽然需要我跳入 OpenGL。

我的问题是是否可以使用核心动画来实现这一点(时间至关重要),或者我是否需要快速学习 OpenGL。如果是这样,这是一个相当简单的问题要解决吗?我是一个很好的程序员,但我没有 OpenGL 经验。一个有能力的程序员能在 2 周内做到这一点吗?

作为另一个问题,假设我确实使用 OpenGL,如果我需要在项目中做其他事情(例如,显示不同的屏幕,或在球体顶部显示屏幕),我可以使用 UIKit 还是整个项目需要在OpenGL中吗?

【问题讨论】:

    标签: iphone objective-c opengl-es


    【解决方案1】:
    1. Core Animation 用于动画视图,基本上是一个 2D 动画层 - 所以它不适合 3D 旋转球体。
    2. 绘制带纹理的球体相当容易,请参阅sample
    3. 混合使用 GL 和常规 UIView 不是问题。您可以在 GL 视图上覆盖常规控件。

    【讨论】:

    • 我意识到 Core Animation 只是 2D,但我认为扭曲 2D 层以呈现球体外观可能是可行的。这可能超出了我个人的范围,但似乎仍然应该可行?也感谢您的链接 - 看起来很方便。
    • 通过 2D 变换可以做的只有这么多。我建议你使用 OpenGL,有很多关于如何绘制带纹理的球体的好例子。谷歌 NeHe 教程获取大量信息
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-03
    • 1970-01-01
    • 2021-01-10
    • 2011-07-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多