【Cocos2d-X(2.x) 游戏开发系列之三】最新版本cocos2d-2.0-x-2.0.2使用资源加载策略
来源:互联网 发布:威斯布鲁克数据 编辑:程序博客网 时间:2024/05/22 05:23
转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/cocos2dx-v2-0/997.html
前段时间cocos2dx更新了最新版本cocos2d2.0x2.0.2,也从这个版本开始对于资源加载与管理都改变了策略。
在之前的加载方式都是通过沿用与cocos2d-iphone一样的加载资源方式,对于图片名后添加-hd,-ipad,-ipadhd方式,当用户开启项目的高清视网膜后就可以默认寻找对应的资源。但是从cocos2d2.0x2.0.2版本开始,资源加载策略不在如此了。
最新资源加载策略的机制如下:
首先从CCFileUtils的setResourceDirectory设置的目录中去寻找,如果找不到则会Resources/目录下找。
例如:
1) 设置目录:
CCFileUtils::sharedFileUtils()->setResourceDirectory("abc");
当创建一个精灵时:
CCSprite * spr = CCSprite::create("himi.png");
Cocos2dx首先会到Resources/abc目录下寻找“himi.png”,如果找不到将回到Resources目录下寻找“himi.png”。
因此我们一般在AppDelegate.cpp的applicationDidFinishLaunching函数中打开高清视网膜后,添加如下代码:(项目源码 3_14_HDTest)
TargetPlatform target = getTargetPlatform();
//获取当前设备类型
if
(target == kTargetIpad){
//如果是Ipad
if
(pDirector->enableRetinaDisplay(
true
)){
//如果开启高清视网膜
CCFileUtils::sharedFileUtils()->setResourceDirectory(
"../ipadhd"
);
}
else
{
CCFileUtils::sharedFileUtils()->setResourceDirectory(
"../ipad"
);
}
}
else
if
(target == kTargetIphone) {
//如果是iphone
if
(pDirector->enableRetinaDisplay(
true
))
{
CCFileUtils::sharedFileUtils()->setResourceDirectory(
"../hd"
);
}
}
项目默认目录为Resources,这里Himi创建的hd、ipadhd、ipad的文件夹与Resources同一级,所以这里设置目录为”../hd” ,”../ipad”,”../ipadhd”
附:
设备枚举变量如下:
kTargetWindows: window系统
kTargetLinux: linux系统
kTargetMacOS: mac os系统
kTargetAndroid: Android系统
kTargetIphone: iOS系统-iphone&itouch
kTargetIpad: iOS系统-Ipad
kTargetBlackBerry: 黑莓系统
Himi项目目录如下图3.14.3.1所示:
图3.14.3.1 项目目录
- 【Cocos2d-X(2.x) 游戏开发系列之三】最新版本cocos2d-2.0-x-2.0.2使用资源加载策略
- 【Cocos2d-X(2.x) 游戏开发系列之三】最新版本cocos2d2.0x2.0.2使用新资源加载策略!不再沿用-hd、-ipad、-ipadhd添加后缀方式
- 最新版本cocos2d2.0x2.0.2使用新资源加载策略!不再沿用-hd、-
- 【Cocos2d-X(2.x) 游戏开发系列之二】cocos2dx最新2.0.1版本跨平台整合NDK+Xcode,Xcode编写&编译代码,Android导入打包运行即可!
- cocos2d-x游戏开发之三
- Cocos2d-X游戏开发(三)
- Cocos2d-x游戏开发之随机数使用
- Cocos2d-x游戏开发之音效使用
- cocos2d-x游戏开发
- 【cocos2d-x 初级教程之三 2.x版本】如何移动一个cocos2d-x精灵
- cocos2d-x游戏开发系列教程-前言
- [ IOS-Cocos2d-x 游戏开发] - cocosBuilder 开发之三
- Cocos2D-X SimpleGame 如何移动一个cocos2d-x精灵 (2) ----版本cocos2d-2.0-x-2.0.3 .
- Cocos2d-X游戏开发之CCSprite的加载
- cocos2d-x 游戏开发系列之二:新建win32项目
- Cocos2d-X研究之豪华版飞机大战游戏开发系列
- Cocos2d-x游戏开发之二 2.0版本修改的api
- 游戏开发教程cocos2d-x移植之三(上)
- (二)uboot移植
- 有关于Nodejs http.get的错误处理
- 图像处理与计算机视觉 基础、经典以及最近发展
- SEO者的痛苦
- Cracking the coding interview--Q12.1
- 【Cocos2d-X(2.x) 游戏开发系列之三】最新版本cocos2d-2.0-x-2.0.2使用资源加载策略
- mysql 优化
- git (版本版本控制工具)
- MYSQL添加新用户 MYSQL为用户创建数据库 MYSQL为新用户分配权限
- php5.5和5.4动态安装mysql扩展错误(ext/mysqlnd/mysqlnd.h: No such file or directory)
- javascript深入了解文章
- (三)uboot移植--GSC3280芯片logo显示
- Lisp介绍之七个原始操作符
- [OOP]hw002 Student2