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