我已经看到了plist
和png
atlasses在我正在开发的游戏中的用法。然而,我注意到保持60 fps的轻微性能快速(加速),并且对于旁注,我的应用程序此刻还没有崩溃。
事情是我注意到我使用SpriteFrameCache
和plist
来做CCactions
动画和我的角色(精灵)。然而有些角色一直在使用SpriteBatchnode
,但这是偶然的,因为我对游戏的深度开发相对较新,我之前没有注意到这种差异,它们都有效,但我觉得两者都是同样,它只是一个比另一个更简单的实现方式,我想也许它是在早期版本中开发的....
所以我的问题是。这两者有区别吗?使用SpriteFrameCache
而不是SpriteBatchNode
,我的游戏会受益吗?
感谢您的帮助。
仅供参考:这不会减慢我的开发速度,这只是一个问题,因为我知道最后我的游戏结束时可能会想要优化我的游戏性能。
答案 0 :(得分:0)
批处理节点在一次绘制调用中绘制所有子精灵。
Sprite框架包含对纹理的引用,并在纹理中定义要绘制的区域。缓存允许您按名称访问精灵帧。
两者都是不同的概念,它们不是彼此的替代品。您可以使用精灵帧来创建精灵或精灵帧动画。除了sprite批处理之外,您还可以使用相同的纹理加速渲染两个或更多精灵。
请注意,如果您使用只有一个子精灵的批处理节点,那么与没有批处理节点的渲染没有任何不同,因为两者都会创建一个绘制调用,因此使用批处理节点没有任何积极影响