天天看點

[unity3d]NGUI螢幕自适應

NGUI确實是非常棒的一個做界面的插件,比起U3D自帶的GUI要好很多,當然也有一些不好之處,畢竟什麼都不可能那麼完美。

最近在用Unity寫遊戲使用NGUI遇到了一個很多人都在遇到的問題,就是關于螢幕自适應,谷哥度娘裡面寫關于适應螢幕的文章很多,但是大多都是一樣抄來抄去,都是說是Panel裡面加個UIStretch裡面加個 if 分支,什麼OnWidth什麼的,還要把UIAnchor的side放置在Bottom等等步驟,過于麻煩,而且效果也一般。

不知道大家在用最新的Unity的時候在UIStretch裡面style參數有沒有發現新添加了兩個枚舉

[unity3d]NGUI螢幕自适應

按照它的字面意思就是一個是“按保持的比例填充”和“适合保持内部比例”

其實可以想一想,安卓手機在螢幕分辨率上面有很多種,其長寬比例是不一樣的,在制作遊戲的時候如果保持位置的不變,難免要造成圖檔的不均等拉伸,是以用原有的比例會使畫面看起來更和諧,多出來的部分也并不多,如果可以這樣想,那麼就可以進行後面的了。

1.首先在你的panel裡面不要填充任何控件,如果有,可以先拖出來,

2.選中panel添加UIStretch腳本

3.将style選擇最後一個FitInternalKeepingRatio

4.在Initial Size中填寫你目前使用的螢幕大小。(比如你的遊戲視窗是800*480的,就X 800,Y 480)

5.如果原先有控件了,再拖進來就可以了,如果沒有,就可以在裡面添加控件了。

在你選擇修改遊戲螢幕大小後,一定要運作一下才可以看到它調整過後的效果,可以看到比例是完全适應的,差别僅僅是多出來部分擴大了一些遊戲場景而已。

操作起來很容易,也不需要多餘的代碼。

轉載自:http://blog.csdn.net/w337198302/article/details/13092665

       本文轉蓬萊仙羽 51CTO部落格,原文連結:http://blog.51cto.com/dingxiaowei/1366115,如需轉載請自行聯系原作者

繼續閱讀