Unity3D手機平台分辨率自動匹配教程


1. 下載NGUI

2. 導入NGUI package到Unity。

custom-package

這時候菜單上會出現NGUI的菜單欄:

NGUIcaidan

3. 將默認的Main Camera刪掉,通過菜單欄NGUI->Create新建一個2D UI對象。

unity3d-2dui

此時創建了一個UI Root以及子對象Camera(這就是為什么要刪除默認的攝像頭),這個攝像頭自帶了NGUI的UICamera腳本,這個腳本的作用是來響應各種事件的。

unity3d-uiroot-camera

4. 設置UI Root屬性,點擊UI Root,此時在右側的Inspector面板可以看到其相關屬性,這里很關鍵!選擇Scaling Style為ConstrainedOnMobiles,這個是專門為手機分辨率設計的選項,此時下面有兩個屬性,勾選Content Width和Content Height,並設置你最期望的屏幕分辨率,一般會是你背景圖片的分辨率,這樣UI Root下的子元素就會根據手機的分辨率等比例縮放!注意下圖的官方說明。

unity-uiroot-scalingstyle

5. 你會發現這個新的Camera看不到你創建的物體,需要設置攝像頭為可視攝像頭。點擊Camera,在右側的Inspector面板會看到Camera的屬性,設置以下兩個屬性:

Culling Mask:選Everything(這個非常重要,這樣才能看到你的物體)。

Clear Flags: 選Skybox

unity-camera-cullingmask

6. 通過NGUI創建一個Texture對象當作背景圖片,這一步非常重要!之前博主在這邊卡了好長時間。只有在UI Root下並且是NGUI的對象才能應用到UI Root的Scaling Style功能!(當然,應該還有博主沒摸清的地方。)

unity-texture-gbSetting

7. 好了,檢查下Game視圖,看看是不是生效了呢:)下面放幾張有代表性的圖。

注意:以后添加的所有對象都應該在UI Root下,這樣才能跟着背景圖片等比例縮放!

分辨率:1280*800(16:10),上下填充黑邊。

unity-1280-800-16-10

分辨率:1920*1080(16:9),完美填充,無黑邊!

unity-1080p

分辨率:800*400(2:1),左右填充黑邊。

unity-400p

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM