Cocos2d精灵深入解析
在开发Cocos2d游戏时,精灵(Sprite)是一个非常重要的元素。本文将深入探讨Cocos2d中精灵的相关知识,包括Retina显示支持、CCSpriteBatchNode的使用、常见错误及优化方法,还有精灵动画的创建。
1. Retina显示支持
在Cocos2d中启用Retina显示分辨率支持,需要调用 CCDirector 的 enableRetinaDisplay 方法:
if (![director enableRetinaDisplay:YES])
{
CCLOG(@"Retina Display Not supported");
}
需要注意的是,如果启用了Retina显示支持,应该为所有精灵、位图字体、粒子效果等提供高清(HD)图像。否则,应用在标准清晰度(SD)设备上显示正常,但在Retina显示屏上,没有HD版本的视觉元素将以一半的尺寸显示。
2. CCSpriteBatchNode
每次在屏幕上绘制纹理时,图形硬件都需要进行渲染准备、渲染图形以及渲染后清理工作。单个纹理的渲染开始和结束会带来固有的开销。可以通过告诉图形硬件有一组使用相同纹理的精灵需要渲染,来减轻这种开销。在这种情况下,图形硬件只需为一组精灵执行一次准备和清理步骤。
例如,屏幕上有数百个相同的子弹,如果逐个渲染它们,帧率至少会下降15%。使用 CCSpriteBatchNode 可以避免这种重复工作。
超级会员免费看
订阅专栏 解锁全文
94

被折叠的 条评论
为什么被折叠?



