2017-04-19 62 views
1

好,所以標題有點難以理解,所以讓我解釋一下。Unity(C#) - 畫布縮放器調整大小畫布但網格佈局元素不在

我有一個庫存畫布,裏面有一個庫存面板。裏面有一個插槽面板,它有一個網格佈局組連接,所以插槽間隔很好。當遊戲開始時,插槽面板會插入插槽。如果用戶拿起物品,則該物品將被填充。插槽和項目是預製。

我想讓庫存與屏幕尺寸一起縮放,所以我更改了畫布縮放器並將其設置爲與屏幕尺寸成比例,將參考分辨率設置爲1280x720(因爲它非常適合我已有的尺寸)並設置匹配寬度或高度。

下面是結果的一些圖片:

在基準分辨率(1280×720):

At 1280x720

這看起來不錯,是完全應該的。

在比基準更小的尺寸(800×600):

At 800x600

在比基準更大的尺寸(1600×900):

At 1600x900

如何允許網格佈局組保持一致的間距,但相應調整插槽的大小,以便更改分辨率將使屏幕空間保持一定的百分比。

謝謝!

+0

有人嗎?我真的堅持這 –

+1

你可以添加一個'長寬比Fitter'到所需的'GameObject',這樣它將保持一定的比例,相對於畫布,doc的[這裏](https://docs.unity3d.com /Manual/script-AspectRatioFitter.html)。 – Hristo

回答

1

由於@Hristo在評論區說,

添加Aspect Ratio Fitter組件canvas對象的第一級子。它會解決問題。