【发布时间】:2014-07-06 05:14:33
【问题描述】:
一些背景:
我有一个使用 OpenGL 的现有 OS X 纸牌游戏应用程序。
窗口可调整大小,并始终保持 4:3 的纵横比。
调整窗口大小时,OpenGL 视图也会相应调整大小。所有视觉元素都相应地缩放。即卡片保持它们的相对大小和彼此之间的距离。
我有兴趣将代码移至使用 Sprite Kit 或主要基于 Core Animation 层的系统。 Sprite Kit 在满足我需求的功能集方面对我更有吸引力,但是......
...我担心 Sprite Kit 的性能(或者更确切地说,不必要的性能,特别是在电池供电的 Mac 上)对于一个基本上以 60fps 的速度将相同纹理喷射到屏幕上的游戏,即使没有发生任何事情。 (大多数时候,牌是静止的,因为玩家会思考他们的下一步行动。)
为了减少所需的一些(重复性)绘图,特别是在非常大的窗口尺寸(例如 30 英寸显示器上的全屏),我对使用“脏矩形/区域”或“按需”绘图感兴趣系统。
问题:
Sprite Kit 是否提供某种脏矩形绘图系统,或者实现这种绘图系统的能力? (或者,它基本上会以 60fps 的速度一遍又一遍地绘制所有内容,而不管是否需要重绘?)
【问题讨论】:
-
CoreAnimation 在没有动画发生时不会以 60fps 的速度绘制。
-
@mahal,确实如此。这就是我考虑转向核心动画的原因。但我更喜欢 Sprite Kit 的功能集。
标签: macos core-animation sprite-kit