您的位置:首页 > 其它

使用CCTMXTiledMap出错的问题!

2014-01-07 23:12 507 查看
之前碰到一个文件采用第一种加载方式时,如果地图文件以及相对应的图块文件放在资源文件中的另一个文件下,比如map文件夹下时,会发生错误,找不到图块文件,因为源码依然实在资源文件下找。
这种情况下,比如对资源进行分类,把地图文件单独放到一个文件夹下,就要用到第二种加载方式了

[cpp]
view plaincopyprint?

//创建一个CCTMXTiledMap(第一种加载方式)
CCTMXTiledMap *bgMap = CCTMXTiledMap::create("tiledMap\\background.tmx");

//创建一个CCTMXTiledMap(第一种加载方式)
    CCTMXTiledMap *bgMap = CCTMXTiledMap::create("tiledMap\\background.tmx");


[cpp]
view plaincopyprint?

//创建一个CCTMXTiledMap(第二种加载方式)

std::string resources = "TileMap";
std::string file = resources + "/orthogonal-test1.tmx";
CCString* str = CCString::createWithContentsOfFile(CCFileUtils::sharedFileUtils()->fullPathForFilename(file.c_str()).c_str());
//create参数说明:资源文件全路径,资源路径目录

CCTMXTiledMap *map = CCTMXTiledMap::createWithXML(str->getCString() ,resources.c_str());

//创建一个CCTMXTiledMap(第二种加载方式)  
	std::string resources = "TileMap";
	std::string file = resources + "/orthogonal-test1.tmx";
	CCString* str = CCString::createWithContentsOfFile(CCFileUtils::sharedFileUtils()->fullPathForFilename(file.c_str()).c_str());
	//create参数说明:资源文件全路径,资源路径目录
	CCTMXTiledMap *map = CCTMXTiledMap::createWithXML(str->getCString() ,resources.c_str());


另外tiledMap不支持bmp的图块图片,每一个layer不能为空,必须有一个图块填充,不然也会报内存错误!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: