用Unity3D開發Cardboard應用程式(快速入門篇)

VR(Virtual Reality)已成為當今的火熱話題,也有越來越多的VR產品推出。這篇文章除了簡單介紹Cardboard與Unity外,會帶領各位以輕鬆的方式用Unity3D製作Cardboard的相關應用程式。有了這方面的基礎,相信要製作如HTC Vive等其他平台的應用程式也非難事。

這篇文章將帶大家快速擁有關於Cardboard、VR、Unity的概念。主要是針對第一次接觸的讀者而寫的,如果已有相關知識,可以直接閱讀:〈用Unity3D開發Cardboard應用程式(實戰篇)〉(尚未完成,煩請等待~)

另外由於Unity是一套功能十分完整的軟體,在有限的篇幅內實在很難全面介紹所有功能與操作,因此在文末會推薦大家一些學習資源可以使用。文中只會將Unity的介面做一些簡單的說明,至於操作上本文只會粗略帶過。

I. Google Cardboard

取名自它的製作方式,它是利用厚紙板簡單摺疊、黏貼所製作的。售價極為低廉,Google官方也提供設計圖,供民眾直接下載自行製作。同時它也是最早發布的虛擬實境裝置之一,早在2014年,Google I/O大會便發表這項裝置。而它的原理取用自19世紀英國人查爾斯‧惠斯頓(Charles Wheatstone)S3D眼鏡概念,利用左右眼視差看出立體圖片或影片。只要有Google Cardboard,搭配Cardboard應用程式,就可以體驗虛擬實境。2015年,它更支援YouTube 360°影片,除了地圖、街景,影片更能身歷其境觀看各種活動。它的好處在於:易開發、可無線使用、攜帶方便、軟體支援多,而且價格便宜。但是它的效果和其他VR裝置相比差強人意,取決於手機的品質,在實際應用上以內容觀看和教學較為合適。現在也推出第二代版本,主要是將原本用於「點擊」功能的強力磁鐵替換為可以導電的按鈕。

第二代Cardboard
取自https://developers.google.com/vr/discover/cardboard

惠斯頓的3D眼鏡
取自https://goo.gl/jYbUu1
   
 由此可知,取決VR體驗效果的關鍵因素是手機的性能。相較於HTC Vive、Oculus Rift透過電腦主機運算再將結果回傳,由於手機的處理能力不如電腦,因此效果較難與HTC Vive、Oculus Rift媲美。在資源的控管與效能優化上,必須提高心思。

II. VR(Virtual Reality)虛擬實境

虛擬實境是將眼前所見的世界全部取代,讓眼睛看到一個完全虛擬、透過電腦動畫模擬出的世界。早期因為硬體設備昂貴的關係,因此多應用在一些高危險活動的訓練,例如飛行、軍事模擬器等。但如今隨著硬體設備價格降低的影響,讓它成為今年最熱門的話題之一。2016年被稱為「VR元年」,各大廠牌都推出自己的VR產品,希望可以在這領域搶得先機。
如果想要了解VR與AR(Augmented   Reality)擴增實境的差異,請參考另一篇文章:Aurasma介紹


III. Unity3D

Unity是一套跨平台的遊戲製作軟體,可以開發Windows、MacOS、Android、iOS、PlayStation、XBox等平台的遊戲,也可以開發線上遊戲。Unity提供免費版本供個人使用(Personal Edition),並擁有豐富的資源,學習門檻較低。
安裝完軟體,並新增專案後,會看到如下圖的視窗:


介紹一些常用的功能與視窗:

首先看到最上方的工具列:


File - 專案管理的功能都在這裡,例如:儲存專案(Save Project)、儲存場景(Save Scenes)、建構(Build & Run)等。
Edit - 簡單的編輯功能都在這裡,例如:剪下、複製、貼上等。
Assets、Component - 這些分別與Project、Hierarchy、Inspector視窗有關,下文一併介紹。
GameObject - 創建物件(方塊、球、燈光等)以及物件間的對齊、關係設定等都在這裡。
Windows - 視窗的開啟與關閉,例如:動畫視窗(Animation)等。
Help - 取得幫助。

接下來是它的下方這一排:


左邊的這5個,其中左邊數來第1個是場景平移,其他的是物件控制按鈕(移動、旋轉、縮放)
接下來的這2個與座標軸有關,在〈用Unity3D開發Cardboard應用程式(實戰篇)〉(尚未完成,煩請等待~)
將會特別提到。
中間的這些是遊戲測試按鈕,左邊的是最常用的開始/結束,中間是暫停,右邊則是逐格播放。
至於右邊的區塊,如果是開發小型專案的話,常用的只有目前標註Default的下拉式選單。它可以調整版面配置,除了內建的之外,也可以自訂並儲存。以下這個是筆者常用的版面配置(自訂),供各位參考。


接下來介紹常用的視窗,筆者將以這個版面配置做說明。

Scene - 最主要的操作區域,在這裡可以快速調整物件的位置與尺寸,以及編輯場景等。
Game - 即時的遊戲畫面,透過架設於場景中的攝影機,可以預覽遊戲效果。
Hierarchy - 遊戲中的所有物件都會出現在這裡,方便統一管理。
Project - 這裡放的是所有的素材,將存放於此的素材拖曳到Hierarchy就會出現在遊戲中。
Inspector - 調整物件的參數,或是為物件增加屬性。

還記得剛剛在工具列中提到的Assets、GameObject、Component嗎?
事實上,在Project視窗中按滑鼠右鍵,也會出現Assets選單,可以匯入資源或素材包,或是新增程式碼、材質球等等。在Hierarchy視窗中按滑鼠右鍵,就會出現部分的GameObject選單,可以創建新的物件。至於Component,當我們點選Hierarchy中的物件,在Inspector視窗中會出現如下圖的資訊:


在最下方有個Add Component的按鈕,就相當於Component選單喔!可以為Inspector中的物體加上屬性。

在Unity中,有些快速鍵值得記住,以下列出筆者常用的一些:
點選物件後按「W」:物件會出現3個方向的箭頭,用於移動
點選物件後按「E」:物件會出現好幾道圓環,用於旋轉
點選物件後按「R」:物件會出現3個軸,用於縮放
滑鼠中鍵拖曳:畫面平移
滑鼠右鍵拖曳:畫面旋轉
滑鼠滾輪:畫面縮放

最後,提供各位一些實用的學習管道,如果想要了解Unity3D每個視窗與選單的細項,非常推薦「快速掌握VR基本功 從概念到應用—使用Unity打造虛擬世界」這本書,書中也有詳細介紹各個VR平台的開發方式,值得閱讀。
另外,官方也有提供教學影片,並提供字幕,降低學習門檻。除了可以按照遊戲主題學習,也可以根據想要了解的功能(例如:物理性質、動畫等)按自己所需學習。也有說明文件可以參考。

留言

這個網誌中的熱門文章

超低價打造mearm Ver1.0 機械手臂 PART2

超低價打造mearm Ver1.0 機械手臂 PART1