Unity3d 手機屏幕自動適配

我提到手機自動適配的一個方法中:postion和Scale,「比例」概念適配手機。原始資源是480*800

通過實際項目考驗,我的感受:c#

1,UICamera是自動適配分辨率,UI上也是拉伸、放大UI元素。有些分辨率如:720*1280,拉伸的比較大。適配效果不是很「完美」。post

2,在遊戲運行當中,有時得 Instantiate 一個新的GameObject,就又得考慮適配問題,有時還必須得放入 UIPanel下。對開放效率而言,不是一個好的選擇;優化

綜合上述所示,不考慮完美適配手機的前提條件下:ui

可優化爲:spa

1, UIRoot.Automatic 爲false,既UICamera不自動適配分辨率。在Instantiate等狀況不考慮適配問題。遊戲

2,在進行拉伸、放大來適配不一樣分辨率的手機。思路:原始資源是 480*800,UICamera的長寬比是 480f/800f,那麼我可讓UICamera長寬比在不一樣的分辨率的手機中都爲資源

    480f/800f。就能夠適配了it

寫個c#腳本,最好在Awake中,對UICamera,進行長寬比;io

public  Camera  nguiCamera;class

void Awake(){

if(nguiCamera!=null){

//Debug.Log("dddffff  "+nguiCamera.aspect);

nguiCamera.aspect=480f/800f;

//Debug.Log("dddffff dddfffff "+nguiCamera.aspect+"   "+Screen.width+"   "+Screen.height);

}

}

效果圖以下:

320*480

相關文章
相關標籤/搜索