Cocos creator教程 屏幕適配的3個小妙招

引言

cocos creator是什麼?

Cocos Creator 是觸控科技旗下的產品,以內容創作爲核心的遊戲開發工具,在 Cocos2d-x 基礎上實現了徹底腳本化、組件化和數據驅動等特點。

這裏給大家推薦一個cocos creator學習交流羣

屏幕適配是cocos creator面試題中必問的一個題目,今天給大家說說怎麼樣做屏幕適配。

1:  屏幕適配的2個核心的配置

    a: 設計分辨率: 美術設計資源時候的分辨率, 也是我們所有資源的參考分辨率,我們就是基於這個分辨率來適配到其它不同的手機分辨率上的;

    b:  適配策略:  固定高度/固定寬度;

設計分辨率大家都好理解,那麼什麼是適配策略呢?

   假設我們以設計分辨率是 960x640爲例,我們要適配到 1920x1080上面,  大家會發現,這個怎麼適配啊? 960x640----> 1920x1080,高度不一樣,寬度不一樣,有兩個不同的緯度需要適配,這樣的話處理起來有一些難度。遊戲引擎就想了一個辦法,我先在一個緯度保持一致,然後在另外一個緯度來進行適配; 那到底是選哪個緯度呢?如果是高度一致,那麼就是固定高度,如果是寬度一致,那麼就是固定寬度。這個就是固定高度與固定寬度的由來。

    固定高度: 960x640, 先做好邏輯分辨率((1920 * 640 / 1080)x 640)適配,  然後,我們在乘以一個比例scale(1080/640), 到1920x1080上;

   固定寬度: 960x640, 先做好邏輯分辨率適配 (960 x (1080 * 960 / 1920)),  然後我們在剩一個比例scale(1920/960), 到 1920x1080上;

 

遊戲引擎處理的大小,座標,都是邏輯大小,遊戲窗口的邏輯大小就是我們固定高度or固定寬度策略算出來以後的分辨率;

所以我們在代碼裏面的大小位置,都是基於邏輯分辨率的,在最終繪製的時候,大小,位置,都會乘以到目標像素分辨率鎖固定的比例scale;

比如 100 * 100, 固定高度, 到 1920x1080後像素大小是  (100x100) * 1080/640, 這樣我們最終就適配到 1920x1080上了;

 

 

妙招1: 停靠點

一個緯度和設計是一致的,我們只要考慮另外一個緯度的適配,在另外一個緯度的範圍內,把設計裏面的主要內容都擺佈進來。這個時候就會出現相對的幾個點,比如我的類型是基於中心的,基於上面的,基於下面的…  所有在適配的時候,我們一般會做幾個標誌的參考點,如圖紅色點點

 

 

 

核心原理就是,不管你的屏幕大小怎麼變,我只要動態的根據屏幕大小來調整參考點的位置,這樣,相對於參考點的元素也會跟着移動,一般適配我們都是這樣來做的,那這個適配我們很多都會有組件來完成,例如Widget等。你上邊的logo,無論屏幕怎麼變,都是上面的,下邊的,無論屏幕怎麼變都是下面的。

 

 

妙招2: 內容縮放

即使這樣,因爲一個緯度畢竟不同,有可能在這個緯度上,內容放不下,粘到一起了,我們還是的要對內容的大小來做一些調整,  可以根據邏輯分辨率,來做一些內容上的縮放,能讓這些內容排下;

 

秒招3: 大小調整

有一些UI控件,是區域性的,比如滾動條等,我們希望適配後,區域大小也要隨屏幕的變化而變化,那麼這個時候,可以設置區域相對於邊界的偏移, 如圖:

 

 

這樣邊界變了,大小也跟着變了。

 

其實搞懂了適配的核心原理,一點都不難,下次cocos creator面試題你會回答了麼?

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章