在做游戏时,会用于很多和图片资源,包括角色,动画,纹理贴图……为了减少GPU和CPU的缓存占用以及图片的重复利用,在游戏开始时,都会预加载这些资源进入缓存,在cocos2d-x里用的是CCTextureCache这个类。其实,在cocos2d-x自带的TestCpp里有对应的例子,在里面用的是:
addImageAsync(const char *path, CCObject *target, SEL_CallFuncO selector);
CCTextureCache::sharedTextureCache()->addImageAsync("Images/grossini_dance_01.png", this, callfuncO_selector(TextureCacheTest::loadingCallBack));
这个方法通过图片的路径path,加载入target如:某个scene,当这个图片加载完成后,会调用一个回调函数selector,而这个回调函数便可以用于更新图片数据加载的总进度。关于纹理的介绍推荐一篇文章:http://www.oschina.net/question/565065_79823
进度条在网上的教程已经介绍得很清楚了,只是最近更新的版本重写了代码,只保留了两种进度条显示的基础类型,但是在引用这两种基础类型时,通过设置进度条的参数,还是可以变换出更多的显示效果的,这些效果在TestCPP中的ActionsProgress