

摘 ?要:“海洋衛(wèi)士”VR游戲的設(shè)計與實現(xiàn),主要是對VR游戲機制、場景設(shè)計、交互界面和技術(shù)實現(xiàn)等方面進行研究,重點分析VR游戲的設(shè)計思路以及3D場景建模、UI交互設(shè)計與實現(xiàn)、C#編程語言關(guān)鍵功能的實現(xiàn)以及VR游戲的發(fā)布與運行等關(guān)鍵技術(shù),最終開發(fā)設(shè)計出了了充滿趣味性、沉浸感的VR游戲,讓高職學(xué)生掌握游戲設(shè)計開發(fā)技術(shù)的同時,也能夠在游戲過程中喚起對于海洋環(huán)境保護的重視。
關(guān)鍵詞:Unity3D;海洋垃圾清理;VR游戲設(shè)計;虛擬現(xiàn)實
中圖分類號:TP391.9;TP317 ? ? 文獻標(biāo)識碼:A 文章編號:2096-4706(2020)21-0094-03
Design and Implementation of Marine Garbage Cleaning VR Game Based on U3D
PAN Shujie
(Suzhou Branch of Jiangsu United Vocational and Technical College,Suzhou ?215009,China)
Abstract:The design and implementation of the “Guardian of the Ocean” VR game mainly focuses on the research of VR game mechanism,scene design,interactive interface and technical realization,focusing on the analysis of VR game design ideas,3D scene modeling,UI interaction design and implementation,the realization of key functions of the C# programming language and key technologies such as the release and operation of VR games have finally developed and designed interesting and immersive VR games,allowing vocational students to master the game design and development technology,they can also arouse the attention to marine environmental protection during the game.
Keywords:Unity3D;marine garbage cleaning;VR game design;virtual reality
0 ?引 ?言
基于本人在高職院校多年從事VR游戲開發(fā)方面的教學(xué)經(jīng)驗,以及對于高職虛擬現(xiàn)實項目技能大賽的指導(dǎo)經(jīng)歷,發(fā)現(xiàn)高職學(xué)生由于計算機程序基礎(chǔ)相對薄弱、藝術(shù)創(chuàng)新能力不足等方面的問題,使得其難以在VR游戲設(shè)計開發(fā)中創(chuàng)建美觀逼真的游戲場景、設(shè)計與實現(xiàn)流暢的交互功能,另外對于Pico VR眼鏡、HTC Vive頭顯設(shè)備等VR設(shè)備的運用以及VR游戲的跨平臺發(fā)布也往往會力不從心。因此,本人借助“海洋衛(wèi)士”VR游戲設(shè)計與開發(fā)這一課題的研究,詳細(xì)闡述了VR游戲的機制設(shè)計、游戲場景制作、UI交互界面設(shè)計、關(guān)鍵技術(shù)的實現(xiàn)以及VR游戲發(fā)布與運行等整個VR游戲的設(shè)計開發(fā)流程,希望可以讓高職學(xué)生掌握Unity3D、3Dmax、C#語言、HTC Vive等VR游戲開發(fā)的流程和技術(shù),提高學(xué)生的專業(yè)技能和職業(yè)素養(yǎng);也希望能通過交互性強、場景逼真、沉浸感強的VR環(huán)境保護游戲開發(fā)的參與和體驗,能夠強化高職學(xué)生海洋環(huán)境保護意識。
1 ?游戲主題與機制設(shè)計
“海洋衛(wèi)士”這款VR游戲是以海洋垃圾清理、海洋環(huán)境保護為主題的單人RPG游戲,游戲背景是目前隨著人類經(jīng)濟水平的提升、工業(yè)化進程的不斷加快以及人類海洋活動的日益頻繁,海洋垃圾日漸增多,給海洋生態(tài)環(huán)境造成了嚴(yán)重的影響,時刻威脅著海洋生物的生命以及海洋生態(tài)系統(tǒng)的平衡,因此對于海洋垃圾的清理是治理海洋環(huán)境污染問題的主要措施。游戲主線以圍繞“海洋垃圾清理”這一主線任務(wù),設(shè)計了5中不同的海洋場景,10種常見垃圾(香煙頭、塑料袋、快餐盒、玻璃瓶、塑料袋、木材、飲料罐、漁網(wǎng)、有機農(nóng)藥、石油),玩家根據(jù)場景和污染物的不同進行垃圾清理,獲取分?jǐn)?shù)、贏得游戲的同時,讓玩家掌握不同垃圾的危害程度。
整個“海洋衛(wèi)士”游戲的游戲機制設(shè)計,是將趣味性與教育性相結(jié)合,打造出挑戰(zhàn)豐富、樂趣十足、平衡良好的、可玩性高的游戲機制,借助逼真的三維海洋環(huán)境、絢麗的游戲特效、引導(dǎo)和人性化的交互方式、沉浸感強的VR體驗,引導(dǎo)玩家在通過清理不同垃圾來獲取不同的積分,拾取隨機獎勵來獲得垃圾清理新工具,通過扮演不同的角色來完成游戲關(guān)卡。
2 ?游戲場景和UI交互設(shè)計
2.1 ?游戲場景設(shè)計與實現(xiàn)
“海洋衛(wèi)士”游戲中的場景設(shè)計充分結(jié)合海洋地形的實際情況,以大陸邊緣、大洋盆地、大洋中脊三種基本地形作為設(shè)計依據(jù)和參考,設(shè)計了海面、深水海域、海溝、海底平原、海底山脈五個場景。以海底山脈場景設(shè)計與制作為例,一方面是利用3Dmax軟件多邊形工具進行三維模型的創(chuàng)建,UV編輯器和Photoshop進行貼圖繪制,燈光搭建與材質(zhì)烘焙輸出,最終以FBX格式文件導(dǎo)入到Unity3D引擎當(dāng)中,形成基礎(chǔ)的游戲場景,如圖1所示。另一方面環(huán)境中的特效,如不斷上浮的水泡、懸浮的白色垃圾、海面上的太陽光斑、海水的潮汐涌動等,借助Unity3D的“Particle System”功能創(chuàng)建粒子,通過粒子的材質(zhì)貼圖創(chuàng)建“氣泡”“絮狀物”等物體,并通過對于粒子“Shape Module”“Force Over Lifetime Module”等參數(shù)調(diào)整實現(xiàn)最終的海洋特效,進而創(chuàng)建出逼真的VR游戲場景。
2.2 ?UI交互設(shè)計與實現(xiàn)
對于“海洋衛(wèi)士”游戲的UI交互設(shè)計,主要是建立在HTC Vive頭顯設(shè)備、Pico VR眼鏡等VR游戲的交互設(shè)備,利用手柄、眼鏡準(zhǔn)星懸停、觸摸、按鍵等交互方式之上,對于游戲說明、任務(wù)引導(dǎo)、垃圾清理方式、獎勵獲取等都是采用文本顯示、準(zhǔn)心懸停、箭頭引導(dǎo)、按鍵確定等方法實現(xiàn)交互。比如在海洋垃圾顯示時通過紅色閃動的箭頭進行引導(dǎo),通過紅色的準(zhǔn)心懸停進行垃圾的清理,讓玩家在戴上VR設(shè)備進行通關(guān)的過程中可以高效準(zhǔn)確地獲取游戲任務(wù)、發(fā)現(xiàn)海洋垃圾、快速清理垃圾、躲避海洋危險物品、獲取獎勵。使用C#編程語言,快速定義不同類型的游戲引導(dǎo)文本、隨機添加不同種類的垃圾引導(dǎo)方式、通過按鍵的懸停實現(xiàn)動畫的播放與暫停等,具體實現(xiàn)方式使用switch語句,分列三種情況進行對話框的開啟和垃圾交互程序的實現(xiàn),具體C#代碼為:
switch (GameManager.Instance.currentIndex)
{
//如果是第二個對話框的按鈕
case 1:
DeadFish.SetActive(true);
break;
//如果是第三個對話框的按鈕
case 2:
//開啟第一個垃圾的交互
GameManager.Instance.Garbages[0].SendMessage ("IsInteractive", true);
break;
//如果是第四個對話框的按鈕
case 3:
//開啟當(dāng)前可交互垃圾的交互
GameManager.Instance.Garbages[GameManager.Instance.currentGarbage].SendMessage("IsInteractive", true);
//開啟柵欄沖撞
GameManager.Instance.Garbages[3].SendMessage("Fence Collision");
//開啟攝像頭躲避
Camera.main.transform.parent.GetComponent
break;
}
3 ?關(guān)鍵技術(shù)實現(xiàn)
3.1 ?初始物體的定義與管理
由于游戲場景中所涉及到的物體、特效、交互方式眾多,對于眾多物體的創(chuàng)建、管理和調(diào)用是游戲設(shè)計與實現(xiàn)的關(guān)鍵所在,因此在“海洋衛(wèi)士”游戲中本人創(chuàng)建了一個GameManager腳本作為一個管理器,對于游戲中文本框、游戲物體、交互方式等進行初始化和配置,增加游戲的可讀性、可修改性,提高后期維護的效率。比如通過public公共變量定義了public GameObject[] Notices;等參數(shù)。
3.2 ?獎勵獲取和危險躲避
在“海洋衛(wèi)士”垃圾清理游戲中,玩家在領(lǐng)取游戲任務(wù)之后,除了在UI元素的引導(dǎo)下進行垃圾物體的偵查、清理之外,還需要通過攝像機的準(zhǔn)心獲取漂浮過來的獎勵,調(diào)整鏡頭視角躲避飛過來的障礙物等危險,一方面可以大大提升游戲的的新鮮感和刺激性,激發(fā)玩家清理海洋垃圾的興趣;另一方面也可以讓玩家了解海洋垃圾的危害以及清理海洋垃圾的必要性。比如對于海洋垃圾清理過程中隨機出現(xiàn)的“危險”,玩家通過攝像機視角控制和準(zhǔn)心懸停進行躲避的技術(shù)實現(xiàn),主要是通過以下C#語言來實現(xiàn):
if (GameManager.Instance.currentGarbage < 2)
{
GameManager.Instance.currentGarbage++;
}
else
{
GameManager.Instance.gameObject.GetComponent
}
GameManager.Instance.Garbages[GameManager.Instance.currentGarbage].SendMessage("IsInteractive", true);
gameObject.SetActive(false);
}
3.3 ?VR效果實現(xiàn)
VR游戲相對于傳統(tǒng)的三維游戲而言,借助外在的VR設(shè)備進行觀看和體驗,具有更優(yōu)質(zhì)的視覺畫面、更強游戲沉浸感、更流暢的人性化交互體驗。“海洋衛(wèi)士”游戲VR效果的實現(xiàn),除了外在的VR穿戴設(shè)備之外,更重要是在交互方式、攝像機設(shè)置、發(fā)布方式等方面的技術(shù)實現(xiàn)。另外,VR游戲的運行都是基于Pico VR眼鏡、HTC Vive頭顯設(shè)備等各類Android系統(tǒng)平臺,因此VR游戲的發(fā)布需要進行應(yīng)用的設(shè)置和技術(shù)處理。在“Build Settings”菜單中添加場景文件之后,選擇“Android”進行“Player Settings”各參數(shù)的調(diào)整,就可與實現(xiàn)基于Android系統(tǒng)運行的SDK文件,所發(fā)布的游戲也可以在HTC Vive、Android手機、VR眼鏡等各平臺進行運行,如圖2所示。
4 ?結(jié) ?論
Unity3D引擎作為極強跨平臺性的游戲開發(fā)引擎,在各類游戲的開發(fā)設(shè)計中具有豐富的成功經(jīng)驗可供借鑒,是環(huán)保教育類游戲開發(fā)設(shè)計與實現(xiàn)的重要選擇。利用PS技術(shù)、3Dmax技術(shù)和Unity3D引擎開發(fā)設(shè)計海洋垃圾清理的VR游戲,經(jīng)過反復(fù)調(diào)試和實測,發(fā)現(xiàn)在場景呈現(xiàn)、界面跳轉(zhuǎn)、音效等方面所呈現(xiàn)的交互性、沉浸感和逼真性可以讓玩家更容易深層次參與到游戲當(dāng)中,可以大大增強玩家的感官體驗,讓高職學(xué)生在游戲中地深刻體會到海洋垃圾的危害,大大提升了學(xué)生游戲開發(fā)的技術(shù)素養(yǎng),并強化了環(huán)保意識。總之,“海洋衛(wèi)士”VR游戲的設(shè)計開發(fā)不僅在游戲開發(fā)、虛擬現(xiàn)實設(shè)計中具有重要的探究價值,而且“寓教于樂”的教育游戲?qū)τ谔岣呓逃健⒃鰪娊逃Ч哂兄匾饔茫瑢τ谖磥韺W(xué)校教育、游戲開發(fā)等各領(lǐng)域具有的重要影響。
參考文獻:
[1] 孟子權(quán),徐爍,楊迎新.基于Unity3D的環(huán)境保護類游戲的研究與實現(xiàn) [J].電腦編程技巧與維護,2019(5):136-137+ 146.
[2] 李政蓬,張美娜,蔣新宇,等.基于UNITY3D的多消游戲的設(shè)計與開發(fā) [J].電腦知識與技術(shù),2019,15(18):59-61.
[3] 李想,張明寶,楊傲嘯.基于Unity3D的《海洋水下作業(yè)應(yīng)急裝備》虛擬仿真系統(tǒng)的設(shè)計與實現(xiàn) [J].信息周刊,2020(11):460.
[4] 馮波,劉鵬.基于Unity3D的VR應(yīng)用的設(shè)計與開發(fā) [J].數(shù)字技術(shù)與應(yīng)用,2017(11):180+183.
[5] 張陽,楊長強,鄭慧平.基于Unity3D與VR頭盔的虛擬現(xiàn)實體感游戲開發(fā) [J].軟件導(dǎo)刊,2017(8):119-122.
[6] 劉桂元,曾志遠(yuǎn),楊書新.基于Unity3d引擎的教育類游戲設(shè)計與實現(xiàn) [J].軟件導(dǎo)刊,2017(1):50-53.
作者簡介:潘舒潔(1984—),女,漢族,江蘇蘇州人,講師,本科,研究方向:計算機教學(xué)、虛擬現(xiàn)實。