UGUI之CanvasScaler的正確用法

轉載:http://icemark.cn/blog/?p=279


很多人都知道,Unity在移動設備上的自適應依靠的是組件本身的Anchors和Canvas上的CanvasScaler

但是很多人卻不知道應該怎麼正確的去設置CanvasScaler的各項屬性,這裏我簡單的說一下,希望大家謹記!

默認的設置:

CanvasScaler的正確用法 - 風凍冰痕 - 1

然後在移動設備上應該選擇Scale With Screen Size:

CanvasScaler的正確用法 - 風凍冰痕 - 2

重點說一下Reference Resolution和Match的設置:

Reference Resolution的尺寸由你拼UI時的尺寸決定,跟實際移動設備上的尺寸沒有關係,引用我在羣上一個很經典的栗子:

你在瘦身前首先得告訴醫生你是胳膊粗還是腿粗 然後醫生才能決定幫你瘦胳膊還是瘦腿。。。

然後Screen Match Mode設置爲Match Width Or Height,

所以說,這裏的尺寸只是爲了告訴Unity你原始的UI尺寸,也就是你拼UI時的尺寸,然後Unity根據實際在移動設備上的尺寸來決定是幫你拉大還是縮小

而Math的設置呢,你只要記住橫版遊戲以高度縮放,豎版遊戲按寬度縮放,所以得出以下結論:

假如我拼UI時的尺寸爲960*640的橫版遊戲,那麼我的設置就是:

CanvasScaler的正確用法 - 風凍冰痕 - 3

有童鞋提到過Screen Match Mode可以使用Expand,但是經過測試發現,貌似在某些移動設備上會出現InputField響應區域偏離的Bug,

原因不明,所以建議使用Match Width Or Height。


發佈了30 篇原創文章 · 獲贊 12 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章