發(fā)布時(shí)間:2024-04-02 20:08:09 瀏覽量:163次
編者按 在游戲制作時(shí),UI界面設(shè)計(jì)是非常重要的工作,不僅僅是考慮排版布局、美術(shù)風(fēng)格,還要考慮到玩家的交互行為。另外,采取哪種實(shí)現(xiàn)方案也是需要慎重考慮的,一個(gè)好方案讓我們在保質(zhì)保量的前提下,能快速高效地完成。筆者將為大家介紹業(yè)界常用的UI解決方案,并對它們做簡單地分析對比。同時(shí),也歡迎大家留言,分享你在UI設(shè)計(jì)時(shí)所積累的經(jīng)驗(yàn),或是遇到的困難,咱們共同成長進(jìn)步。
作者:W
筆者自14年畢業(yè)參加工作以來,一直使用Unity引擎來開發(fā)各種項(xiàng)目,如兒童啟蒙教育類繪本、大型3D網(wǎng)絡(luò)海戰(zhàn)、三消、視頻VR以及NBA體育競技等,大部分工作內(nèi)容是與UI界面相關(guān)。使用過的UI系統(tǒng)插件包括Unity原始的GUI、第3方插件NGUI、Unity進(jìn)階版的UGUI以及第3方的UI編輯器FairyGUI。另外,經(jīng)網(wǎng)上了解還有EZ GUI、IGUI等第3方插件,以及Unity近推出的高階版UIToolkit。這些偏冷門的或者新出爐的,筆者暫沒在公司項(xiàng)目中使用過。你知道的,公司項(xiàng)目對穩(wěn)定性有較高的要求,不會(huì)一味地追求新技術(shù)。讀者不用驚訝,有公司還在使用Unity 4.x或者5.x舊版本的呢,哈哈!
經(jīng)過前面介紹,這么多種實(shí)現(xiàn)方案,我們在實(shí)際項(xiàng)目中應(yīng)該如何做選擇呢?有木有最佳方案?通吃的那種?答案是否定的。每種方案都有其適用性,需要結(jié)合項(xiàng)目本身以及開發(fā)者自身情況綜合來考量。那在選擇方案時(shí),有木有一些具體的參考點(diǎn)呢?這個(gè)是有的,筆者歸結(jié)為以下2點(diǎn):
1)可視化程度:Unity原始的UI系統(tǒng),需要在運(yùn)行時(shí)才能顯示,這給我們搭建UI界面時(shí)帶來很多不便。正因?yàn)榇?,許多像NGUI一樣的高度可視化的插件陸續(xù)誕生。搭建UI界面時(shí),只需將對應(yīng)組件拖入場景即可顯示和調(diào)整,達(dá)到所見即所得的目的。另外,像是否支持圖文混排、虛擬列表等組件以及對策劃美術(shù)是否友好等問題,也都可以歸結(jié)為插件的可視化程度高不高的體現(xiàn)。
2)性能:DrawCall,每次CPU準(zhǔn)備數(shù)據(jù)并通知GPU的過程。這個(gè)操作是比較好性能的,原則上我們是希望它越少越好的。影響它的因素:一方面表現(xiàn)為UI資源的管理方式,這主要與程序猿技術(shù)能力有關(guān),知道啥時(shí)候加載,又啥時(shí)候卸載,什么類型資源共享,什么類型資源進(jìn)行九宮格。另一方面表現(xiàn)為與UI系統(tǒng)本身的渲染原理相關(guān),這是UI方案的“硬傷”,關(guān)于UI方案的硬傷,對于熟知該UI渲染原理的程序猿來說,他知道該怎么去做,一定程度“規(guī)避”產(chǎn)生太多DrawCall。嘻嘻,這很考驗(yàn)咱程序猿功底咯!如果UI方案本身這方面就做的很好,那豈不是更好,哈哈。
限于篇幅,我不能對這些UI方案深入展開,希望簡短的介紹能講清楚它們各自特點(diǎn)。至于具體怎么使用,我會(huì)附上官網(wǎng)或?qū)W習(xí)地址,那里通常配有技術(shù)文檔、教程幫助上手。
2.1 Unity原始GUI
因性能和可視化方面都不足,自打好用的如NGUI等第3方插件問世后,Unity的原始GUI系統(tǒng),基本不會(huì)用于游戲運(yùn)行模式時(shí)的UI設(shè)計(jì)中;一般只是在編輯器工具擴(kuò)展時(shí)使用。但現(xiàn)如今Unity又推出新的UIElement框架,可用于編輯器工具的擴(kuò)展,原生GUI系統(tǒng)會(huì)越來越失寵,究其最終原因就是性能差且不好用。目前來看,原始GUI在編輯器工具擴(kuò)展領(lǐng)域的地位應(yīng)該不太可能迅速被UIElement取代,因?yàn)閿U(kuò)展工具時(shí),原始GUI還是可以勝任的,且很多開發(fā)者應(yīng)該已經(jīng)習(xí)慣用它來編寫工具和擴(kuò)展。其實(shí),程序猿也是有情懷的,哈哈!
2.2 NGUI
資源地址:https://assetstore.unity.com/packages/tools/gui/ngui-next-gen-ui-2413#description
其特點(diǎn)如下:
1) 圖集:需要自己規(guī)劃好后,手動(dòng)打開圖集。
2) 渲染原理:先根據(jù)Panel的Depth排序,Panel面板內(nèi)部再根據(jù)Depth排序。將相同材質(zhì)的Widget進(jìn)行Mesh合并。
3) 支持圖文混排。
4) 支持循環(huán)列表組件。
2.3 Unity進(jìn)階版UGUI
學(xué)習(xí)地址:
http://c.biancheng.net/view/2712.html
UGUI是在NGUI之后Unity官方推出的,一定程度上借鑒了NGUI的設(shè)計(jì)理念,在某些方面做了改進(jìn)優(yōu)化,如自適應(yīng)、圖集等。其特點(diǎn)如下:
1)圖集:圖集概念不重,會(huì)自動(dòng)打包成圖集。要注意的是,放在Resources文件夾下的貼圖不會(huì)被打入圖集;
2)渲染原理:根據(jù)Hierarchy的順序來排序,越下面渲染在越頂層。Canvas與NGUI的UIPanel類似,每個(gè)Canvas將優(yōu)化合并為1個(gè)Mesh或多個(gè)SubMesh;
3)不支持圖文混排,需要自己實(shí)現(xiàn);
4)不支持循環(huán)列表組件,需要自己實(shí)現(xiàn);
5)有錨點(diǎn),方便屏幕自適應(yīng)。
2.4 FairyGUI
官網(wǎng)地址:
https://www.fairygui.com/download
它是獨(dú)立的UI編輯器,且對美術(shù)、策劃都友好。其特點(diǎn)如下:
1)目前主流的游戲開發(fā)引擎都支持;
2)渲染原理:沒有采取Mesh合并的策略,而是基于類似于Unity的Dynamic Batching技術(shù),對DrawCall進(jìn)行優(yōu)化。它在不改變顯示效果的前提下,盡可能的把相同材質(zhì)的物體調(diào)整到連續(xù)的RenderingOrder值上,以促使它們能夠被Unity DynamicBatching優(yōu)化;
3)支持圖文混排;
4)支持虛擬列表,即使數(shù)量巨大的列表也不會(huì)感覺太卡頓。
2.5 其他方案
因?yàn)楣P者未在實(shí)際項(xiàng)目中使用過,所以這里不做評述了,讀者可以根據(jù)貼出的鏈接跳轉(zhuǎn)過去瞅一瞅哈!
1)Unity高階版UIToolkit
學(xué)習(xí)地址:
https://docs.unity3d.com/cn/2020.1/Manual/UIElements.html
是Unity新推出的新一代UI系統(tǒng),既支持游戲編輯模式也支持運(yùn)行時(shí)模式。但目前還不夠完善。讀者可以嘗嘗鮮,試用一下。
2)EZGUI
資源地址:
https://assetstore.unity.com/packages/tools/ez-gui-32
【注:官方資源下架 已購買可以繼續(xù)使用】
3)IGUI
資源地址:
https://assetstore.unity.com/packages/tools/gui/igui-basic-1946
【注:官方資源下架 已購買可以繼續(xù)使用】
本篇主要介紹了Unity項(xiàng)目比較流行的UI解決方案,筆者在這里只是做一個(gè)匯總概述,并沒有去深究。至于讀者該如何選擇,仁者見仁,智者見智。一句話總結(jié):沒有最好的,只有最適合的!
參考資料
1、Unity官網(wǎng):https://unity.cn/
2、Siki學(xué)院:http://www.sikiedu.com/course/explore/unity?subCategory=&selectedthirdLevelCategory=&filter%5Btype%5D=all&filter%5Bprice%5D=all&filter%5BcurrentLevelId%5D=all&orderBy=hotSeq&from_flag=baidu_unity
熱門資訊
1. iPhone6的UI設(shè)計(jì)尺寸規(guī)范,原來如此重要!
想要了解iPhone6界面設(shè)計(jì)的尺寸規(guī)范嗎?這里為您詳細(xì)介紹iPhone6的UI設(shè)計(jì)尺寸規(guī)范,包括界面尺寸、圖標(biāo)尺寸、可點(diǎn)擊高度規(guī)范、搜索欄高度規(guī)范以及界面元素之間的距離規(guī)范。
2. 12個(gè)絕佳的UI設(shè)計(jì)網(wǎng)站,助力你的創(chuàng)作之旅!
將為大家介紹12個(gè)絕佳的UI設(shè)計(jì)網(wǎng)站,這些網(wǎng)站不僅可以為你提供靈感,還可以幫助你學(xué)習(xí)新的技巧,助力你的創(chuàng)意之旅!dribbbleDribbble 是一個(gè)面向設(shè)計(jì)師的...
3. 移動(dòng)端UI設(shè)計(jì)中常見的5種APP界面類型,你get到了嗎?
通過介紹移動(dòng)端UI設(shè)計(jì)中的閃屏頁、引導(dǎo)頁、浮層引導(dǎo)頁、空白頁和首頁等5種APP界面類型,幫助大家更好地了解UI設(shè)計(jì)的基本知識(shí)
4. 10個(gè)免費(fèi)學(xué)習(xí)UI設(shè)計(jì)的網(wǎng)站 提升你的設(shè)計(jì)能力
怎樣可以提升你的UI設(shè)計(jì)能力!第一個(gè):站酷站酷想必是設(shè)計(jì)師都知道的一個(gè)網(wǎng)站,里面不止有UI設(shè)計(jì)的資源,還有其他設(shè)計(jì)的,不如:平面設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)、字體...
5. 移動(dòng)端列表頁和表單頁設(shè)計(jì)秘訣:讓你的APP點(diǎn)擊率翻倍
在移動(dòng)端設(shè)計(jì)中,列表頁和表單頁是不可或缺的部分。一個(gè)好的列表頁和表單頁設(shè)計(jì)能夠讓用戶輕松地獲取信息并產(chǎn)生點(diǎn)擊欲望,從而提高點(diǎn)擊率。本文將為你...
6. 推薦10本適合UI設(shè)計(jì)師看的書籍,輕松掌握技能!
對于想要提高自己的設(shè)計(jì)能力和創(chuàng)造力的小白和UI設(shè)計(jì)師來說,這本書是一個(gè)很好的選擇。4.《設(shè)計(jì)的覺醒》(IKKO TANAKA)推薦理由: 這本書是日本現(xiàn)代平面...
7. 零基礎(chǔ)學(xué)UI設(shè)計(jì)要多久?培訓(xùn)完能拿多少工資?
探索零基礎(chǔ)UI設(shè)計(jì)培訓(xùn)的時(shí)長與薪資前景。了解數(shù)字藝術(shù)教育領(lǐng)域的專業(yè)課程,以及培訓(xùn)后的職業(yè)發(fā)展機(jī)會(huì)。
8. 物聯(lián)網(wǎng)APP UI設(shè)計(jì):創(chuàng)造智能硬件領(lǐng)域的沉浸式體驗(yàn)
ui設(shè)計(jì)應(yīng)該讓用戶一目了然,能夠快速找到所需的信息和功能。在設(shè)計(jì)過程中,應(yīng)盡量使用簡潔的圖標(biāo)、文字和色彩,避免過多的視覺干擾。符合用戶習(xí)慣:ui設(shè)...
9. 武漢UI設(shè)計(jì)培訓(xùn)班費(fèi)用怎么樣?想學(xué)UI設(shè)計(jì)要多少錢?
想了解武漢UI設(shè)計(jì)培訓(xùn)班的費(fèi)用是多少嗎?不知道學(xué)UI設(shè)計(jì)要花多少錢?不妨看看這篇文章,了解UI設(shè)計(jì)培訓(xùn)班的學(xué)費(fèi)價(jià)格以及學(xué)習(xí)內(nèi)容。
10. 設(shè)計(jì)中的色彩心理學(xué):淺析中西方色彩的歷史演變與設(shè)計(jì)應(yīng)用
摘要:本文探討了色彩的歷史演變和設(shè)計(jì)應(yīng)用。通過對色彩在早期文明社會(huì)中的實(shí)用運(yùn)用、不同文化背景下色彩觀念的差異、色彩在設(shè)計(jì)中的重要性以及新興技...
最新文章
同學(xué)您好!