cocos2d x 適應不同解析度

2021-06-18 21:25:59 字數 1181 閱讀 5018

相同平台不同解析度

ccfileutils::setsearchresolutionsorder()支援檔案分布策略,你可以像如下一樣查詢設定路徑

std::vectorresdirorders;

resdirorders.push_back("ipadhd");

resdirorders.push_back("ipad"); 

ccfileutils::sharedfileutils()->setsearchresolutionsorder(resdirorders);

設定完查詢路徑之後,建立乙個sprite如下

ccsprite *sprite = ccsprite::create("images/tex.png");

引擎會按照以下順序查詢tex.png

1.從images/ipadhd查詢

2.如果沒有發現,再從images/ipad中查詢。

3.如果還是沒有發現,會從images中查詢。

不同平台,不同解析度

std::vectorresdirorders;

if (platform == ktargetiphone)//iphone

else if (platform == ktargetipad)//ipad

ccfileutils::sharedfileutils()->setsearchresolutionsorder(resdirorders);

自適應解析度

coos2d-x 提供了自適應解析度的方式setdesignresolutionsize

cceglview* eglview = cceglview::sharedopenglview();

peglview->setdesignresolutionsize(480, 320, kresolutionnoborder);//將螢幕固定為480*320 超過這個或者小於這個解析度,cocos2d-x會做自適應處理。

第三個引數是自適應解析度的規則,有3種

kresolutionexactfit 在指定的應用的現實區域會嘗試去保持原始比例,但是有可能會發生變形,這時候你的應用將會被拉伸或者壓縮

kresolutionnoborder 在指定的應用檔案區域內不會出現變形,但是可以能有一些裁剪

kresolutionshowall 在指定的應用檔案區域內不會出現變形,將保持原樣。但是兩邊會出現黑邊。

Cocos2d x 多解析度支援

最近遇到多解析度支援問題,所以查了一些資料。將一些收穫共享一下,以便自己和其他需要的朋友日後參考。如果我要建立乙個cocos2d x專案,我的目標是支援iphone3g 480,320 iphone4 4s 960,640 iphone5 1136,640 ipad1 2 1024,768 ipad...

cocos2dx不同解析度下的自動適屏

if glview glview setdesignresolutionsize 640,1136,resolutionpolicy no border 主要在setdesignresolutionsize方法的最後乙個引數,即適屏策略 no border 自動根據設計尺寸保證無邊,可能的情況有下面...

Cocos2d x 多解析度適配完全解析

2 五種適配模式 從上面的講解我們可以了解到,setframesize 是設定了視窗大小 即螢幕的實際大小 而這個引數只是為了我們開發時作為模擬參照,在實際手機上執行時,手機的螢幕大小是我們無法設定的。而螢幕適配的關鍵在於setdesignresolutionsize 通過它來設定可視區域的解析度以...