![基于Unity 3D的虛擬地震預(yù)防相關(guān)應(yīng)對(duì)措施游戲的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)](http://file4.renrendoc.com/view/5989a8d38906f1be9b975986eb613b35/5989a8d38906f1be9b975986eb613b351.gif)
![基于Unity 3D的虛擬地震預(yù)防相關(guān)應(yīng)對(duì)措施游戲的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)](http://file4.renrendoc.com/view/5989a8d38906f1be9b975986eb613b35/5989a8d38906f1be9b975986eb613b352.gif)
![基于Unity 3D的虛擬地震預(yù)防相關(guān)應(yīng)對(duì)措施游戲的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)](http://file4.renrendoc.com/view/5989a8d38906f1be9b975986eb613b35/5989a8d38906f1be9b975986eb613b353.gif)
![基于Unity 3D的虛擬地震預(yù)防相關(guān)應(yīng)對(duì)措施游戲的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)](http://file4.renrendoc.com/view/5989a8d38906f1be9b975986eb613b35/5989a8d38906f1be9b975986eb613b354.gif)
![基于Unity 3D的虛擬地震預(yù)防相關(guān)應(yīng)對(duì)措施游戲的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)](http://file4.renrendoc.com/view/5989a8d38906f1be9b975986eb613b35/5989a8d38906f1be9b975986eb613b355.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于Unity3D的虛擬地震預(yù)防相關(guān)應(yīng)對(duì)措施游戲的設(shè)計(jì)與實(shí)現(xiàn)DesignandimplementationofVirtualEarthquakePreventionRelatedCountermeasuresgamebasedonunity3D
內(nèi)容摘要隨著新時(shí)代發(fā)展和人們對(duì)天災(zāi)人禍的漸漸重視,人們會(huì)在互聯(lián)網(wǎng)上學(xué)習(xí)逃生自救知識(shí)。游玩科普類游戲成為了學(xué)習(xí)的主流方式之一,從預(yù)防校園暴力到在火災(zāi)現(xiàn)場(chǎng)自救逃生,對(duì)于近年全球各地頻發(fā)的地震,我們更應(yīng)該予以重視進(jìn)行災(zāi)前預(yù)防災(zāi)時(shí)自救的學(xué)習(xí)。在VR設(shè)備并未普及千家萬戶的今日,選擇一款合適的3D游戲能更方便、仿真地感受到災(zāi)前災(zāi)時(shí)的現(xiàn)場(chǎng)變化,并根據(jù)現(xiàn)場(chǎng)情況及時(shí)作出反應(yīng)。Unity3D是一款游戲開發(fā)引擎,因?yàn)槠渖鲜挚?,平臺(tái)廣的特點(diǎn)在市場(chǎng)上被許多人認(rèn)可并廣泛使用。他能使得每個(gè)人在學(xué)習(xí)游戲設(shè)計(jì)時(shí)迅速適應(yīng)并投入設(shè)計(jì)。本論文探索基于Unity3D的模仿在地震時(shí)的逃生自救游戲的開發(fā),人們可以通過游玩這款游戲,擺脫被文字限制的思維,在游戲中切身體會(huì)到地震時(shí)緊迫的時(shí)間感和不同場(chǎng)景下不同決定帶來的。游戲難度遞進(jìn),通過傳統(tǒng)的關(guān)卡設(shè)計(jì)將游戲的游玩難度逐漸提升,不同的場(chǎng)景進(jìn)行不同的玩法設(shè)計(jì),游戲特有的震蕩感能為用戶帶來逼真的體驗(yàn)。現(xiàn)在的學(xué)生學(xué)習(xí)和上班族工作較為繁重,對(duì)業(yè)余時(shí)間的使用也會(huì)傾向解壓和放松身心,通過游戲進(jìn)行科普會(huì)使得在放松之余也進(jìn)行了對(duì)防災(zāi)自救知識(shí)的充實(shí)。本文主要描述了該游戲的開發(fā)原理,游戲的設(shè)計(jì)與完成、游戲的功能測(cè)試等內(nèi)容。為后續(xù)希望開發(fā)同類型科普游戲的開發(fā)者提供一定程度的借鑒與參考。關(guān)鍵詞:Unity3D3D技術(shù)地震逃生
AbstractWiththedevelopmentoftheneweraandpeople'sgradualattentiontonaturalandman-madedisasters,peoplewilltrytolearntheknowledgeaboutself-rescueontheInternet.Playingpopularsciencegameshasbecomeoneofthemainwaysoflearningit.Fromthepreventionofcampusviolencetoself-rescueandescapeatthesceneoffire,weshouldpaymoreattentiontothestudyofdisasterpreventionandself-rescueforthefrequentearthquakesaroundtheworldinrecentyears.Today,whenVRdevicesarenotwidelyusedinthousandsofhouseholds,choosingasuitable3Dgamecanmakeitmoreconvenientandsimulatethescenechangesduringthepre-disaster,andreactintimeaccordingtothescenesituation.Unity3disagamedevelopmentengine.Becauseofitsfaststartandwideplatform,itisrecognizedandwidelyusedbymanypeopleinthemarket.Itenableseveryonetoadaptandputintodesignquicklywhenlearninggamedesign.Thispaperexploresthedevelopmentofthegamebasedonunity3dtoimitatetheescapeandself-rescueintheearthquake.Peoplecanplaythisgame,getridofthethinkinglimitedbywords,andexperiencethesenseofurgencyintheearthquakeandthedifferentdecisionsindifferentscenes.Thedifficultyofthegameisprogressive.Throughthetraditionalleveldesign,thedifficultyofplayingthegameisgraduallyincreased.Differentscenesaredesignedwithdifferentplayingmethods.Theuniquesenseofshockofthegamecanbringrealexperiencetousers.Nowadays,studentsandofficeworkersworkhard,andtheytendtodecompressandrelaxtheirbodyandmindwhentheyusetheirsparetime.Popularsciencethroughgameswillenrichtheirknowledgeofdisasterpreventionandself-rescuewhilerelaxing.Thispapermainlytalksaboutthedevelopmentprincipleofthegame,thedesignandcompletionofthegame,thefunctiontestofthegameandsoon.Itcanprovidesomereferenceforthedeveloperswhowanttodevelopthesametypeofpopularsciencegames.Keywords:Unity3D3DtechnologyEarthquakeescape
目錄TOC\o"1-4"\h\z\u第一章 緒論 緒論選題的目的和意義眾所周知,在許多的自然災(zāi)害中,地震雖然不是唯一一個(gè)難以預(yù)測(cè)難以預(yù)防的自然災(zāi)害,但是因?yàn)榈卣鸬亩喟l(fā),使得地震成了目前危害性最大范圍最廣的自然災(zāi)害。地震帶來的財(cái)產(chǎn)傷亡以及人員傷亡數(shù)不勝數(shù)也難以計(jì)算,而中國(guó)恰恰就是世界上爆發(fā)地震最多的幾個(gè)國(guó)度之一,歷史記錄的大地震帶來的人身傷亡以及后續(xù)花費(fèi)的修繕費(fèi)用讓人觸目驚心,如何能在地震中更好的保障自己本身的安全和財(cái)產(chǎn)安全變得越來越重要。近年來,地震防護(hù)雖然已經(jīng)受到人們的普遍關(guān)注和重視,但大多數(shù)人卻仍然能不知道在地震中如何才能更好保護(hù)自身安全,所以地震科普宣傳在防震中就顯得尤為重要了,選擇什么方式作為科普地震防護(hù)的渠道顯得尤其緊要。游戲的主流玩家群體多為學(xué)生以及上班族,他們通過游玩游戲進(jìn)行解壓,當(dāng)我們通過游戲讓玩家在減壓的同時(shí)進(jìn)行科普,便可以達(dá)到寓教于樂一舉兩得的目的。Unity3D是一款游戲開發(fā)引擎,因?yàn)槠溟_發(fā)成本低、發(fā)展前景寬廣的特點(diǎn)在市場(chǎng)上被許多人認(rèn)可并廣泛使用。這些特點(diǎn)也使得不少高科技人才都選擇往U3D行業(yè)發(fā)展。高薪的工作和人才的頻頻涌入,也使得U3D游戲開發(fā)的發(fā)展范圍越來越廣。而U3D之所以受廣泛游戲設(shè)計(jì)者青睞,我想最大的原因是由于U3D自身強(qiáng)大的API。它可以使得在設(shè)計(jì)那些看起來難以實(shí)現(xiàn)的行為變得簡(jiǎn)單容易操作,使得每個(gè)設(shè)計(jì)者都能通過U3D去創(chuàng)造自己的世界來實(shí)現(xiàn)自己天馬行空的幻想。本論文探究基于U3D的模擬地震逃生自救游戲的設(shè)計(jì)與開發(fā),人們可以通過游玩這款游戲,擺脫被文字限制的思維,在游戲中切身體會(huì)到地震時(shí)緊迫的時(shí)間感和不同場(chǎng)景下不同決定帶來的。游戲難度遞進(jìn),通過傳統(tǒng)的關(guān)卡設(shè)計(jì)將游戲的游玩難度逐漸提升,不同的場(chǎng)景進(jìn)行不同的玩法設(shè)計(jì),游戲特有的震蕩感能為用戶帶來逼真的體驗(yàn)。而設(shè)計(jì)一款優(yōu)良的游戲作品,設(shè)計(jì)者不能僅僅是給予玩家刺激感,更加應(yīng)該要升華到陶冶情操,深化思想的目的,在釋放社會(huì)壓力的同時(shí)更要有意識(shí)傳達(dá)一些生活常識(shí)。此次對(duì)于科普類游戲的研究設(shè)計(jì)傾向于探索3D游戲設(shè)計(jì)中科普類游戲的局限性和優(yōu)越性。我相信,3D游戲的發(fā)展絕不會(huì)僅僅止步于眼前這些功能和內(nèi)容,隨著游戲的發(fā)展會(huì)更新更多貼近生活的設(shè)計(jì)。如今我們最大的任務(wù)便是要成為這磨礪探索路程上的試劍石,在設(shè)計(jì)開發(fā)時(shí)提供足夠多的素材,暴露足夠多的問題,從而在未來能在一切都向3D發(fā)展的大趨勢(shì)時(shí),設(shè)計(jì)者們便可隨心所欲地發(fā)揚(yáng)其優(yōu)越性并盡可能彌補(bǔ)其中的局限性。選題的背景每年世界各地總共會(huì)爆發(fā)大概500萬次地震,因?yàn)檎鸺?jí)小或者其他的原因,大部分的地震我們并不會(huì)感受到,但我們能感受甚至接觸到的地震仍然有5萬多次,這五萬多次的地震中會(huì)形成災(zāi)害的地震就多達(dá)1000余次,平均下來,大約每天就會(huì)有3次可形成災(zāi)害的地震發(fā)生。從這些數(shù)據(jù)上看,地震所導(dǎo)致的死亡人數(shù),僅是上個(gè)世紀(jì)全球就已經(jīng)有120余萬人,由此可見地震并不是什么罕見現(xiàn)象,它就藏在我們身邊,每個(gè)人隨時(shí)都有可能因?yàn)榈卣鹆麟x失所甚至是失去性命。近幾年,國(guó)內(nèi)外強(qiáng)震得爆發(fā)越來越密集。然而地震是會(huì)隨著人類社會(huì)的發(fā)展,經(jīng)濟(jì)程度上的一直提高,帶來愈加重大的損失,這正說明了在未來社會(huì)的不斷發(fā)展中,地震帶來的問題比較于以前肯定會(huì)體現(xiàn)出更高的強(qiáng)度,受災(zāi)后的毀壞水平會(huì)呈現(xiàn)增長(zhǎng)趨勢(shì)。雖然近幾年幾次重大的地震都讓千千萬萬的人意識(shí)到了地震帶來的變化是愈加劇烈的,卻都未曾有系統(tǒng)的自發(fā)的地震科普宣傳出現(xiàn)在大眾面前??上攵?,我國(guó)群眾對(duì)于地震仍是抱有一種僥幸心理,因此,我們需得加強(qiáng)地震科普宣傳,提高群眾對(duì)于地震災(zāi)害的預(yù)防意識(shí),要有“生于憂患,死于安樂”的自覺,盡可能將我們無法控制的天然災(zāi)害帶來的損失降到最低。我國(guó)防震減災(zāi)任務(wù)的方針是“預(yù)防為主,防御與救助相結(jié)合”。這句話我們也可以解讀為另一句話,便是“寧可千日不震,不可一日不防”。這兩句話的重點(diǎn)都在于“防”這個(gè)字上。每次地震過后,背后都是一場(chǎng)場(chǎng)家破人亡,妻離子散的悲劇。我們不能總是事后收拾地震帶來的各種“爛攤子”,我們應(yīng)當(dāng)事先為了減少甚至防止“爛攤子”的出現(xiàn)。我們需要把震后我們?yōu)榱司戎蝹?、恢?fù)建筑原貌等做的救災(zāi)活動(dòng)轉(zhuǎn)變?yōu)榈卣鹗录l(fā)生之前長(zhǎng)期自覺積極的防震自救行為。然而這種地震事件發(fā)生之前長(zhǎng)期自覺積極的防震自救行為的養(yǎng)成不是一次兩次地震演練,或者是一本兩本地震預(yù)防手冊(cè)就可以做到的。它需要依靠群眾的對(duì)防震減災(zāi)認(rèn)識(shí)的形成和進(jìn)步。而要形成這種對(duì)地震的防護(hù)意識(shí),就代表著我們需要大量的、長(zhǎng)期的防震減災(zāi)的宣傳和防震減災(zāi)常識(shí)的普及,這種宣傳和普及往往又需要大量的資金支持和人力支持。但是如果我們摒棄傳統(tǒng)的教育宣傳方式,選擇其他方式來去科普,使得人們能自發(fā)積極地去了解,便能達(dá)到事半功倍的效果。既是需要我們主動(dòng)積極地去了解去科普,通過什么方式就顯得格外重要。我們之所以選擇科普類游戲作為科普宣傳渠道,更大的原因是因?yàn)樗鼌^(qū)別于其他普通游戲,從事教育行業(yè)的人或是家長(zhǎng)并不會(huì)對(duì)此有過多的抵制行為。無論是對(duì)游戲抱有多大成見,甚至可能是“防游戲如防虎”,但都不得不承認(rèn)科普類游戲帶來的教育意義是非常大的。科普類游戲之所以更容易為全社會(huì)所接納,是因?yàn)樗粌H使得游戲和學(xué)習(xí)之間的沖突被弱化,也使得游戲有了一個(gè)合理的存在意義,于家長(zhǎng),于學(xué)生更是一種可以達(dá)到雙贏的途徑??破疹愑螒螂m然是以游戲?yàn)楸憩F(xiàn)模式,然而實(shí)質(zhì)和目的還是在于科普,只是通過使用這種形式的科普就能使得玩家在娛樂的過程中潛移默化地了解到我們所要科普的內(nèi)容。這區(qū)別于傳統(tǒng)科普模式中單調(diào)無趣的文字教學(xué)或是圖片教學(xué),增加了人與科普內(nèi)容的互動(dòng),以動(dòng)態(tài)的形式增添了許多趣味,使其更容易為玩家所接受,合乎國(guó)家《科普法》中規(guī)定“開展科學(xué)技術(shù)普及,應(yīng)當(dāng)采取公眾易于理解、接受、參與的方式”的要求?;谶@些特點(diǎn)與優(yōu)勢(shì),我認(rèn)為科普游戲有望成為提高全民科學(xué)素質(zhì)的重要方式之一。運(yùn)用這種形式的合并對(duì)科普形式進(jìn)行變化,強(qiáng)強(qiáng)聯(lián)手使得科普游戲得以發(fā)揮1+1>2的作用。通過科普類游戲普及防震自救知識(shí),能讓學(xué)生與家長(zhǎng)充分放心的參與其中,也能讓上班族在減壓之余得到科普。隨著互聯(lián)網(wǎng)的迅速發(fā)展,游戲的誕生使得人們的生活變得更加有趣和多樣,從最初2D游戲引領(lǐng)市場(chǎng),到如今3D游戲的獨(dú)占鰲頭和VR游戲的異軍突起,游戲經(jīng)歷了很大的變化。我們既然是要達(dá)到科普效果,那么我們的設(shè)計(jì)便要盡可能貼近現(xiàn)實(shí),而我們存在的現(xiàn)實(shí)世界是三維空間世界,3D游戲的模型例如游戲中的人物和地形就是用三維立體模型來實(shí)現(xiàn)的,所以3D游戲比較于2D游戲就會(huì)更顯得貼近現(xiàn)實(shí)世界。3D游戲在空間操作上的隨意性也較2D游戲要強(qiáng),這就更容易吸引人,這也使得3D游戲的設(shè)計(jì)成了游戲平臺(tái)上主要的游戲設(shè)計(jì)。為了達(dá)到仿真模擬科普的目的,將這款科普類游戲設(shè)計(jì)成3D游戲,就可以讓玩家較為真實(shí)地感受到地震發(fā)生時(shí)可能發(fā)生的真實(shí)情況。雖說相較于VR游戲帶來的仿真感,3D游戲的仿真就顯得較為欠缺,但考慮到VR設(shè)備尚未普及到千家萬戶且成本較高,選用VR游戲便無法達(dá)到廣泛科普的效果,所以選擇3D游戲進(jìn)行科普就顯得更為合適了。論文組織結(jié)構(gòu)?論文從一開始的構(gòu)思到后續(xù)的深化設(shè)計(jì)實(shí)踐,我結(jié)合了3D游戲相關(guān)的開發(fā)資料和視頻,進(jìn)行了一個(gè)地震逃生自救科普游戲的設(shè)計(jì)制作,在以下論文的敘述中會(huì)提及游戲的系統(tǒng)功能設(shè)計(jì)和一系列代碼的編寫。本篇論文分為六章,每個(gè)章節(jié)大致內(nèi)容和重點(diǎn)如下:第一章:緒論,主要闡述了該畢業(yè)設(shè)計(jì)選題的目的和意義、選題背景對(duì)地震防災(zāi)重要性、科普類游戲的優(yōu)越性和選擇3D游戲的原因的大概介紹;第二章:介紹了本文制作游戲使用的各類開發(fā)工具和使用的開發(fā)語言;第三章:包含了項(xiàng)目的從設(shè)計(jì)、制作到完成的總體設(shè)計(jì),對(duì)游戲玩法進(jìn)行了說明詳解并展示了游戲一些具體設(shè)計(jì)的結(jié)構(gòu)圖;第四章:詳細(xì)介紹了游戲的各個(gè)部分的設(shè)計(jì)實(shí)現(xiàn)內(nèi)容,比如場(chǎng)景設(shè)計(jì)、角色的動(dòng)作設(shè)計(jì)、UI交互設(shè)計(jì)等這些游戲設(shè)計(jì)內(nèi)容;第五章:運(yùn)行游戲進(jìn)行測(cè)試,打包封裝;第六章:對(duì)設(shè)計(jì)游戲時(shí)的出現(xiàn)的問題和今后的后續(xù)學(xué)習(xí)方向進(jìn)行總結(jié)。
開發(fā)工具介紹Unity3D游戲引擎Unity3D軟件介紹Unity3D可以說是目前較為流行的游戲開發(fā)工具,是一個(gè)對(duì)游戲開發(fā)功能有全面整合的綜合游戲開發(fā)平臺(tái)。使用者能夠輕松上手進(jìn)行創(chuàng)建例如三維游戲,實(shí)時(shí)三維動(dòng)畫等類型游戲。游戲設(shè)計(jì)者可以使用插件發(fā)布網(wǎng)頁(yè)游戲或是直接發(fā)布可運(yùn)行在多個(gè)平臺(tái)的游戲。Unity3D為游戲設(shè)計(jì)者提供了一個(gè)交互良好的操作界面。通過U3D的各個(gè)功能,每一個(gè)游戲設(shè)計(jì)者都可以流暢地在Windows或者M(jìn)acOS下進(jìn)行操作設(shè)計(jì)。U3D為我們提供了多種腳本語言編譯的常用環(huán)境,支持C#、javascript、boo三種腳本語言。U3D自帶五個(gè)工程視圖框架,通過這五個(gè)試圖便可以很好地協(xié)助設(shè)計(jì)者分類游戲中的對(duì)象及察看制作游戲的進(jìn)度。project視圖:用來放游戲中的資源文件,跟庫(kù)的概念一樣;hierarchy視圖:列明場(chǎng)景中的游戲?qū)ο笠员阌谠O(shè)計(jì)者查看;inspector視圖:顯示游戲資源的信息以及當(dāng)前選中的資源或?qū)ο蟮脑O(shè)置。例如對(duì)象的三維坐標(biāo)、旋轉(zhuǎn)量、腳本變量等內(nèi)容,是一些變量和組件的組合;scene視圖:是我們建游戲的地方,通常用來存放游戲中的模型資源,可以直接將模型拖放到場(chǎng)景中;game視圖:雖然不可以用來做編輯修改,但是可以用來監(jiān)察已經(jīng)實(shí)現(xiàn)的游戲的運(yùn)行結(jié)果,能夠讓我們看到完整的動(dòng)畫效果。這僅在播放模式中演示。API接口API本質(zhì)上其實(shí)是一些已經(jīng)被預(yù)先定義的函數(shù),而U3D就有這樣一套完整的API函數(shù)庫(kù),U3D強(qiáng)大的API可以幫助設(shè)計(jì)者實(shí)現(xiàn)各種天馬行空的設(shè)計(jì)。Unity3D中常用的API有關(guān)于物體旋轉(zhuǎn)和位移、U3D射線碰撞、剛體等。在使用U3D的過程中都會(huì)有所涉及,慢慢接觸到。物理引擎物理引擎的重要性在游戲中是較為重要的存在的,近年的游戲中,比如人類一敗涂地這種就是以絕佳的物理感受在玩家中大受歡迎。但在較早之前的游戲中,我們能夠發(fā)現(xiàn),物理引擎的使用并不會(huì)被游戲設(shè)計(jì)者們重視或者研究,當(dāng)時(shí)的游戲都是使用一些的運(yùn)算和比較基礎(chǔ)的體現(xiàn)設(shè)計(jì)來完成物理表現(xiàn)的處理。比如人跳起來,又落到地上這樣比較直觀體現(xiàn)重力的物理現(xiàn)象,當(dāng)時(shí)的游戲設(shè)計(jì)者只會(huì)通過這種較為粗糙簡(jiǎn)單的形式來體現(xiàn)基礎(chǔ)的物理現(xiàn)象。然而一個(gè)游戲的設(shè)計(jì)只有具備一定物理特性甚至是在物理特性上有一定的突出點(diǎn),才會(huì)使得玩家在游玩時(shí)有真實(shí)感。再看看如今3D游戲的火爆,隨著游戲設(shè)計(jì)者的重視使得物理表現(xiàn)效果在短時(shí)間內(nèi)有了巨大的改變,不僅僅局限于普通的重力體現(xiàn),更是浮力,力的相互作用等這些物理基礎(chǔ)現(xiàn)象,三維演繹的形式大大拓寬了游戲的類型與想象力。游戲設(shè)計(jì)的物理引擎主要包括剛體、碰撞、物理材質(zhì)等,我們利用這些組件構(gòu)成的物理引擎來模仿物體在現(xiàn)實(shí)生活中,力在物體間的相互作用甚至是力度的體現(xiàn)。比如在羽毛球小游戲中,當(dāng)羽毛球在兩個(gè)球拍作用下來回遠(yuǎn)近高低地運(yùn)動(dòng),顯示出反彈以及做力的效果。U3D利用組件對(duì)開發(fā)對(duì)象進(jìn)行渲染,添加對(duì)象的聲音,光線便可帶給我們很逼真的視覺效果;然后根據(jù)物理特性添加剛體,碰撞器等組件,可以模擬實(shí)現(xiàn)對(duì)象受到重力等物理現(xiàn)象的影響。Unity常用生命周期的函數(shù)Unity3D游戲引擎不像常規(guī)的程序直接在Main函數(shù)入口運(yùn)行,而是在內(nèi)部實(shí)現(xiàn)了自己的生命周期事件。通過對(duì)這些生命周期的事件進(jìn)行寫入,Unity內(nèi)部就會(huì)不斷地迭代這些生命周期函數(shù)。Unity3D的腳本基本上都會(huì)繼承自于MonoBehavior基類。一般不繼承于MonoBehavior的類會(huì)用來寫一些工具類。通常來說,除非你自己手動(dòng)GC釋放內(nèi)存,否則它都會(huì)存在于在整個(gè)程序運(yùn)行過程。下面介紹一下游戲中Unity比較常用的生命周期函數(shù)。Reset()函數(shù):這個(gè)函數(shù)經(jīng)常被用來給組件設(shè)置為給定默認(rèn)值,通常在用戶點(diǎn)擊Reset按鈕時(shí)被調(diào)用或者是在初次掛載組件時(shí)被調(diào)用。Awake()函數(shù):主要被用于初始化游戲狀態(tài)或變量。無論該對(duì)象是否已被激活,Awake()函數(shù)都會(huì)在游戲?qū)ο蟊怀跏蓟瘯r(shí)調(diào)用。Start()函數(shù):與前面提到的Awake()函數(shù)一樣,它在腳本中只會(huì)調(diào)用一次,一般會(huì)在第一次調(diào)用Update方法這一幀之前調(diào)用這個(gè)函數(shù)。Update()函數(shù):即游戲中的幀事件,因?yàn)橛螒虼蟛糠侄际前磶蕘韴?zhí)行邏輯的。在實(shí)際操作時(shí)我們會(huì)了解到這個(gè)函數(shù)是實(shí)現(xiàn)任何類型的游戲腳本時(shí)最常用的功能,但是這并不意味著每個(gè)MonoBehaviour腳本都會(huì)需要用到它。OnDisable()函數(shù):當(dāng)游戲?qū)ο鬄榉羌せ顮顟B(tài)或者對(duì)象是不可用的時(shí)候就會(huì)被調(diào)用,對(duì)象被銷毀時(shí)我們也可以調(diào)用它,它可以用于清理代碼。OnDestroy():這個(gè)函數(shù)會(huì)在游戲?qū)ο蟊讳N毀的時(shí)候執(zhí)行,場(chǎng)景或游戲結(jié)束時(shí)也會(huì)調(diào)用。除此之外,關(guān)閉場(chǎng)景并加載新場(chǎng)景也會(huì)調(diào)用這個(gè)函數(shù)。也就是說這個(gè)函數(shù)進(jìn)行調(diào)用的時(shí)候,對(duì)象往往都是曾經(jīng)處于活動(dòng)狀態(tài)的。GUI(圖形用戶界面)U3D中的UI分為OnGUI、NGUI、UGUI等,關(guān)于GUI的內(nèi)容,我們可供挖掘和學(xué)習(xí)的內(nèi)容非常多。在游玩游戲時(shí),我們其實(shí)就會(huì)感受到不同類型的UI控件,比如按鈕、圖片、文本等這些控件,這就是不同類型的UI的體現(xiàn)。由此可見,玩家在游玩游戲的時(shí)候,最開始會(huì)接觸到的很明顯就是游戲的GUI了。Unity的GUI也就是UnityGUI,具有功能完整、種類繁多的界面元素等特點(diǎn)。只要通過在GUI控件的創(chuàng)建操作,就可以同時(shí)包括實(shí)例化,定位和功能定義。3DsMax軟件3Dsmax是游戲開發(fā)中最常用建模工具之一,它是discreet公司開發(fā)的一款基于PC操作系統(tǒng)的三維動(dòng)畫渲染和三維對(duì)象制作軟件。一開始使用者會(huì)將它來制作于電腦游戲中的動(dòng)畫,然而在后續(xù)的漸漸發(fā)展中進(jìn)一步用于參與制造影視片中的一些特效創(chuàng)作。本游戲中的模型不使用3DsMax來建模,因?yàn)闀?huì)花費(fèi)大量時(shí)間和精力,本項(xiàng)目會(huì)直接采用Unity商店中已建好的模型。為了在導(dǎo)入外部的模型時(shí)避免出錯(cuò),還是要下載該軟件,有些模型格式仍需要使用到該軟件內(nèi)部的執(zhí)行代碼。C#語言C#是一種與Java類似的面向?qū)ο蟮母呒?jí)程序設(shè)計(jì)語言,是一種工具,運(yùn)行于.NETFramework之上。Unity是跨平臺(tái)的,但C#并不是一種跨平臺(tái)的語言,之所以Unity能夠使用C#來開發(fā)是因?yàn)镸ono的重新實(shí)現(xiàn),因此,我們可以在Unity上使用C#編寫代碼。語法明了,類庫(kù)使用方便,是C#的優(yōu)點(diǎn),也是我們?cè)赨nity開發(fā)中首先考慮C#的原因的語言。VisualStudio2017VisualStudio是一套常用于構(gòu)建應(yīng)用程序的軟件開發(fā)工具。因?yàn)閁nity是使用自帶的C#編譯器編譯腳本,而VisualStudio有自己的C#編譯器,所以我們能夠使用它來檢查C#腳本是不是存在錯(cuò)誤。這使得我們?cè)谟螒蛟O(shè)計(jì)中使用VisualStudio編譯器會(huì)顯得更加便利,這樣我們就沒有必要一直切回到Unity查看是不是存在問題或者是腳本錯(cuò)誤了。
總體設(shè)計(jì)游戲設(shè)計(jì)階段在游戲初步開始的時(shí)候需要對(duì)游戲大綱進(jìn)行構(gòu)思,第一步就是游戲本身的設(shè)計(jì),這個(gè)游戲的主要內(nèi)容是地震逃生及自救的內(nèi)容,那么我們?cè)O(shè)計(jì)游戲的時(shí)候就要在這個(gè)方面,以及有關(guān)這個(gè)方面的游戲場(chǎng)景選擇下進(jìn)行斟酌考量。設(shè)計(jì)選擇按照“能跑則跑,跑不了找掩護(hù)”的順序進(jìn)行設(shè)計(jì)。地震逃生或自救設(shè)計(jì)地震中尋求逃生的主人公用鍵盤的WASD控制前后左右的行走,根據(jù)不同的場(chǎng)景,運(yùn)用基本常識(shí)對(duì)場(chǎng)景進(jìn)行判斷是否能夠短時(shí)間逃出,若不能則需要通過與場(chǎng)景進(jìn)行交互進(jìn)行自救?;A(chǔ)的判斷和走向如圖3-1所示。在第一關(guān)的設(shè)計(jì)中,會(huì)主要突出災(zāi)前玩家需要對(duì)場(chǎng)地進(jìn)行判斷和安全逃生方式的選擇。第二關(guān)的設(shè)計(jì)會(huì)突出玩家在無法逃出情況下,選擇合適的遮蔽物作為自救方式。圖3-1游戲基礎(chǔ)走向流程設(shè)計(jì)場(chǎng)景選擇和場(chǎng)景特色場(chǎng)景一:在普通平房,逃出的生存率比尋找遮蔽物躲藏要高,選擇留下尋找遮蔽物有可能會(huì)因?yàn)檎也坏秸诒挝锉宦裨诮ㄖ锵?。圖3-2場(chǎng)景一流程設(shè)計(jì)場(chǎng)景二:模擬學(xué)校場(chǎng)景,區(qū)別于場(chǎng)景一的逃生方式,選擇二樓。二樓逃出生存率不如一樓的高,選擇逃出大幾率會(huì)因?yàn)闃菍咏Y(jié)構(gòu)問題,樓梯的不穩(wěn)定和墻體的不穩(wěn)定受傷出血,在災(zāi)時(shí)失血過多死亡。選擇留下,選擇合適的遮蔽物進(jìn)行躲藏支撐,不恰當(dāng)?shù)恼诒挝飫t會(huì)導(dǎo)致受傷甚至死亡。玩家通過選擇合適的遮蔽物進(jìn)行點(diǎn)擊交互得以自救。圖3-3場(chǎng)景二流程設(shè)計(jì)游戲制作階段制作階段最重要的就是地震的模擬帶來的真實(shí)感。模擬地震既是模擬地震時(shí)的逃生及自救,我們?cè)谟螒蛟O(shè)計(jì)中就需要有一些體現(xiàn),我們可以通過添加一些對(duì)應(yīng)的設(shè)計(jì)來體現(xiàn)。比如,在地震時(shí)添加游戲人物的表情動(dòng)作變化;又或者,地震時(shí)的晃動(dòng)的體現(xiàn)形式。參考網(wǎng)上的一些資料,大部分涉及模擬震動(dòng)游戲的設(shè)計(jì)都是通過掛載代碼或者插件來實(shí)現(xiàn)。但是這種掛載插件的做法影響后續(xù)的設(shè)計(jì),也不方便我對(duì)后續(xù)場(chǎng)景的交互設(shè)計(jì)。所以最后決定通過對(duì)相機(jī)進(jìn)行旋轉(zhuǎn)來做動(dòng)畫設(shè)計(jì)去進(jìn)行設(shè)計(jì)實(shí)現(xiàn)。設(shè)置用來模擬地震的動(dòng)畫片段,設(shè)計(jì)相機(jī)的動(dòng)畫可以用相機(jī)的震動(dòng)動(dòng)畫來模擬地震的晃動(dòng),利用動(dòng)畫來設(shè)計(jì)地震晃動(dòng)在這里也會(huì)更加方便快捷。場(chǎng)景跳轉(zhuǎn)游戲開始前的菜單設(shè)計(jì),進(jìn)行兩個(gè)場(chǎng)景的選擇,選擇后可進(jìn)行場(chǎng)景跳轉(zhuǎn)。除了菜單選擇可進(jìn)行場(chǎng)景跳轉(zhuǎn),還有第一關(guān)結(jié)束后可選擇回到重新開始第一關(guān)或繼續(xù)到第二關(guān)。具體的跳轉(zhuǎn)結(jié)構(gòu)設(shè)計(jì)如圖3-4所示。圖3-4跳轉(zhuǎn)設(shè)計(jì)結(jié)構(gòu)界面除了設(shè)計(jì)UI,我們還要需要給重玩按鈕和菜單按鈕添加點(diǎn)擊事件來完成設(shè)計(jì)。游戲完成階段游戲完成時(shí),需要檢查除游戲內(nèi)容外最重要的菜單和結(jié)果頁(yè)面。菜單菜單設(shè)計(jì)是關(guān)卡類型游戲的必要設(shè)計(jì),通常出現(xiàn)在游戲的開始界面,玩家通過菜單選擇這個(gè)游戲的關(guān)卡。設(shè)計(jì)菜單最重要的就是關(guān)卡選擇,當(dāng)然,這是在出現(xiàn)菜單前已經(jīng)出現(xiàn)游戲名的前提下。設(shè)計(jì)菜單的目的是在游戲開始前讓玩家對(duì)于總共會(huì)出現(xiàn)的關(guān)卡數(shù)量有個(gè)心理準(zhǔn)備,所以通常我們?cè)谠O(shè)計(jì)游戲的時(shí)候,除了實(shí)際已經(jīng)完成的關(guān)卡,也會(huì)在比較顯眼的位置加上“后續(xù)關(guān)卡盡請(qǐng)期待”之類的話以謀求后續(xù)發(fā)展。菜單設(shè)計(jì)要做到簡(jiǎn)潔和清晰。沒有解鎖后才能游玩的要求的關(guān)卡要注意在菜單處就可以選擇,如果有設(shè)定某個(gè)關(guān)卡是需要解鎖特定情況才能游玩的,要注意菜單上的設(shè)計(jì),要和設(shè)計(jì)相對(duì)應(yīng)。本畢業(yè)設(shè)計(jì)的菜單的大致跳轉(zhuǎn)設(shè)計(jì)如圖3-5所示。圖3-5菜單跳轉(zhuǎn)結(jié)構(gòu)設(shè)計(jì)勝利或失敗頁(yè)面關(guān)卡的勝利頁(yè)面相對(duì)比較簡(jiǎn)單。失敗頁(yè)面的跳轉(zhuǎn)根據(jù)關(guān)卡不同也會(huì)有所不同。第一關(guān)相對(duì)簡(jiǎn)單,是一個(gè)新手關(guān)卡,失敗只能選擇重新開始,不能解鎖第二關(guān),是單項(xiàng)選擇。第二關(guān)較第一關(guān)的設(shè)計(jì)會(huì)更復(fù)雜一點(diǎn),所以第二關(guān)失敗后,玩家除了可以選擇重新游玩第二關(guān),也可以回到菜單頁(yè)面選擇第一關(guān)。圖3-6菜單跳轉(zhuǎn)結(jié)構(gòu)設(shè)計(jì)玩法說明介紹和目標(biāo)地震中尋求逃生的主人公用鍵盤的WASD控制前后左右的行走,根據(jù)不同的場(chǎng)景,運(yùn)用基本常識(shí)對(duì)場(chǎng)景進(jìn)行判斷是否能夠短時(shí)間逃出。若不能,則需要通過與場(chǎng)景進(jìn)行交互進(jìn)行自救。游戲特色首先,不同于枯燥死板的文字?jǐn)⑹?,?xiàng)目旨在讓玩家游玩時(shí)感受關(guān)于地震中的不可控和一些逃生細(xì)節(jié),在細(xì)節(jié)的體驗(yàn)中發(fā)掘在地震中逃生的關(guān)鍵。其次,在游戲關(guān)卡的設(shè)計(jì)上會(huì)在難度上呈遞進(jìn)狀態(tài),但無論是什么場(chǎng)景或者是難度設(shè)計(jì),逃生訣竅只圍繞一個(gè)中心,就是在災(zāi)時(shí)逃生的關(guān)鍵。這個(gè)游戲項(xiàng)目重在災(zāi)時(shí)逃生和場(chǎng)景交互的部分,讓玩家體會(huì)不同選擇下導(dǎo)致的結(jié)果也會(huì)不同,采取時(shí)間限制會(huì)使得游戲游玩更為刺激,更有迫切感。游戲的實(shí)現(xiàn)與結(jié)果在左下角的導(dǎo)出模式中可選PC,Android,ios等不同平臺(tái)的模式。選擇好導(dǎo)出模式之后,點(diǎn)擊Build就可以完成打包導(dǎo)出了,最后就會(huì)生成一個(gè)exe可執(zhí)行文件和一個(gè)Data數(shù)據(jù)文件夾就完成了,也就完成游戲的打包導(dǎo)出了。
游戲設(shè)計(jì)場(chǎng)景設(shè)計(jì)系統(tǒng)包括場(chǎng)景1和場(chǎng)景2。場(chǎng)景1為游戲的新手場(chǎng)景,即玩家對(duì)游戲操作和流程進(jìn)行適應(yīng)的場(chǎng)景。玩家通過區(qū)分三個(gè)不同場(chǎng)景的特性決定是否逃離或者自救方式。場(chǎng)景2是基于基礎(chǔ)操作上添加了場(chǎng)景道具交互的體驗(yàn)和區(qū)別。場(chǎng)景1:普通平房場(chǎng)景,玩家用于適應(yīng)wasd的運(yùn)動(dòng)方式和感受游戲的設(shè)計(jì)風(fēng)格;場(chǎng)景2:學(xué)校場(chǎng)景,玩家通過與場(chǎng)景道具的交互感受在這個(gè)場(chǎng)景下的自救方式。場(chǎng)景的導(dǎo)入U(xiǎn)nity中自帶的地形系統(tǒng)其實(shí)就能很好地創(chuàng)建自己想要的地形場(chǎng)景,在Hierarchy面板中的Create--3DObject--Terrain便可以創(chuàng)建一個(gè)平面進(jìn)行設(shè)計(jì)。但在這次的項(xiàng)目中,我還是選擇了直接導(dǎo)入合適的場(chǎng)景進(jìn)行游戲設(shè)計(jì)。無論是第一關(guān)還是第二關(guān)的場(chǎng)景,都是同一個(gè),但是會(huì)通過選擇不同特色的位置來區(qū)別兩個(gè)關(guān)卡的特色。大致場(chǎng)景如圖4-1所示。圖4-1人物及場(chǎng)景外部選擇這個(gè)場(chǎng)景,是因?yàn)樗亩嘣?,一樓?nèi)部的設(shè)計(jì)適合進(jìn)行第一關(guān)的基礎(chǔ)逃生設(shè)計(jì),讓玩家先行適應(yīng)操作。場(chǎng)景內(nèi)部一開始是比較空曠的狀態(tài),為了游戲場(chǎng)景的合理性,我在里邊添加了一定數(shù)量的桌椅,如圖4-2所示。圖4-2添加了游戲物體的第一關(guān)內(nèi)部場(chǎng)景第二關(guān)的設(shè)計(jì)區(qū)別于第一關(guān),難度有所遞進(jìn),所以我選擇了二樓作為第二關(guān)的場(chǎng)景。圖4-3場(chǎng)景二外部第二關(guān)的場(chǎng)景設(shè)計(jì)背景是校園逃生,主要在于場(chǎng)景物件的交互,所以相較于第一關(guān)的場(chǎng)景,內(nèi)部物體會(huì)比較多,如圖4-4所示。圖4-4場(chǎng)景二內(nèi)部角色設(shè)計(jì)創(chuàng)建游戲物體人物并導(dǎo)入游戲項(xiàng)目中,實(shí)現(xiàn)人物的運(yùn)動(dòng)。導(dǎo)入模型首先要將玩家所控制的對(duì)象設(shè)計(jì)出來,也就是主角對(duì)象,對(duì)應(yīng)的模型我已經(jīng)在項(xiàng)目的設(shè)計(jì)前期下載好,但是因?yàn)閁3D支持的是.fbx模型,而我所下載的素材不是,所以首先需要將人物素材導(dǎo)入3DsMAX進(jìn)行轉(zhuǎn)格式導(dǎo)出為.fbx格式,再進(jìn)行導(dǎo)入到U3D中使用了。最后直接將模型拖入Project面板即完成導(dǎo)入,如圖4-5所示。圖4-5人物模型人物運(yùn)動(dòng)的實(shí)現(xiàn)導(dǎo)入后首先調(diào)整好人物的大小,給人物添加上屬性剛體Rigidbody和碰撞體Collider。碰撞體是模擬真實(shí)物體間的碰撞的,使得人物具有真實(shí)物體的物理屬性。圖4-6設(shè)置剛體和碰撞體在Edit中的Preference中將Unity默認(rèn)的腳本編輯器設(shè)置為VS才能來進(jìn)行編譯。然后就可以編寫代碼實(shí)現(xiàn)游戲的邏輯了,給人物添加移動(dòng)腳本,使玩家自如地能夠控制人物的運(yùn)動(dòng)。設(shè)置WSAD鍵分別對(duì)應(yīng)人物的前后左右的移動(dòng)。同時(shí)通過設(shè)置人物的動(dòng)畫狀態(tài),使人物在移動(dòng)的同時(shí)播放走路動(dòng)畫。移動(dòng)使用的方法是transform.Translate(),旋轉(zhuǎn)使用的方法是transform.Rotate()。圖4-7代碼實(shí)現(xiàn)人物動(dòng)畫的切換我們可以利用U3D的Animator狀態(tài)機(jī)系統(tǒng)來完成動(dòng)畫設(shè)計(jì)的切換。首先需要做好各個(gè)人物動(dòng)畫的切換連線以及切換觸發(fā)條件。在項(xiàng)目運(yùn)行時(shí),人物根據(jù)各種觸發(fā)條件(例如時(shí)間、碰撞檢測(cè)等)在各個(gè)動(dòng)畫之間切換播放。圖4-8人物地震時(shí)神態(tài)變化主要的動(dòng)作如圖4-9所示,可以比較清楚的看到與人物相關(guān)的動(dòng)畫的狀態(tài)控制。圖4-9人物動(dòng)畫的狀態(tài)控制器除了人物會(huì)進(jìn)行動(dòng)畫設(shè)計(jì)之外,還有我們?cè)诳傮w設(shè)計(jì)中提到過的模擬地震狀態(tài)的形式也是使用了動(dòng)畫形式來呈現(xiàn)的。具體實(shí)現(xiàn)如圖4-10。圖4-10地震晃動(dòng)的設(shè)計(jì)實(shí)現(xiàn)UI設(shè)計(jì)關(guān)于UI設(shè)計(jì)這部分,這大概是玩家不太在乎,但是我們?cè)陂_發(fā)游戲過程中最為繁瑣卻又不可缺少的一部分了。我們?cè)谶M(jìn)行游戲設(shè)計(jì)的時(shí)候,我們會(huì)知道關(guān)于UI設(shè)計(jì)涉及的方面幾乎是整個(gè)游戲,合理恰當(dāng)對(duì)UI進(jìn)行不同的處理會(huì)帶來不同的感受。在UI設(shè)計(jì)的方面,在游戲中有多種呈現(xiàn),比如我們?cè)诮巧缪蓊愋陀螒蛑袆∏橄虻脑O(shè)計(jì)中比較常見的文字?jǐn)⑹觯c其它部分的連接和跳轉(zhuǎn)比較少,如圖4-11。圖4-11文字彈窗但是在這個(gè)游戲中,我們還是比較多會(huì)接觸到例如圖4-12這種跳轉(zhuǎn)較多,與其他部分連接性也比較強(qiáng)的UI設(shè)計(jì)。圖4-12逃出或留下在第二關(guān)的設(shè)計(jì)中,就不僅是這種彈窗形式的UI設(shè)計(jì),它會(huì)有UI觸發(fā)人物動(dòng)畫動(dòng)作的設(shè)計(jì),玩家能感受到關(guān)于UI的另一種呈現(xiàn)方式。第三人稱相機(jī)的跟隨在人物設(shè)計(jì)中比較重要的點(diǎn)還有一個(gè)第三人稱相機(jī)的跟隨。這是第三人稱角度看向?qū)ο蟮模簿褪且恢笨聪驅(qū)ο蟮谋巢?,就像跟在一個(gè)人身后行走一樣。攝像機(jī)通過初始化和主角人物的距離及角度差值,實(shí)時(shí)跟隨主角移動(dòng)及旋轉(zhuǎn)到合適的拍攝角度。這樣子,人物在走動(dòng)的時(shí)候,攝像機(jī)就會(huì)隨著人物的移動(dòng)進(jìn)行移動(dòng)。具體的代碼實(shí)現(xiàn)如圖4-13所示。圖4-13第三人稱相機(jī)跟隨劇情設(shè)計(jì)在一般的角色扮演游戲中都會(huì)有一定的劇情和劇情走向,但是在這個(gè)項(xiàng)目中,為了比較順暢的游戲設(shè)計(jì),我將自己代入去體驗(yàn)開發(fā)這個(gè)游戲。第一關(guān):走入平房,環(huán)視周圍,可以看到房子內(nèi)擺件較少,安全出口也比較近,一目了然的狀況。突然發(fā)生地震,在逃出去和留下來當(dāng)中進(jìn)行選擇。如果選擇逃出去,在地震初期迅速離開還能順利逃生,游戲成功;如果選擇留下來,場(chǎng)景擺件都不足以用來躲藏遮蔽,人物會(huì)因此喪生,游戲失敗。圖4-14游戲失敗第二關(guān):走入學(xué)校二樓的教室,可以看到玻璃窗,黑板,還有一排排一列列的桌椅,通往安全出口的路比較多阻礙,樓梯也具有倒塌的可能,選擇逃出去會(huì)有時(shí)間上的不利;如果選擇留下來可以尋求自救的方式給自己爭(zhēng)取被救出的機(jī)會(huì)。選擇遮蔽物的時(shí)候,選擇離靠窗靠門較近的桌子進(jìn)行躲藏可以在余震來臨前爭(zhēng)取順利離開的機(jī)會(huì),選擇較里面的位置不利于自救,出現(xiàn)被埋的情況也會(huì)大大增加。添加背景音樂及游戲音效添加背景音樂可以通過添加AudioSource組件來給游戲添加背景音樂和游戲音效。
游戲測(cè)試測(cè)試的目的和意義在游戲成型之前,我們需要實(shí)現(xiàn)游戲的設(shè)計(jì),但是實(shí)現(xiàn)之后,效果的把控和一些設(shè)計(jì)的合理性,都需要通過一次又一次的測(cè)試來慢慢調(diào)整進(jìn)行一次又一次的完善和整改。我們通過對(duì)游戲細(xì)節(jié)的測(cè)試來重新修改設(shè)定以及代碼,直到最后幾次的調(diào)試中不會(huì)再出現(xiàn)無法運(yùn)行的或者其他的問題,一個(gè)游戲的測(cè)試才算是比較完整的完成了,這個(gè)游戲才能發(fā)布出去。游戲測(cè)試我們通常會(huì)分成游戲時(shí)的性能測(cè)試和游戲的功能測(cè)試。性能測(cè)試需要我們提前預(yù)想當(dāng)前游戲中可能會(huì)出現(xiàn)的性能風(fēng)險(xiǎn)和缺陷,從而對(duì)項(xiàng)目進(jìn)行整改,使得游戲本身可適用于不同的設(shè)備上。功能測(cè)試一般是我們對(duì)游戲中會(huì)出現(xiàn)的游戲行為進(jìn)行重現(xiàn),確保游戲行為可行,不會(huì)出現(xiàn)角色控制描述與實(shí)際情況不符合的狀況,這是用來發(fā)現(xiàn)游戲本身功能可行性的主要方式。在本設(shè)計(jì)的測(cè)試中,我會(huì)多分出一個(gè)小節(jié)對(duì)游戲的界面進(jìn)行測(cè)試,因?yàn)樵诒驹O(shè)計(jì)中,游戲的界面相比于其他功能較多,需要進(jìn)行更為詳細(xì)的測(cè)試。界面測(cè)試我們?cè)谇懊娴年P(guān)于UI設(shè)計(jì)的部分中曾經(jīng)反復(fù)強(qiáng)調(diào)過UI設(shè)計(jì)對(duì)于游戲設(shè)計(jì)者的不可缺少性和繁瑣程度,在完成一款游戲過后,我們也應(yīng)當(dāng)對(duì)游戲最基礎(chǔ)的UI設(shè)計(jì)進(jìn)行測(cè)試。通過UI設(shè)計(jì)的窗口和按鈕進(jìn)行界面之間的跳轉(zhuǎn)從而達(dá)到流暢地在每個(gè)界面之間進(jìn)行切換是界面設(shè)計(jì)中UI設(shè)計(jì)最大地意義,本設(shè)計(jì)關(guān)于界面測(cè)試的具體測(cè)試情況如表5-1所示。表5-1界面測(cè)試界面具體操作結(jié)果是否可行開始界面點(diǎn)擊第一關(guān)跳轉(zhuǎn)到第一關(guān)的游戲場(chǎng)景可行開始界面點(diǎn)擊第二關(guān)跳轉(zhuǎn)到第二關(guān)的游戲場(chǎng)景可行劇情界面點(diǎn)擊按鈕通過當(dāng)前劇情,繼續(xù)劇情可行選擇界面點(diǎn)擊逃出去(第一關(guān))控制人物限時(shí)離開場(chǎng)景,成功逃出可行選擇界面點(diǎn)擊留下來(第一關(guān))控制人物尋找遮蔽物,游戲失敗可行成功界面點(diǎn)擊繼續(xù)下一關(guān)(第一關(guān))跳轉(zhuǎn)到第二關(guān)繼續(xù)游戲可行成功界面點(diǎn)擊回到菜單跳轉(zhuǎn)到開始界面可行失敗界面點(diǎn)擊重新開始跳轉(zhuǎn)到當(dāng)前關(guān)卡重新開始可行失敗界面點(diǎn)擊回到菜單跳轉(zhuǎn)到開始界面可行功能測(cè)試雙擊打開游戲,在Graphics窗口選擇游戲的分辨率,在Input窗口中調(diào)整游戲的按鍵。接下來單擊Play按鈕,游戲就開始運(yùn)行了。經(jīng)過多次測(cè)試之后,主要功能的功能測(cè)試結(jié)果如表5-2:表5-2主要的功能測(cè)試功能具體操作結(jié)果是否可行角色控制使用WASD進(jìn)行控制通過使用WASD控制人物行走流暢可行人物運(yùn)動(dòng)與場(chǎng)景物件進(jìn)行碰撞人物在場(chǎng)景中走動(dòng),與物件碰撞不會(huì)出現(xiàn)穿模情況可行任務(wù)運(yùn)動(dòng)在場(chǎng)景中行走人物可以在在場(chǎng)景中正常走動(dòng),不會(huì)出現(xiàn)地形穿模情況可行動(dòng)畫設(shè)計(jì)地震時(shí)人物表情變化在指定位置出現(xiàn)人物表情的變化可行動(dòng)畫設(shè)計(jì)地震在指定位置出現(xiàn)模擬地震的動(dòng)畫可行動(dòng)畫設(shè)計(jì)點(diǎn)擊與場(chǎng)景交互的UI后出現(xiàn)人物動(dòng)作點(diǎn)擊相應(yīng)UI窗口后,人物播放相應(yīng)動(dòng)作可行性能測(cè)試測(cè)試設(shè)備數(shù)據(jù)處理器:Intel(R)Core(TM)i7-6700HQCPU@2.60GHz獨(dú)立顯卡:NVIDIAGeForceGTX960M運(yùn)行內(nèi)存RAM:8.0GB系統(tǒng):Windows10,64位操作系統(tǒng)測(cè)試內(nèi)容關(guān)閉其他軟件單獨(dú)運(yùn)行游戲,觀察電腦的變化,得到的性能測(cè)試結(jié)果如表5-3:表5-3基礎(chǔ)性能測(cè)試表CPU使用最高83%,最低36%,多次平均值為52%運(yùn)行內(nèi)存使用5.80GB溫度變化未超出正常范圍經(jīng)過測(cè)試,鼠標(biāo)可以正常與屏幕進(jìn)行交互,點(diǎn)擊UI設(shè)計(jì)進(jìn)行選擇很順利,使用鍵盤上的WASD進(jìn)行走動(dòng)的時(shí)候速度與方向正常運(yùn)行沒有問題,人物地震時(shí)的表情設(shè)計(jì)和與場(chǎng)景交互的動(dòng)作設(shè)計(jì)也都實(shí)現(xiàn)了,在點(diǎn)擊的時(shí)候會(huì)順利觸發(fā)動(dòng)畫動(dòng)作,游戲失敗和勝利都正常跳出游戲結(jié)束UI界面。在游戲多次的功能測(cè)試和性能測(cè)試中,電腦未出現(xiàn)閃退,藍(lán)屏,卡退等問題,游戲中的功能設(shè)計(jì)使用也無異常。
總結(jié)與展望總結(jié)一個(gè)基于Unity3D的虛擬地震預(yù)防相關(guān)應(yīng)對(duì)措施游戲的設(shè)計(jì)與實(shí)現(xiàn)的完成,同時(shí)也標(biāo)志著我畢業(yè)設(shè)計(jì)的工作也就要結(jié)束了。在此次游戲的設(shè)計(jì)制作過程中,我學(xué)到了很多,鞏固了之前課程中學(xué)到的知識(shí),同時(shí)也發(fā)現(xiàn)了自身在技術(shù)上和設(shè)計(jì)上的一些問題,這使我對(duì)今后的游戲設(shè)計(jì)也會(huì)懷有更嚴(yán)謹(jǐn)更謙虛的態(tài)度。在畢業(yè)設(shè)計(jì)開始之前,我大致重溫了課堂學(xué)習(xí)的內(nèi)容并了解了簡(jiǎn)單的游戲項(xiàng)目開發(fā)細(xì)節(jié),但是由于在邏輯實(shí)現(xiàn)和動(dòng)畫設(shè)計(jì)這兩個(gè)方面的學(xué)習(xí)不夠深入,所以在動(dòng)手制作游戲過程中,經(jīng)常在這兩個(gè)方面上僵住了進(jìn)度,也因此被耽誤了不少時(shí)間。例如關(guān)于第一關(guān)的相機(jī)跟隨和地震模擬實(shí)現(xiàn)上,就因?yàn)槲冶旧淼膶W(xué)習(xí)不夠深入,導(dǎo)致在制作過
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度建筑工程合同法綠色施工合同范本
- 2025年LH3-6cd過濾裝置項(xiàng)目可行性研究報(bào)告
- 2025年載物臺(tái)行業(yè)深度研究分析報(bào)告
- 閱文集團(tuán)合同種類
- 原柴料回款合同最簡(jiǎn)單三個(gè)步驟
- 樂器制造借款居間合同樣本
- 機(jī)械設(shè)備海外運(yùn)輸承運(yùn)合同
- 光伏發(fā)電設(shè)備運(yùn)輸合作合同
- 2025年度洗煤廠煤加工環(huán)保達(dá)標(biāo)服務(wù)合同
- 二零二五年度多功能廠房租賃合同書
- 西安經(jīng)濟(jì)技術(shù)開發(fā)區(qū)管委會(huì)招聘筆試真題2024
- 2025屆浙江省高三歷史選考總復(fù)習(xí)模擬測(cè)試(八)歷史試題(含答案)
- 【市質(zhì)檢】泉州市2025屆高中畢業(yè)班質(zhì)量監(jiān)測(cè)(二) 生物試卷(含答案解析)
- 六年級(jí)2025寒假特色作業(yè)
- 2025年江蘇轄區(qū)農(nóng)村商業(yè)銀行招聘筆試參考題庫(kù)含答案解析
- 人教版六年級(jí)數(shù)學(xué)下冊(cè)完整版教案及反思
- 少兒財(cái)商教育講座課件
- (八省聯(lián)考)云南省2025年普通高校招生適應(yīng)性測(cè)試 物理試卷(含答案解析)
- 2025藥劑科工作人員工作計(jì)劃
- 春節(jié)節(jié)后安全教育培訓(xùn)
- 2025年新高考數(shù)學(xué)一輪復(fù)習(xí)第5章重難點(diǎn)突破02向量中的隱圓問題(五大題型)(學(xué)生版+解析)
評(píng)論
0/150
提交評(píng)論