分類: c++ android cocos2d-x 2012-04-05 10:44 178人閱讀 評論(0) 收藏 舉報
我正在做的遊戲是一個地圖塊的遊戲 處理解析度起來沒有那麼複雜
我的做法是將遊戲設定為高一定 寬按手機螢幕尺寸設定的方式
由於cocos2d-x會自動適應全屏 下面是My Code
\jni\helloworld
main.ccp
view->setFrameWidthAndHeight(w, h);
下面加一句
if (h != 480) view->create((int)((float)480/h*w), 480);
以480P設計 無黑邊
CCSize winSizeInPixels = CCDirector::sharedDirector()->getWinSizeInPixels();
float scaleX = winSizeInPixels.width / 640;
66(24247008) 16:13:14
就是這樣做的呀 不是可以的問題 你那樣的精度太差 如果是縮放圖片呢?
66(24247008) 16:14:13
CCSprite *p = CCSprite::spriteWithFile("word@2x.png",CCRectMake(0,0,88/CC_CONTENT_SCALE_FACTOR(),46/CC_CONTENT_SCALE_FACTOR()));
66(24247008) 16:14:19
這樣做截取
66(24247008) 16:14:37
等等 自己研究吧 反正很噁心 /CC_CONTENT_SCALE_FACTOR() 特別是這個
小亂(57013367) 16:15:06
這個做法更好控制點·
66(24247008) 16:15:16
都好控制喲 先滿足大的解析度 然後縮放就好了
小亂(57013367) 16:15:44
就是安卓是先做大版
66(24247008) 16:15:38
只做一個解析度 然後縮放
小亂(57013367) 16:15:54
不好控制··你要上國內的平台·就是個死
小亂(57013367) 16:16:03
不過也不一定好
小亂(57013367) 16:16:22
反正國內的山寨機··效能差距挺大的~~這樣搞是不太靠譜的
66(24247008) 16:16:08
額 那這個我也不清楚了 以後做到那時候再想想 你可以先試試
殘 瘋<zeng-yanyang@163.com> 16:16:22
我自己摸索的 我和66的方法一樣
小亂(57013367) 16:16:40
我沒搞這個·
66(24247008) 16:16:45
很多地方 試了很多次 才這樣處理來著
66(24247008) 16:17:11
反正實現了縮放 大分辨弄到小分辨 完全可以 至少我做的是可以的
尚宇翔(1161043803) 16:17:40
在於技巧
小亂(57013367) 16:18:25
我是覺的就,
一個是圖形的適配,就是縮放尺寸
一個是座標適配,就是螢幕相對座標+縮放尺寸~~
這套適合在中端效能以上的只是解析度不同的機器上
低端機器嗎就不太適合了。
殘 瘋<zeng-yanyang@163.com> 16:18:32
裡面的子層 座標都相對父層
66(24247008) 16:20:54
你先去試試呀 覺得沒用 試試就知道行不
66(24247008) 16:21:21
況且 都是初始化的時候縮放 載入的時候使用的
66(24247008) 16:21:32
只要過了載入 繪製什麼的 沒那麼誇張吧
讓Cocos2d-x實現全屏等比縮放適配Android各種解析度
http://www.cnblogs.com/yangws/archive/2011/07/22/2114132.html
http://blog.csdn.net/dragoncheng/article/details/6927687
1,擷取
2.我的圖片要做多種嗎?有沒有一套圖適應多解析度的呢?
X.O(303802839) 9:43:31
沒有吧,要做三套
緩慢/kuk氧化(106611484) 9:43:33
要做多套解析度的圖片
X.O(303802839) 9:44:04
其實做一套最大的,然後縮小兩 套就行了
塞風朔雪(66989990) 9:44:34
Android好像解析度有好多種啊
塞風朔雪(66989990) 9:44:40
大大小小的好多
X.O(303802839) 9:45:19
嗯,不過,ANDROID的原設計是要三套,分別放在三個檔案夾裡面