UGUI-創(chuàng)建 World Space UI
使用 UI 系統(tǒng)可以在世界中輕松創(chuàng)建位于場景內(nèi)其他 2D 或 3D 對象之間的 UI。
如果場景中還沒有 UI 元素(如圖像),首先使用 GameObject > UI > Image 創(chuàng)建一個(gè) UI 元素。此過程還將創(chuàng)建畫布。
將畫布設(shè)置為 World Space
選擇畫布并將 Render Mode 更改為 World Space。
現(xiàn)在,畫布已經(jīng)定位在世界中,并可讓所有攝像機(jī)看到(如果攝像機(jī)面向該畫布),但與場景中的其他對象相比,畫布可能過于巨大。我們稍后將討論這一點(diǎn)。
決定分辨率
首先,需要決定畫布的分辨率應(yīng)該是多少。如果是圖像,圖像的像素分辨率應(yīng)該是多少?最開始設(shè)置為 800x600 這樣的分辨率可能是比較好的選擇。應(yīng)在畫布的矩形變換的 Width 和 Height 值中輸入分辨率的相應(yīng)值。同時(shí),將位置設(shè)置為 0,0 可能是個(gè)不錯的選擇。
指定畫布在世界中的大小
現(xiàn)在應(yīng)考慮畫布在世界中應(yīng)該有多大??墒褂每s放工具將畫布縮小,直至其大小看起來合適,也可采用米為單位決定其應(yīng)有的大小。
如果希望畫布具有以米為單位的特定寬度,則可使用 meter_size / canvas_width 計(jì)算所需的比例。例如,如果希望畫布寬為 2 米,而實(shí)際畫布寬度為 800,則會得到 2 / 800 = 0.0025 的比例。然后,將畫布上的矩形變換的 Scale 屬性對于 X、Y 和 Z 均設(shè)置為 0.0025,從而確保畫布均勻縮放。
另一種思路是控制畫布中一個(gè)像素的大小。如果畫布縮放到 0.0025 倍,那么這也是畫布中每個(gè)像素在世界中的大小。
定位畫布
與設(shè)置為 Screen Space 的畫布不同,World Space 畫布可以在場景中自由定位和旋轉(zhuǎn)。畫布可以放置在任何墻壁、地板、天花板或傾斜表面上(當(dāng)然也可以在空中自由懸掛)。只需使用工具欄中的常規(guī)移動和旋轉(zhuǎn)工具即可。
創(chuàng)建 UI
現(xiàn)在,可以像使用 Screen Space 畫布一樣開始設(shè)置 UI 元素和布局。