温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

cocos2d-x 2.0启用HD高清图片支持

发布时间:2020-07-29 23:12:19 来源:网络 阅读:625 作者:idanal 栏目:游戏开发

cocos2dx 2.0后不再支持-hd这种方式来启用高清图片,而是变为需要在CCFileUtils中指定图片的目录来启用,本例中文件结构如图所示,Misc目录位于Resources下,注意文件夹是蓝色的(按文件夹引用非按组引用),然后按下面的代码配置路径。如要支持iPad,配置方法基本相同

方法一:(这种方法需要准备多套图片,如果要同时支持ios和android,这种方法不太可行)

   CCFileUtils *sharedFileUtils = CCFileUtils::sharedFileUtils();


   sharedFileUtils->purgeCachedEntries();

   std::vector<std::string> searchPaths = sharedFileUtils->getSearchPaths();;

   searchPaths.insert(searchPaths.begin(), "Misc");

   sharedFileUtils->setSearchPaths(searchPaths);


   std::vector<std::string> resolutionsOrder = sharedFileUtils->getSearchResolutionsOrder();

   resolutionsOrder.insert(resolutionsOrder.begin(), "res-hd");

   resolutionsOrder.insert(resolutionsOrder.begin()+1,"res");

   sharedFileUtils->setSearchResolutionsOrder(resolutionsOrder);


   CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("fruit_sheet.plist");

   CCSprite *fruit = CCSprite::createWithSpriteFrameName("fruit0");

   fruit->setPosition(ccp(200,200));

   addChild(fruit);


方法二:(这种方法只需要一套图片,一般只要准备最高分辨的那套图,通过设置DesignResolutionSize让cocos2d自动缩放适应,推荐使用

// Set the design resolution

CCEGLView::sharedOpenGLView()->setDesignResolutionSize(designResolutionSize.width, designResolutionSize.height, kResolutionExactFit)

例如要用一套图支持480x320和960x640两种分辨率,那么designResolutionSize定义如下

static cocos2d::CCSize designResolutionSize = cocos2d::CCSizeMake(960, 640);


关于DesignResolutionSize可以参考这篇博文http://www.kaifazhe.com/mobile/311125.html





附件:http://down.51cto.com/data/2363247
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI