Unity3D游戲UI開發經驗談


原地址:http://news.9ria.com/2013/0629/27679.html

在Unity專場上,108km創始人梁偉國發表了《Unity3D游戲UI開發經驗談》主題演講。他以公司團隊為案例,從流程方面介紹了從UI制作、設計到編程,並展示了UI布局和美術制作框圖。他強調做技術產品一定要考慮開發和研發的區別。

 

 108km創始人 梁偉國

以下是文字實錄:

 

各位廣州的朋友大家好!我是梁偉國,今天由我給大家講講Unity3D游戲UI開發。我之前是做Web的,是程序員出身,做過游戲設計師,現在是一家創業公司的創始人。從2006年到2009年,我在IBM公司工作。09年后自己做過一段時間的自由職業者,到最后才做Unity3D。從2006年后就跟朋友做了一個工作室,我最長的工作時候是在IBM,在IBM里技術方面不一定提高很多。但在同事聚會時,在里面學到最大的收獲是流程和標准化的管理,500強公司的流程很嚴謹。之后我自己出來開公司,發現自己的工作室流程很混亂,所以今天很多是從流程方面跟大家探討UI的經驗。

 

首先跟大家簡單介紹一下UI展示終端。最直觀的是屏幕不一樣,拿iPhone4、iPhone4s、iPhone5就代表了三個不同的屏幕,iPad1和iPad2也是兩種不同的屏幕。跨平台第一直觀就是多分辨率。

 

 

 

今天跟大家分享的是從UI制作、設計到編程。從設計角度開始,首先我們會考慮應該怎么做,怎樣使成本降低。

 

UI設計三大原則

 

第一個設計的原則是居中布局,在2002 年、2003年像網易、新浪的網站是全屏鋪滿,從2005年開始就是居中,為何會有這種變化呢?是因為寬屏普及率很高,所以就會變成居中。在屏幕千變萬化的情況下,我們考慮居中布局。 

 

 

它大部分的功能都是通過居中的對話框來實現。因為要考慮到多分辨率,就得考慮UI的背景。如果用居中,UI的背景可以選擇是否使用3D背景。大家如果玩過這個游戲,他們居中就是這個區域。

 

第二個原則九宮格浮動布局,這種情況下我們做了UI后就是為了在不同的分辨率上,這種九宮格的布局使用功能按鈕、圖表、血條等。這種浮動設計是任憑屏幕變化多大,都始終保持相對合理的位置。

 

第三個原則自適應尺寸,剛才兩種布局是不能完全解決我們的需求,對話框按鈕就是要根據屏幕拉伸。順便提一下,Unity並沒有區別iPhone、Android,全部都是自適應尺寸。

 

UI美術制作

 

上面三種方式就是UI的原則。設計的思路定下來后,就要開始美術制作,現在分享一下我做的美術框圖。美術制作由草圖再變成一個框圖,我們游戲的框圖用了AI,我可以告訴大家用AI更簡單,好處更多。因為它很容易上手,任何一個策划用一天時間就能掌握基本操作。

 

 

我們在畫框圖時,就能很明確知道界面能夠知道放下多少個按鈕。畫完草圖后,讓美術根據草圖、尺寸做美術效果圖,UI成品圖也是在AI制作,PS也是挺好,國內的美術更喜歡用PS,畫起來很簡單,也很直觀,國內AI高手沒有那么多,游戲用AI用得不多。我們之所以用AI不用PS主要是AI是矢量,PS每個按鈕還得畫一次,效率太低了。整個游戲從開始到進入地圖到對話框等,每一個都是可以用不同的畫板、不同的分辨率,還有一個優點是導出圖片很方便,用PS的話很可能一個按鈕十幾個圖層,光選擇十幾個圖層就很費勁。現在顯示的圖大概花費了兩周不到,很方便。

 

 

下一步就是導出UI效果圖,以前搞房地產、建築之前,房子還沒有蓋,就找人噴一些效果圖,讓大家有直觀的感覺,知道房子做出來是怎樣,美術也是一樣,當把AI畫出來后,都有一個效果圖,效果圖出來后有很大意義。我們要求每一個UI頁面導出效果圖,存放到Unity項目文件夾,這是我們團隊的規范,必須要保存到規定的文件夾里。

 

 

UI程序的實現

 

一個游戲的一線員工主要是策划、美術、程序三種工種組成,剛才的流程里為何要有草圖和效果圖,原因是草圖是策划和美術之間溝通,之后用程序與美術用效果圖溝通,讓程序在Unity在程序中擺放。我們定了這個流程是減少策划、美術、程序之間的溝通成本,策划把草圖交給美術,美術跟草圖溝通好,然后程序跟美術就不會有什么糾紛。關於導出產品圖,UI分了四種圖片分類,普通切片、九宮格切片和填充整個區域的切片。

 

最后一項是講程序,程序員拿到成品導出后,按照我們團隊,就由程序員去擺放。我們程序員跟我們講希望美術擺好再給他,但嘗試過之后更麻煩。之后導出UI效果圖,分層次、分組,用00_、 01_、02_序列號命名,這樣會看得比較舒服,雖然這時命名多花一點時間,但是以后能節省很多工夫。接下來很重要的是程序放在哪里。整個UI對象有時比場景還多,要是自己寫的程序把一段程序放在其中一個對象里,這時項目交給另一個人,他根本就不知道在哪里。我們專門用一個對象控制菜單的主邏輯,就把菜單 主邏輯綁到他身上。有時候有一些UI迫不得已還是需要那種單獨把一個代碼綁定在一個特定的UI對象。關於UI的布局擺放,只能靠場景組合來擺。

 

UI自動縮放

 

關於UI自動縮放程序,在這種情況下我們要設計一個UI自動縮放,我們是以iPhone4為基准,iPhone4是最中間的比例,變成iPad就會豎向拉長,iPhone5就橫向拉長,實踐之后效果不好,我們就按照iPhone4的長寬比來做。我們的對話框主要是以iPad的框來做,經過程序進行縮放按照比例,保證在iPhone4、iPhone5里都看得很束縛。

 

 

創業團隊只需開發


關於性能問題,就是耗內存。如果確實占很大內存,可以使用動態加載、動態銷毀。將獨立的UI對話框制作成prefab。我作為過來人,大家做技術產品一定要考慮開發和研發的區別,特別是創業,研發是沒有時間保障,開發是有明確的時間及產量保證,我們要做一個產品,產品用多少時間做是要有明確的。在北京,很多同行、團隊用18個月、22個月開發一個開品,他們就是沒有搞清楚開發和研發的區別。我們團隊就是不太願意要技術員研發很多時間,雖然很有幫助。但是考慮時間,目前的准則,做一款新產品研發的比例在30%以下,這樣就保證了70%的工作是有時間保證。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM