HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了"learn iPhone and iPad cocos2d Game Development" 学习(Tips 5)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

转载自:@L_674_0@

tips 1:CCSpriteBatchNode的CCSprite节点都必须使用同一个图片文件,你可以把不同的图片放到同一个纹理贴图集中,然后利用CCSpriteBatchNode将所有图片渲染出来,以提高渲染速度。当你需要显示两个或者更多个相同的CCSprite节点时,你可以使用CCSpriteBatchNode。组合在一起的CCSprite节点越多,使用 CCSpriteBatchNode得到的效果提升就越大。不过因为所有的CCSprite节点都添加到同一个 CCSpriteBatchNode中,所以所有CCSprite节点都会使用相同的z-order(深度)来渲染。你可以把CCSpriteBatchNode看成CCLayer,唯一的区别是:CCSpriteBatchNode 只接受使用同一张纹理贴图的CCSprite节点。


tips 2认的初始化方法-(Id)init中,不应该调用除了[super init]以外的方法。如果你必须在类的初始化方法调用像[super initWith...]这样的方法,你应该将初始化方法命名为类似于-(id)initWith...

tips 31. 通过定义自己的方法来封装常用的代码2. 使用Objective-C的类别(Category)给已存在的类添加额外的方法。 3. 定义资源文件(比如动画帧文件)时要使用命名规则。

tips 4注:如果你使用了512x512像素或者更大的纹理贴图集,你应该在游戏开始之前加载贴图。因为加载这么大的贴图是需要一些时间的(在最坏的情况下会导致游戏停滞好几秒钟)

tips 5cocos2d会自动生成所有图片的缓存,所以你需要一个方法来卸载不再需要的贴图内存。大多数情况下,你可以依赖cocos2d来帮你卸载: 

[[CCSpriteFrameCache sharedSpriteFrameCache] removeUnusedSpriteFrames];

 [[CCTextureCache sharedTextureCache] removeUnusedTextures];

很显然,在有不需要用到的贴图存在时,你才应该调用上述方法

如果你想在加载新场景之前完全删除所有内存中的贴图,你应该使用以下方法:

[CCSpriteFrameCache purgeSharedSpriteFrameCache]; 

[CCTextureCache purgeSharedTextureCache];

tips 6你要小心那些从网上下载的精灵和音频包。有些地方下载的“免费”素材其实并不免费。除非你得到许可,才可以将它们用到你的游戏中去。因为很多下载的“免费”素材是不允许重新发布或者用于商业目的的,比如用于你在App Store发售的游戏中。

大佬总结

以上是大佬教程为你收集整理的"learn iPhone and iPad cocos2d Game Development" 学习(Tips 5)全部内容,希望文章能够帮你解决"learn iPhone and iPad cocos2d Game Development" 学习(Tips 5)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。