樂活長青×體感設計
2013/05/11&18
【體驗教學】Unity 3D讓你也會做遊戲
學員們在T型人才工作坊第一天發想設計的遊戲概念到第二週早上一來,已變成可以操作、試玩的遊戲畫面。週間助教與學員們在臉書平台上繼續討論、得到共識後,資管系助教們便開工將想法寫成程式語言,生動的遊戲,活靈活現地呈現眼前。每組再利用一小時時間,針對目前的遊戲模型進行討論,學員們試著從老人家的立場發想,這樣的設計,在顏色、動作、直覺辨識上,是否需要再作調整!
由於工作坊才短短兩天,無法讓學員們完整走過發想、討論、設計、寫程式的過程,因此,最難的部分就需要由助教代為操刀;但為讓學員們也能體驗遊戲設計的過程,資管系胡碩誠助理教授,特別帶大家體驗Unity 3D軟體的功能。在課程開始之先,胡碩誠先清楚說明課程的目的:「一是讓大家體驗,助教做的模型是怎麼做出來的。有此認識之後,其次是,下午再修的時候,可以有具體想法,知道哪邊該怎麼修!」 口述/胡碩誠(世新大學資訊管理學系助理教授) 撰文/陳淑英 |
何謂Unity 3D?為了讓各領域學員了解遊戲設計軟體的功能,胡碩誠簡明扼要地將Unity 3D 介紹給大家。Unity 3D是目前最廣泛被業界使用,功能強大、直覺式的遊戲引擎。為何他的接受度這麼高?胡碩誠補充說:「因就價格來說,其他遊戲引擎的授權金高達上百萬,而整套Unity 3D的價格,折合台幣約8萬5,相對比其他廠牌便宜很多。」雖然Unity 3D無法做出3D動畫,但它能夠跟其他廠牌的多媒體製作工具搭配,像3D影像、動畫、手繪圖片、聲音,這些素材都可以加入Unity 3D,支援光影效果的後製。
胡碩誠進一步介紹:「要做出可以互動的3D內容,當然脫離不了程式碼,Unity 3D本身是用C/C++寫的;裡面的遊戲程式則用C#或JavaScript去寫。在軟體開發業,也都是利用這兩類語言。寫好的程式可以發佈到不同平台,像筆電、平板、手機、遊戲機都行。除此之外,很多素材可以在網路上(accset store)買,也有免費的素材提供,很多素材不用自己做!」 Unity 3D可支援的軟體
Unity 3D雖無法做動畫,或繪製漂亮的圖,但可以利用專業圖像、聲音軟體,整合到Unity 3D,變成遊戲中的場景,這是它很吸引人的地方!
可以支援Unity 3D的軟體有:
Unity 3D怎樣結合Kinect已經寫好的遊戲程式怎樣透過簡單的裝置,讓身體可以玩遊戲?胡碩誠說:「Unity 3D雖然可以做遊戲,但本身並沒有支援體感部分,所以需要透過Kinect所接受到的訊號來支援Unity 3D的遊戲。」至於Kinect擷取到的訊號,怎樣送到Unity 3D?胡碩誠說:「第一個是靠Micrpsoft的SDK(Kinect for Windows SDK);第二個是靠OpenNI(open nature interaction)。」
胡碩誠說:「如何擷取Kinect偵測到的人體骨架資訊,是開發體感遊戲很重要的一個環節。第一類做法是把接收到的關節資訊傳送到Unity,以驅動遊戲人物角色的動作。但這樣的做法有個問題,因kinect抓骨架並沒有那麼精確,有時候人物動作會像軟骨功一樣!所以,我們採用知識辨識的方式,就是把骨架變成姿勢的判斷。比如,我將手舉高,然後設定『舉手指令』,手舉高超過頭多少公分叫舉手?要明確定義出來。設一個門檻值,動作有達到標準,表示有做這個動作。透過這些設定,可以把資料誤差給刪除。」 這部分需有FAAST(flexible action and articulated skeleton toolkit)軟體協助,它畫面清晰明瞭,設定非常簡單易學、也最直覺,直接把設定,透過滑鼠或鍵盤,轉成體感遊戲指令鍵。 這次使用的系統是openNI1.5搭配FAAST1.0版本,是提供硬體跟應用程式之間的橋梁。胡碩誠請學員先設定一個新的姿勢,再給它一個名稱,試著動手動腳玩玩看! 結語
|
|