我一直在构建 2D 游戏,并且一直在子类中绘制游戏区域,在该UIView
子类中我覆盖drawRect:
并使用大量UIBezierPath*
对象绘制游戏。我在 iOS 上不是很有经验,我一直想知道这是否是正确的方法。
所以我想我的问题是多少才够?我应该何时停止使用UIBezierPath
并开始使用 OpenGL 或 Metal?我可以使用它们在内部绘图UIView
还是完全控制屏幕?
什么时候应该停止使用没有答案UIBezierPath
。您需要在开始时问自己,您需要使用什么工具来实现您的应用程序以您希望的方式工作所需的东西。您使用的核心图形程序与此相比非常简单openGL
,但性能并不是最好的,而且大多数情况下您在绘图中甚至可以达到的效果非常有限。一般来说,只要适合您,您应该使用尽可能简单的程序。
OpenGL 和 Metal 与视图绑定,不会控制整个窗口(iOS 中的屏幕)。此外,您仍然可以在不破坏任何绘图或功能的情况下向这些视图添加子视图,例如,即使是全屏视图 openGL 应用程序也可以简单UIButton
地暂停游戏或让您的主角拿起那把大剑杀死龙来拯救公主。