![基于unity3D的求生游戲的設(shè)計(jì)與實(shí)現(xiàn)_第1頁](http://file4.renrendoc.com/view/4362c654f1bf46581f56858f91e3534c/4362c654f1bf46581f56858f91e3534c1.gif)
![基于unity3D的求生游戲的設(shè)計(jì)與實(shí)現(xiàn)_第2頁](http://file4.renrendoc.com/view/4362c654f1bf46581f56858f91e3534c/4362c654f1bf46581f56858f91e3534c2.gif)
![基于unity3D的求生游戲的設(shè)計(jì)與實(shí)現(xiàn)_第3頁](http://file4.renrendoc.com/view/4362c654f1bf46581f56858f91e3534c/4362c654f1bf46581f56858f91e3534c3.gif)
![基于unity3D的求生游戲的設(shè)計(jì)與實(shí)現(xiàn)_第4頁](http://file4.renrendoc.com/view/4362c654f1bf46581f56858f91e3534c/4362c654f1bf46581f56858f91e3534c4.gif)
![基于unity3D的求生游戲的設(shè)計(jì)與實(shí)現(xiàn)_第5頁](http://file4.renrendoc.com/view/4362c654f1bf46581f56858f91e3534c/4362c654f1bf46581f56858f91e3534c5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
基于Unity3D的求生游戲的設(shè)計(jì)與實(shí)現(xiàn)DesignandimplementationofanSurvivalGamebasedonUnity3D內(nèi)容摘要 隨著生活水平的不斷提高,科技發(fā)展速度迅猛,人們除了對生活品質(zhì)有所追求外,對游戲娛樂等精神層面的品質(zhì)也開始有所追求,有關(guān)游戲的各種信息量也成倍增長,龐大的游戲玩家群會對游戲的種類體驗(yàn)要求越來越多,想要玩到更多的新穎的游戲。因此開發(fā)一款模擬求生類游戲?qū)τ螒蛲婕襾碚f進(jìn)行不僅是一種全新的體驗(yàn),而且還能從游戲中獲取一些求生的知識,通過求生游戲,體驗(yàn)到游戲新穎刺激玩法的同時(shí)從而達(dá)到足不出戶也能學(xué)到求生生存知識。本課題使用Unity3D引擎設(shè)計(jì)了一款生存類題材的游戲。本人的主要工作有以下幾個(gè)方面。首選,分析了熱門流行的生存類題材游戲的內(nèi)容和玩法,設(shè)計(jì)了一款生存類游戲的需求。然后在需求分析的基礎(chǔ)上,使用Unity3D引擎實(shí)現(xiàn)了游戲場景的搭建、導(dǎo)入游戲?qū)ο螅O(shè)置游戲?qū)ο蟮膭?dòng)畫和實(shí)現(xiàn)掛載游戲?qū)ο蟮哪_本。最終實(shí)現(xiàn)了需求確定的功能,并完成了游戲的測試。關(guān)鍵詞:Unity3D生存類游戲游戲交互AbstractWiththecontinuousimprovementoflivingstandards,thedevelopmentofscienceandtechnologyrapidly,inadditiontopursuitforthequalityoflife,peopleonthegameentertainmentalsobegantopursuespiritualquality,allkindsofinformationaboutthegamesalsohavemultiplied,largegroupofgamerswilldemandmoreandmorekindsofgameexperience,wanttomorenewgamestoplay.Therefore,thedevelopmentofasimulatedsurvivalgameisnotonlyanewexperienceforthegameplayers,butalsotoobtainsomeknowledgeofsurvivalfromthegame,throughthesurvivalgame,experiencethegamenovelandexcitinggameplaysothattheycannotleavehomeatthesametimetolearnsurvivalknowledge.ThissubjectusestheUnity3Denginetodesignasurvivalthemegame.ThissubjectusestheUnity3Denginetodesignasurvivalthemegame.
Mymainworkhasthefollowingaspects.First,analyzethecontentandgameplayofthepopularsurvivalgames,anddesigntheneedsofasurvivalgame.Thenbasedontherequirementsanalysis,theUnity3Denginewasusedtobuildthegamescene,importthegameobjects,settheanimationofthegameobjects,andimplementthescripttomountthegameobjects.Finally,thefunctionofdeterminingtherequirementswasrealized,andthetestofthegamewascompleted.Keywords:Unity3Dsurvivalgamegameinteraction廣東東軟學(xué)院本科生畢業(yè)設(shè)計(jì)(論文)目錄TOC\o"1-3"\h\u27786基于Unity3D的求生游戲的設(shè)計(jì)與實(shí)現(xiàn) 17700第一章緒論 354981.1課題的研究背景 316401.2課題的研究意義 4319151.3國內(nèi)外發(fā)展現(xiàn)狀 549701.4論文的組織結(jié)構(gòu) 69350第二章Unity3D引擎技術(shù) 6274802.1Unity3D編輯器介紹 6312002.2Unity3D引擎的功能 7289232.2.1Unity地形編輯器功能 71302.2.2Unity3D引擎中的物理引擎系統(tǒng) 873172.2.3Unity3D引擎中的腳本系統(tǒng) 8114802.2.4Unity3D引擎中的動(dòng)畫系統(tǒng) 8167122.3Unity3D游戲開發(fā)流程 1072292.4Unity游戲開發(fā)中的常見設(shè)計(jì)模式 11191372.4.1單例模式 12103632.4.2事件模式 1274662.4.3MVC模式 12308392.5本章小結(jié) 1320908第三章游戲需求分析與設(shè)計(jì) 13325543.1游戲需求分析 1371803.1.1游戲故事背景介紹 1390313.1.2游戲場景需求分析 13189823.1.3主角技能需求分析 14238803.1.4游戲背包系統(tǒng) 1452063.2游戲開發(fā)過程 14181063.3游戲的架構(gòu)設(shè)計(jì) 14281773.4本章小結(jié) 1511513第四章游戲系統(tǒng)的實(shí)現(xiàn) 15164284.1游戲控制模塊 1527494.2玩家角色控制模塊實(shí)現(xiàn) 156984.3攝像機(jī)模塊的實(shí)現(xiàn) 16100254.4怪物AI模塊的實(shí)現(xiàn) 1667454.5背包模塊的實(shí)現(xiàn) 18200294.6其它功能的實(shí)現(xiàn) 20157214.6.1游戲小地圖實(shí)現(xiàn) 20301614.6.2游戲場景中日夜交替 2119264.6.3游戲場景中機(jī)關(guān) 2231628第五章游戲測試 23220705.1測試計(jì)劃 23193175.2測試用例 2381125.3測試結(jié)果 2531751第六章結(jié)論 2815647參考文獻(xiàn) 295106致謝 30緒論1.1課題的研究背景隨著生活水平的不斷提高,科技發(fā)展速度迅猛,人們除了對生活品質(zhì)有所追求外,對游戲娛樂等精神層面的品質(zhì)也開始有所追求,有關(guān)游戲的各種信息量也成倍增長,龐大的游戲玩家群會對游戲的種類體驗(yàn)要求越來越多,想要玩到更多的新穎的游戲。游戲與計(jì)算機(jī)硬件平臺和互聯(lián)網(wǎng)的發(fā)展,從最開始的簡陋游戲,慢慢發(fā)展出各種各樣精美的游戲產(chǎn)品,有游戲主機(jī)平臺和臺式機(jī)平臺上接近電影畫面的游戲大作,有即點(diǎn)擊即玩的網(wǎng)頁游戲,有移動(dòng)平臺上各種種類豐富的游戲,還有玩家佩戴特定設(shè)備玩虛擬現(xiàn)實(shí)游戲。中國游戲產(chǎn)業(yè)規(guī)模總體收入達(dá)到3102.3億元,玩家用戶約為5.54億人。游戲產(chǎn)品越來越豐富,人們對游戲產(chǎn)品的要求、審美、娛樂性等各方面的要求越來越高。如果游戲畫面粗糙、游戲玩法單調(diào)或者游戲人物動(dòng)作呆板,游戲趣味性少,這樣的游戲產(chǎn)品很容易被流失玩家,甚至被市場淘汰。2012年,Unity3D游戲引擎開始進(jìn)入中國,因?yàn)閁nity3D引擎對移動(dòng)平臺游戲的廣泛支持,對新興的虛擬現(xiàn)實(shí)設(shè)備的支持,開發(fā)者的學(xué)習(xí)成本較低,引擎使用的授權(quán)費(fèi)低廉,受到資金實(shí)力薄弱的中小游戲公司的普遍歡迎,他們開始廣泛地使用Unity3D引擎來開發(fā)游戲。國內(nèi)大型游戲公司看到第三方的游戲引擎Unity3D開發(fā)出來的游戲效果后也開始紛紛采用Unity3D引擎來開發(fā)游戲。Unity3D引擎的廣泛使用,加速了這項(xiàng)技術(shù)在中國國內(nèi)的普及,中國游戲開發(fā)者成為全世界使用Unity3D引擎最多的國家。Unity3D引擎中國游戲開發(fā)者注冊量、游戲引擎使用活躍度、手機(jī)游戲引擎開發(fā)市場占有率等多項(xiàng)數(shù)據(jù)全球第一。而Unity3D引擎公司總部所在地美國,在使用率等各項(xiàng)數(shù)據(jù)上反而處于第二。游戲按照內(nèi)容來分類,可以分為角色扮演、動(dòng)作角色扮演,模擬角色扮演、第一人稱射擊、即時(shí)戰(zhàn)略、冒險(xiǎn)類、賽車競速類、模擬經(jīng)營類、體育類等。生存游戲,屬于游戲設(shè)計(jì)的一種元素題材,根據(jù)游戲設(shè)計(jì)者的核心玩法不同,可以歸類到不同的分類中去。游戲《絕地求生》,游戲玩法是每一局游戲有100位玩家參與,玩家被飛機(jī)空投到游戲地圖的各個(gè)位置。玩家需要在地圖上尋找武器、物品,與其他位玩家展開搏斗,最終活下來的玩家才能獲得最后的勝利。這款游戲在核心玩法上強(qiáng)調(diào)使用武器射擊,可歸類為第一人稱射擊游戲。游戲《綠色地獄》只將“生存”這一要素設(shè)計(jì)為核心玩法,玩家被扔進(jìn)廣袤又神秘的亞馬遜叢林中,在這個(gè)綠色的地獄里求得生機(jī)。玩家需要通過合作來獲取物品,需要打獵、采集獲得食物,根據(jù)游戲天氣變化適應(yīng)環(huán)境,其中的一些生物可能會攻擊玩家,玩家需要狩獵鳥,魚,蛇等動(dòng)物活下來。這款游戲的核心玩法是體驗(yàn)不同的環(huán)境,攻擊遇到的威脅,生存下來。1.2課題的研究意義求生類游戲如今也越來越多,也是受到了很多人的喜愛,不同類型的求生生存游戲都有共同之處:游戲的模擬性,如果說游戲世界是玩家另一個(gè)世界的話,那么求生生存類游戲就是能最大限度實(shí)現(xiàn)人類活在另一個(gè)世界的愿望,饑餓度等一切都很貼近現(xiàn)實(shí),能更好的從娛樂中獲取知識。不僅如此,求生生存游戲的發(fā)展性、探索性、隨機(jī)性都極大的吸引著玩家,玩家在游戲中可以不斷的獲得成就,就能更有興趣的去探索去研究一些生存的技巧,實(shí)現(xiàn)邊娛樂邊學(xué)習(xí),這樣比普通的生存教學(xué)要有趣也有用很多。此外,使用Unity3D引擎是因?yàn)閁nity3D引擎在游戲開發(fā)市場上第三方授權(quán)的游戲引擎中市場占有率第一名,是很多游戲開發(fā)者首選的游戲引擎。Unity3D引擎特性豐富,功能眾多,開發(fā)出的游戲畫面優(yōu)美,是非常值得學(xué)習(xí)研究使用的游戲引擎。每個(gè)游戲開發(fā)團(tuán)隊(duì)使用Unity3D引擎都有不同的方法。本文研究使用Unity3D引擎開發(fā)生存類游戲,探索游戲開發(fā)的方法,縮短游戲開發(fā)的周期,解決游戲開發(fā)過程中遇到的常見問題,總結(jié)解決問題的方法,對使用Unity3D引擎來開發(fā)游戲有一定的意義。1.3國內(nèi)外發(fā)展現(xiàn)狀國外游戲產(chǎn)業(yè)起步較早,積累的游戲開發(fā)技術(shù)經(jīng)驗(yàn)豐富,游戲產(chǎn)業(yè)十分成熟。國外游戲公司開發(fā)生存題材的游戲時(shí),在游戲引擎的選擇上,使用公司自研的游戲引擎,或者第三方授權(quán)的Unreal引擎、Unity3D引擎,這個(gè)選擇主要取決國外游戲公司實(shí)力和項(xiàng)目要求。Unreal引擎也是國外游戲公司的重要選擇之一,是很多3A級游戲大作的開發(fā)采用的引擎。Unreal引擎畫面效果逼真,程序運(yùn)行效率高,使用它開發(fā)出來的游戲受到很多玩家的贊譽(yù)。但Unreal引擎的授權(quán)費(fèi)十分昂貴,這使得使用的都是屬于大型游戲公司的行為。后來出現(xiàn)的Unity3D引擎打破了這一局面,Unity3D引擎授權(quán)費(fèi)低廉,在保持低授權(quán)費(fèi)的同時(shí),功能和畫面不斷發(fā)展和完善,畫面效果慢慢接近了Unreal引擎,得到了國外中小游戲公司和個(gè)人游戲開發(fā)者的青睞。而一些大型國外游戲公司的部分游戲產(chǎn)品也采用了Unity3D引擎來開發(fā)。生存題材游戲是受到眾多玩家喜愛的游戲,也是眾多游戲公司設(shè)計(jì)游戲時(shí)考慮的重要元素。最初的生存游戲,生存概念設(shè)計(jì)概念不太明確。2009年,瑞典Mojang工作室推出了《我的世界》,這款游戲強(qiáng)調(diào)游戲的趣味性,玩家在三維空間中創(chuàng)造和破壞游戲里的方塊,從而用方塊來創(chuàng)造自己設(shè)計(jì)的建筑物。該游戲沒有華麗的畫面,體現(xiàn)建筑生存的互動(dòng)性。2015年,澳大利亞BeamTeamGames游戲公司發(fā)行了《荒島求生》,游戲的內(nèi)容是玩家扮演一名飛機(jī)失靈流落到荒島的乘客。玩家要在荒島上利用島上的收集到的物品使自己活下去。2017年,韓國藍(lán)洞公司發(fā)行了《絕地求生:大逃殺》,該游戲結(jié)合了第一人稱射擊的玩法,讓眾多玩家在一個(gè)游戲地圖里撿拾物品、武器,互相搏斗,最終活下來的贏得勝利。這又給生存題材游戲帶來了不同的設(shè)計(jì)理念。中國游戲產(chǎn)業(yè)與國外相比,出現(xiàn)時(shí)間比較晚,但是發(fā)展迅速。最開始的游戲題材以古裝、武俠、修仙、戰(zhàn)斗為主。生存題材的游戲重視程度沒有那么高。在國外生存題材的游戲火爆之后,中國的游戲開發(fā)者也加入了生存題材的元素。2017年網(wǎng)易公司推出了游戲《荒野行動(dòng)》。2018年騰訊公司推出了游戲《絕地求生:刺激戰(zhàn)場》和《絕地求生:全民出擊》。1.4論文的組織結(jié)構(gòu)第1章:緒論部分,主要介紹了本論文的研究背景和意義、國內(nèi)外研究現(xiàn)狀和發(fā)展趨勢和主要研究內(nèi)容。第2章:Unity3D游戲引擎及相關(guān)技術(shù)概述,介紹了Unity3D的開發(fā)過程和常見Unity3D的編程模式。第3章:游戲總體設(shè)計(jì),分析研究了游戲的需求,在此基礎(chǔ)上進(jìn)行了游戲模塊的劃分。第4章:生存游戲的設(shè)計(jì)與實(shí)現(xiàn),在游戲需求分析的基礎(chǔ)上,對各個(gè)模塊的具體設(shè)計(jì)做出了實(shí)現(xiàn),并且運(yùn)行測試了游戲的功能。第5章:論文的總結(jié)。Unity3D引擎技術(shù)2.1Unity3D編輯器介紹Unity3D是由UnityTechnologies開發(fā)游戲引擎。開發(fā)者使用Unity3D引擎,可以快速地制作2D、3D游戲。Unity3D具有強(qiáng)大的跨平臺特性,玩家從最開始的在臺式機(jī)電腦上玩游戲發(fā)展到專門的游戲主機(jī)玩游戲,再到目前的移動(dòng)平臺上玩游戲、用虛擬現(xiàn)實(shí)設(shè)備玩游戲,游戲平臺發(fā)展速度很快,Unity3D引擎可以到達(dá)一次編寫,多種平臺上發(fā)布運(yùn)行。目前Unity3D已經(jīng)支持發(fā)布Windows、MacOS、Linux平臺的單機(jī)游戲,iOS、Android等移動(dòng)設(shè)備的游戲,HTCVive等虛擬現(xiàn)實(shí)設(shè)備平臺上的游戲。在游戲引擎開發(fā)市場上,還有很多著名的游戲引擎,例如Unreal虛幻引擎、cocos2D等。這些游戲引擎中有些出現(xiàn)的時(shí)間比Unity3D誕生時(shí)間要早很多,也是大型游戲公司制作多款游戲作品知識和經(jīng)驗(yàn)的積累,但是卻被Unity3D后來居上,使得Unity3D引擎成為游戲引擎技術(shù)普及度最高的引擎,原因有很多,例如上手困難高,又或者是本身自帶的游戲引擎腳本系統(tǒng)不完善,要求使用者使用C++編寫游戲程序,編寫程序難度相對較大,又或者是引擎本身的第三方授權(quán)使用費(fèi)非常昂貴,讓大部分的使用者望而卻步。而前者這些引擎的缺點(diǎn)正是Unity3D引擎所避免的。Unity3D推出了資源商店,在資源商店中,Unity3D開發(fā)者可以購買3D或2D人物、動(dòng)物、怪物模型,游戲場景環(huán)境、游戲道具、游戲交通工具、游戲音頻、游戲腳本、游戲插件等各種游戲開發(fā)中用到的素材,而且價(jià)格相對低廉,另外有一些素材資源是免費(fèi)提供的,特別適合中小團(tuán)隊(duì)和獨(dú)立游戲開發(fā)者。Unity3D有豐富的文檔和官方視頻教程,為初學(xué)者提供了快速上手使用的捷徑。同時(shí)開發(fā)者可以把Unity3D使用中的遇到的難題發(fā)布到社區(qū)中,會有資深的Unity3D使用者解答問題。Unity3D不僅僅可以制作游戲,在其它行業(yè)也有廣泛的應(yīng)用。在電影行業(yè)中,電影從業(yè)者用Unity3D制作動(dòng)畫電影,成功的電影短片有《BookoftheDead》。該電影短片的成功,預(yù)示著使用Unity3D可以制作出自然真實(shí)的現(xiàn)實(shí)環(huán)境、逼真的光影效果、角色人物動(dòng)作流暢自然。在建筑行業(yè),建筑工程師可以使用Unity3D制作建筑仿真和交互系統(tǒng)。在機(jī)械行業(yè),機(jī)械工程師用Unity3D制作機(jī)械系統(tǒng)的模擬和仿真系統(tǒng)。此外在其它行業(yè),如汽車、教育培訓(xùn)、醫(yī)療等,Unity3D也有使用。 優(yōu)勢:Unity3D操作簡單易上手[5]。并且通用性強(qiáng),支持多平臺開發(fā),可開發(fā)電腦端、手機(jī)端和主機(jī)端等。擁有自己的商店平臺,大部分插件與效果都可買到,大大提升了開發(fā)效率??梢詾槲覀兲峁┝嗽S多高性能的系統(tǒng),例如燈光照明、自動(dòng)尋路、粒子系統(tǒng)等。劣勢:在國內(nèi)起步晚,2012年才進(jìn)入國內(nèi)[5],較好的程序還是比較少。程序的占用內(nèi)存比較高,渲染性能比較低。2.2Unity3D引擎的功能2.2.1Unity地形編輯器功能 Unity3D引擎有一個(gè)功能強(qiáng)大的地形編輯器,使用者可以筆刷的方式雕刻各種山脈、峽谷、平原等地形效果。另外,Unity3D地形編輯器還可以實(shí)現(xiàn)平鋪地面材質(zhì)紋理、通過筆刷大小的不同實(shí)現(xiàn)局部面積的種植樹木、實(shí)現(xiàn)2D廣告牌式的種草功能。Unity3D地形編輯器支持設(shè)置地形的LOD功能,LOD是指攝像機(jī)與顯示物體的距離越近,顯示物體的網(wǎng)格模型效果越好。遠(yuǎn)處的地形塊使用稀疏的網(wǎng)格模型展示,近處的地形塊使用密集的網(wǎng)格模型顯示。Unity3D引擎地形編輯器可以為游戲場景提供十分真實(shí)的、接近電影效果的地形展示游戲畫面。
圖2-1
Unity3D引擎的地形編輯器2.2.2Unity3D引擎中的物理引擎系統(tǒng)Unity3D引擎使用NVIDIA公司的PhysX物理引擎作為自己的物理系統(tǒng)。使用物理引擎可以使得游戲中的對象模擬現(xiàn)實(shí)中的物理效果。在Unity3D引擎中的物理引擎,提供了剛體、碰撞器、物理材質(zhì)等設(shè)置。給一個(gè)游戲?qū)ο蠹尤肓藙傮w組件之后,Unity3D引擎就會對它進(jìn)行物理效果模擬,游戲開發(fā)者可以通過屬性面板設(shè)置各種參數(shù),也可以通過腳本來控制游戲?qū)ο蟮奈锢磉\(yùn)動(dòng)。2.2.3Unity3D引擎中的腳本系統(tǒng)Unity3D引擎中使用腳本系統(tǒng)來控制游戲?qū)ο蟮倪\(yùn)行,原先腳本系統(tǒng)的開發(fā)語言有C#、Javascript,在后來的版本中,放棄了對Javascript的支持,只支持C#,這個(gè)是為了提高游戲編譯運(yùn)行的效率。Unity3D引擎本身是使用C++開發(fā)的,如果直接要求引擎的使用者使用C++編寫具體的游戲,會因?yàn)镃++本身復(fù)雜難學(xué)難以使用,使得游戲開發(fā)者開發(fā)進(jìn)度緩慢。Unity3D引擎使用C#作為腳本系統(tǒng)之后,給游戲開發(fā)者帶來快速開發(fā),游戲接口良好,自動(dòng)化管理內(nèi)存等開發(fā)優(yōu)點(diǎn)。2.2.4Unity3D引擎中的動(dòng)畫系統(tǒng)Unity3D引擎提供了一個(gè)功能強(qiáng)大的動(dòng)畫系統(tǒng),可以為Unity3D游戲中的對象(包括人物、動(dòng)物、怪物、游戲道具等)提供動(dòng)畫設(shè)置。Unity3D引擎提供了人形動(dòng)畫重定向,把人物動(dòng)作動(dòng)畫抽象成一個(gè)Avatar,導(dǎo)入一個(gè)做好動(dòng)畫的人物模型,可以把這個(gè)人物模型帶的動(dòng)畫賦予另外一個(gè)沒有動(dòng)作動(dòng)畫的人物模型,這特別適合移動(dòng)平臺游戲的開發(fā),因?yàn)檫@將極大的減少游戲發(fā)布的文件大小。動(dòng)畫系統(tǒng)帶有有限狀態(tài)機(jī)功能,可以使用這個(gè)功能為模型的動(dòng)畫設(shè)置條件。例如,一個(gè)人物有閑時(shí)動(dòng)畫、走路動(dòng)畫、攻擊動(dòng)畫、跳躍動(dòng)畫,可以使用動(dòng)畫系統(tǒng)的有限狀態(tài)機(jī)功能為這個(gè)人物模型分配何時(shí)觸發(fā)各種動(dòng)畫的條件,并結(jié)合腳本代碼實(shí)現(xiàn)。Unity3D動(dòng)畫系統(tǒng)還提供了動(dòng)畫樹功能,可以把模型帶有幾個(gè)動(dòng)畫融合,做出復(fù)制的動(dòng)畫效果。另外Unity3D還提供了人物骨骼動(dòng)畫的調(diào)整和設(shè)置,利于動(dòng)畫師調(diào)整人物的動(dòng)作,使得人物模型動(dòng)畫更加自然。圖2-2
Unity3D引擎的人形骨骼動(dòng)畫系統(tǒng)2.3Unity3D游戲開發(fā)流程游戲軟件開發(fā)和其它軟件開發(fā)過程類似,大致可以分為需求分析、代碼開發(fā)、功能測試等幾個(gè)階段。每個(gè)游戲開發(fā)團(tuán)隊(duì)使用Unity3D引擎開發(fā)游戲產(chǎn)品的開發(fā)過程都不相同,但是大致的過程類似。在一個(gè)大型的游戲開發(fā)團(tuán)隊(duì)中,開發(fā)成員一般分為游戲策劃、游戲美工、游戲程序員、游戲測試員等。游戲策劃首先分析目前游戲市場的行情,分析當(dāng)下熱門的電影、電視劇、小說、漫畫、游戲的偏好和熱點(diǎn),確定將要制作的游戲類型,鎖定該游戲的大致受眾。游戲策劃向?qū)磉@款游戲的潛在玩家通過網(wǎng)絡(luò)問卷、電話訪談、玩家聯(lián)誼會、第三方市場調(diào)查公司等形式調(diào)研潛在玩家的需求。游戲策劃會根據(jù)上述分析手段和資料收集,在游戲公司開展頭腦風(fēng)暴會議,確定游戲內(nèi)容和核心玩法,編寫游戲策劃書。游戲美工根據(jù)游戲策劃書,設(shè)計(jì)制作游戲人物、游戲場景。游戲美工會細(xì)分為游戲主美、游戲原畫師、游戲模型師、游戲地形編輯、游戲動(dòng)畫師等。游戲主美會結(jié)合游戲策劃書與游戲策劃游戲主程序商量,確定這款游戲的美術(shù)風(fēng)格。游戲美術(shù)人物是偏向?qū)憣?shí),還是趨向Q版,游戲場景風(fēng)格是懷舊、科幻、朋克、現(xiàn)代、古代、卡通?在游戲主美設(shè)計(jì)確定好游戲的總體美術(shù)風(fēng)格之后,游戲原畫師會根據(jù)設(shè)計(jì)風(fēng)格要求,使用手繪或者電子繪圖在Photoshop等平面繪圖軟件中設(shè)計(jì)好游戲的人物平面模型圖、游戲場景模型圖、游戲道具圖等。接下來,游戲模型師根據(jù)游戲原畫師的人物場景設(shè)計(jì)稿,在3dsmax或者M(jìn)aya等建模軟件中進(jìn)行游戲人物場景高模的建模工作,把游戲高模拓?fù)涑蛇m合游戲引擎用的游戲低模,游戲低模展開UV,繪制游戲模型貼畫材質(zhì)紋理等。在游戲模型師制作好游戲模型之后,需要?jiǎng)幼鞯哪P?,將會交給游戲動(dòng)作師。游戲中需要?jiǎng)赢嫷哪P鸵话闶怯螒蛉宋?、游戲怪物、游戲?dòng)物等。游戲動(dòng)畫師會根據(jù)游戲策劃書的需要和游戲程序員的要求,設(shè)計(jì)好游戲模型所需的動(dòng)作動(dòng)畫,游戲動(dòng)畫的一般在建模軟件3dsmax或者M(jìn)aya中制作,有些游戲動(dòng)畫還會用到動(dòng)作捕捉設(shè)備,力求獲得更好的動(dòng)作效果。游戲模型制作好之后,會在建模軟件中導(dǎo)出成適合Unity3D引擎所需要的FBX格式。游戲地形編輯使用導(dǎo)出好的FBX文件在Unity3D引擎編輯器中,根據(jù)游戲策劃書需求中關(guān)卡場景設(shè)計(jì)要求,結(jié)合游戲場景原畫稿等,搭建各個(gè)游戲關(guān)卡的游戲場景。游戲特效師會在游戲地形編輯創(chuàng)建好的游戲場景中,按照策劃書的要求設(shè)計(jì)各種游戲特效。游戲程序員根據(jù)游戲策劃書,完成游戲所需要的功能。游戲程序員一般可以分為游戲客戶端主程序員、游戲客戶端程序員、游戲服務(wù)端主程序員、游戲服務(wù)端程序員。游戲客戶端主程序員和游戲服務(wù)端主程序員根據(jù)游戲策劃書,分析完成整體游戲所需要的功能,確定游戲客戶端和游戲服務(wù)端的通信協(xié)議、通信接口。在確定好整體游戲所需的功能之后,游戲客戶端主程序員確定游戲客戶端需要具體實(shí)現(xiàn)哪些功能,確定Unity腳本的架構(gòu),細(xì)分各個(gè)功能模塊,列出實(shí)現(xiàn)各個(gè)模塊的編碼難易程度。游戲客戶端主程序員按照各個(gè)模塊的編碼難易程度,根據(jù)游戲客戶端程序員的編碼水平,分配給他們實(shí)現(xiàn)。在確定好整體游戲所需的功能之后,游戲服務(wù)端主程序員確定服務(wù)端開發(fā)語言和游戲數(shù)據(jù)庫的選型,確定游戲服務(wù)端需要具體實(shí)現(xiàn)哪些功能,細(xì)分功能模塊,列出實(shí)現(xiàn)各個(gè)模塊的編碼難易程度,設(shè)計(jì)游戲服務(wù)端架構(gòu),確定游戲服務(wù)器上線部署架構(gòu)。游戲服務(wù)端主程序員按照各個(gè)模塊的編碼難易程度,根據(jù)游戲服務(wù)端程序員的編碼水平,分配給他們實(shí)現(xiàn)。游戲客戶端服務(wù)端程序員在完成某一功能實(shí)現(xiàn)之后,還要進(jìn)行代碼的白盒測試。游戲中所需要的聲音,例如場景音樂、場景音效、人物對話配音等,一般游戲團(tuán)隊(duì)都外發(fā)給獨(dú)立的音樂工作室完成制作。游戲測試,一般是在游戲程序員在實(shí)現(xiàn)某一個(gè)功能完成白盒測試的基礎(chǔ)上進(jìn)行的黑盒測試。游戲測試員會按照游戲策劃書的要求測試游戲某一功能看看是否達(dá)到策劃書所要求的效果,把游戲測試的結(jié)果反饋給程序員。游戲策劃書所確定的開發(fā)需求會在游戲的開發(fā)階段不斷更新變化,所以游戲需求分析、游戲美術(shù)制作、游戲代碼實(shí)現(xiàn)、游戲測試幾個(gè)階段是不斷迭代進(jìn)行下去的,循環(huán)往復(fù)最終完成游戲所有功能。圖2-3Unity3D游戲開發(fā)流程圖2.4Unity游戲開發(fā)中的常見設(shè)計(jì)模式在Unity3D腳本編程中,有幾種的設(shè)計(jì)模式常常用于開發(fā)中。2.4.1單例模式在Unity3D項(xiàng)目中,有些游戲?qū)ο笾荒軐?shí)例化一次,如果實(shí)例化了多個(gè)游戲?qū)ο?,會?dǎo)致游戲程序運(yùn)行不正確。只能實(shí)例化一次的游戲?qū)ο笥?,控制全局游戲?qū)ο蟮目刂破黝?、場景切換管理類、游戲進(jìn)度保存類等。此時(shí)對只能實(shí)例化一次的游戲?qū)ο?,采用單例模式。在Unity3D項(xiàng)目中,掛載在某一個(gè)游戲?qū)ο笊系挠螒蚰_本類,都必需繼承MonoBehaviour,不能自己用new實(shí)例化,實(shí)例化的過程是交給Unity3D引擎來完成,所以采用單例模式的游戲?qū)ο?,生成單例引用時(shí),不能用new實(shí)例化自己,可以使用FindObjectOfType來生成,這個(gè)生成的過程也是交給了Unity3D引擎來完成。2.4.2事件模式在一個(gè)相對簡單的Unity3D項(xiàng)目中,游戲?qū)ο髷?shù)量有限,游戲?qū)ο笾g的交互之間采用調(diào)用對方的接口函數(shù)。而在一個(gè)復(fù)雜的Unity3D項(xiàng)目中,游戲?qū)ο蟊姸?,游戲?qū)ο笾g的交互采用互相調(diào)用對方的接口函數(shù),會引起極大的耦合性,代碼的復(fù)雜度增加,后期的維護(hù)困難,這種情況下一般使用事件模式解耦。在Unity3D項(xiàng)目中,使用事件模式,要定義一個(gè)事件隊(duì)列對象。事件隊(duì)列對象可以注冊或者取消某一游戲?qū)ο髮δ硞€(gè)事件的關(guān)注,當(dāng)某一事件發(fā)生時(shí),事件隊(duì)列對象會把這個(gè)事件發(fā)送給關(guān)注該事件的游戲?qū)ο?。例如游戲?qū)ο笸婕液陀螒驅(qū)ο髷橙硕缄P(guān)注了傷害事件。當(dāng)游戲?qū)ο笸婕液陀螒驅(qū)ο髷橙税l(fā)生打斗時(shí),游戲?qū)ο髷橙斯袅擞螒驅(qū)ο笸婕遥藭r(shí)游戲?qū)ο髷橙税l(fā)送給傷害事件給事件隊(duì)列對象,事件隊(duì)列對象把傷害事件發(fā)送給游戲?qū)ο笸婕?,游戲?qū)ο笸婕医邮盏搅藗κ录κ录龀龇磻?yīng)。2.4.3MVC模式MVC模式是指把軟件系統(tǒng)分為模型(Model)、視圖(View)、控制器(Controller)。在Unity3D項(xiàng)目中,有些子系統(tǒng)是玩家用戶與游戲UI交互較多的子系統(tǒng),比如游戲裝備子系統(tǒng)、游戲商店子系統(tǒng),有些游戲項(xiàng)目,玩家用戶主要與游戲的UI進(jìn)行交互,例如《斗地主》等棋牌類游戲、《爐石傳說》等卡牌類游戲。這些子系統(tǒng)和這類游戲項(xiàng)目非常適合用MVC模式進(jìn)行項(xiàng)目架構(gòu)。例如在游戲商店子系統(tǒng)中,把游戲道具劃分為模型、把游戲道具購買、展示、交易等界面劃分為視圖、控制游戲道具的購買展示的游戲?qū)ο髣澐譃榭刂破?。控制器在界面視圖中展示游戲道具模型的具體信息和數(shù)量,控制游戲玩家購買游戲道具的過程。按照MVC模式組織代碼架構(gòu),代碼的結(jié)構(gòu)清晰,有良好的可維護(hù)性。2.5本章小結(jié)本章主要介紹了Unity3D的功能特性和使用Unity3D的開發(fā)過程??偨Y(jié)了Unity3D幾種常見設(shè)計(jì)模式。Unity3D是一款優(yōu)秀的開發(fā)工具,使得開發(fā)使用者可以高效完成游戲項(xiàng)目。游戲需求分析與設(shè)計(jì)3.1游戲需求分析3.1.1游戲故事背景介紹本課題制作的游戲發(fā)生在一個(gè)森林中,玩家流落到了一個(gè)森林中,森林里有各種未知的風(fēng)險(xiǎn)、有野獸、有怪物,玩家需要面對各種挑戰(zhàn)從而生存下來。3.1.2游戲場景需求分析在游戲場景中,玩家在森林中行走,森林中設(shè)置有一些障礙物和機(jī)關(guān),如果玩家無意中接觸,會促使玩家的血量降低。森林中有一些有用的物品,可以給玩家拾取使用。森林中會出現(xiàn)野獸或者怪物,當(dāng)野獸或者怪物在一定范圍內(nèi)看到玩家,會引發(fā)對玩家的攻擊。3.1.3主角技能需求分析在游戲中,玩家能夠通過按下WSAD行走、按shift鍵奔跑、空格鍵跳躍,遇到威脅可以逃跑也可以能夠發(fā)動(dòng)攻擊保護(hù)自己。3.1.4游戲背包系統(tǒng)游戲中,玩家能夠在森林中撿拾物品,撿拾物品可以放在游戲背包中,供以后使用。點(diǎn)擊游戲界面的背包圖標(biāo)按鈕,顯示背包系統(tǒng)展示窗口,任意點(diǎn)擊窗口中展示的物品,顯示物品詳情,在物品詳情窗口中,點(diǎn)擊使用按鈕,可以使用該物品。3.2游戲開發(fā)過程在設(shè)計(jì)了一款生存類題材游戲需求上,根據(jù)需求分析,首選按照游戲需求劃分功能。在Unity3D編輯器中進(jìn)行游戲場景的建模設(shè)置,在游戲場景中引入各種游戲?qū)ο螅缃巧珜ο?、怪物對象等,對游戲?qū)ο髵燧d相應(yīng)的功能代碼腳本。當(dāng)每一項(xiàng)功能實(shí)現(xiàn)好之后,進(jìn)行游戲功能測試,看看游戲運(yùn)行的效果是否正常運(yùn)行,是否達(dá)到設(shè)計(jì)的要求。3.3游戲的架構(gòu)設(shè)計(jì)為了使游戲程序架構(gòu)適應(yīng)游戲策劃需求不斷變化,需要設(shè)計(jì)一個(gè)游戲代碼易于擴(kuò)展和可維護(hù)性強(qiáng)的架構(gòu)。對游戲代碼的功能進(jìn)行模塊劃分,降低了代碼之間的耦合度。根據(jù)游戲策劃需求分析,把本課題的游戲模塊劃分為角色控制模塊、攝像機(jī)模塊、怪物AI模塊、背包模塊、游戲控制模塊。圖3-1模塊劃分圖3.4本章小結(jié)本章對設(shè)計(jì)的游戲進(jìn)行了需求與流程的策劃,并根據(jù)需求確定引擎與開發(fā)流程,并設(shè)計(jì)了所需要實(shí)現(xiàn)的各個(gè)模塊。游戲系統(tǒng)的實(shí)現(xiàn)4.1游戲控制模塊游戲控制模塊是控制整個(gè)游戲運(yùn)行的。游戲開始時(shí),游戲控制模塊會初始化游戲場景中必要的組件。4.2玩家角色控制模塊實(shí)現(xiàn)玩家角色控制模塊是為玩家用戶控制角色在游戲過程中的行為的。在游戲中,玩家角色要閑時(shí)、行走、奔跑、跳躍、攻擊怪物、拾取物品等動(dòng)作,這些動(dòng)作動(dòng)畫在Animator動(dòng)畫系統(tǒng)中設(shè)置角色的有限狀態(tài)機(jī)動(dòng)畫,觸發(fā)動(dòng)作動(dòng)畫的條件,增加觸發(fā)的參數(shù)和設(shè)置數(shù)值。玩家角色行走,首選要獲取玩家角色對象上必須的組件,動(dòng)畫組件、Rigidbody組件。然后獲取用戶輸入的數(shù)據(jù),判斷玩家是否按下了移動(dòng)角色的按鍵,如果按下了移動(dòng)按鍵,通過移動(dòng)按鍵設(shè)置角色移動(dòng)的數(shù)值,在移動(dòng)玩家角色之前,需要檢查判斷玩家角色是否在地面,如果不在地面,首選要用重力影響玩家角色Y坐標(biāo)值,使玩家角色落在地面上,然后使用Rigidbody組件按照數(shù)值移動(dòng)玩家角色的位置,并播放角色行走動(dòng)畫。玩家角色的血量、能量。玩家角色被攻擊時(shí)會減少血量,玩家角色在攻擊怪物時(shí),會消耗能量值。當(dāng)血量數(shù)值為0時(shí),玩家會死亡。當(dāng)能量數(shù)值小于50時(shí),玩家無法施展攻擊技能。圖4-1玩家狀態(tài)欄4.3攝像機(jī)模塊的實(shí)現(xiàn)在游戲中,玩家角色對象的各種游戲操作行為需要一個(gè)攝像機(jī)進(jìn)行拍攝,把游戲的的進(jìn)行呈現(xiàn)給玩家。攝像機(jī)模塊的設(shè)計(jì)實(shí)現(xiàn),首選要獲取玩家角色對象的位置,根據(jù)玩家角色對象的位置,設(shè)置攝像機(jī)自己本身的初始位置。在游戲進(jìn)行過程中,玩家角色對象的位置會不停地變化,攝像機(jī)的位置更加不斷變化的玩家角色對象位置改變。攝像機(jī)模塊使用了第三方的攝像機(jī)插件。4.4怪物AI模塊的實(shí)現(xiàn)怪物AI模塊是在游戲場景中,怪物對象與玩家角色對象的行為交互模塊。在游戲加載過程中,怪物AI模塊首選會實(shí)例化出怪物模型,然后把生成的怪物對象隨機(jī)分布到游戲場景中的某個(gè)位置怪物的行為有三種方式巡邏、追擊、攻擊。怪物對象和玩家角色對象一樣,有血量生命值,當(dāng)被玩家對象攻擊之后,血量會降低,如果數(shù)次受到玩家對象的攻擊,血量值降為0,即表示怪物死亡。怪物對象的巡邏使用Unity3D引擎中帶有NavMesh導(dǎo)航網(wǎng)格功能來實(shí)現(xiàn)巡邏。導(dǎo)航網(wǎng)格的生成,首先需要選取游戲場景中的地形對象,然后使用Unity3D引擎中的NavMeshBake生成,在生成之前可以設(shè)置各種生成的參數(shù),一般情況下使用默認(rèn)的參數(shù),也可以手動(dòng)設(shè)置對某些網(wǎng)格對象的過濾。生成好導(dǎo)航網(wǎng)格之后,游戲地形中會出現(xiàn)青藍(lán)色的網(wǎng)格地形塊,這些顏色代表怪物對象可以巡邏行走的區(qū)域。怪物對象巡邏位置定義是隨機(jī)生成的隨機(jī)數(shù),怪物對象會在這些定義好的范圍內(nèi)開始巡邏。怪物對象在巡邏時(shí)會調(diào)用FindGameObjectWithTag("Player")方式獲得玩家角色對象的位置,然后計(jì)算玩家角色對象和怪物對象自身的距離,如果這個(gè)距離的小于一定的數(shù)值范圍,就開始對玩家角色對象進(jìn)行追擊和攻擊,如果在追擊過程中,玩家角色對象逃跑了,并且跑出了追擊的范圍,怪物對象就會從追擊變?yōu)檠策?。?dāng)玩家角色對象在怪物對象追擊范圍內(nèi)時(shí),并且達(dá)到攻擊距離時(shí),怪物對象會對玩家角色對象發(fā)起攻擊,每次發(fā)起攻擊時(shí)間會加一定的時(shí)間間隔,讓玩家角色對象有所反應(yīng),玩家角色對象也會發(fā)起對怪物對象發(fā)起攻擊,如果怪物對象數(shù)次受到玩家角色對象攻擊后死亡,怪物對象會消失,怪物AI模塊會在游戲場景的任意位置重新生成怪物對象。圖4-2怪物模塊定時(shí)在任意地點(diǎn)生成一定數(shù)量的怪物4.3圖為怪物的導(dǎo)航網(wǎng)格在4-3圖中,青藍(lán)色代表導(dǎo)航網(wǎng)格覆蓋的區(qū)域,即圖中標(biāo)注為1的大片區(qū)域,這表示游戲中的怪物可以行走的區(qū)域。沒有被青藍(lán)色覆蓋的區(qū)域,即圖中標(biāo)注為2的零星小區(qū)塊,都是怪物無法行走的區(qū)域。怪物對象巡邏位置定義是隨機(jī)生成的隨機(jī)數(shù),怪物對象會在這些定義好的范圍內(nèi)開始巡邏。4.5背包模塊的實(shí)現(xiàn)游戲背包模塊是控制游戲中玩家角色對象攜帶使用的物品系統(tǒng)。當(dāng)玩家用戶按下游戲界面中的背包圖標(biāo)按鍵之后,游戲系統(tǒng)會展示玩家角色對象可用的物品,物品展示窗口使用Unity3D引擎中的UGUIGrid生成。游戲中的物品對象定義了物品ID屬性、數(shù)量、使用物品之后給玩家角色對象帶來的血量和能量等各種屬性。玩家角色對象可以使用物品對象。圖4-4背包系統(tǒng)圖圖4-5背包系統(tǒng)部分代碼圖4-5為背包系統(tǒng)部分代碼中的使用背包系統(tǒng)中的物品代碼,當(dāng)玩家角色對象使用完物品之后,物品給玩家角色對象帶來血量和能量,然后,更新物品在背包系統(tǒng)界面的數(shù)量,如果物品剛好用完,背包系統(tǒng)界面就不再顯示該物品。玩家角色對象在游戲過程中,需要面對怪物的攻擊和游戲場景中的各種機(jī)關(guān),血量和能量會不斷減少和消耗,需要不斷地使用背包系統(tǒng)的物品來補(bǔ)充玩家角色對象自身的血量和能量,使得游戲可以進(jìn)行下去。當(dāng)背包中的物品不斷減少的時(shí)候,玩家需要在游戲場景中撿拾物品放入背包中。背包模塊在游戲場景中會定時(shí)某個(gè)時(shí)間段內(nèi)在任意地點(diǎn)生成一定數(shù)量的物品供玩家角色對象撿拾物品放入背包中。圖4-6背包系統(tǒng)生成的物品4.6其它功能的實(shí)現(xiàn)4.6.1游戲小地圖實(shí)現(xiàn)游戲小地圖是為了玩家用戶玩游戲時(shí),觀察玩家角色對象在游戲場景中的所處的位置,周圍怪物的距離,更好地提供對戰(zhàn)體驗(yàn)。在游戲場景中,對玩家角色對象添加一個(gè)大型的藍(lán)色圓球子對象,藍(lán)色圓球作為標(biāo)記物在小地圖的顯示效果,然后在玩家角色對象中再增加一個(gè)攝像機(jī)子對象,攝像機(jī)子對象90度對著玩家角色對象頭頂,攝像機(jī)子對象所獲取的內(nèi)容設(shè)置映射到游戲界面UI的小地圖UI的RawImage顯示。怪物對象增加一個(gè)大型紅色圓球子對象,便于在小地圖中顯示的效果。游戲場景中的主攝像機(jī)模塊剔除掉玩家角色對象和怪物對象的圓球子物體,這樣在游戲場景中正常顯示游戲的內(nèi)容。圖4-7小地圖藍(lán)色表示玩家,紅色表示怪物4.6.2游戲場景中日夜交替為了模擬真實(shí)的現(xiàn)實(shí)場景,提升玩家的用戶體驗(yàn),游戲?qū)崿F(xiàn)了,隨著時(shí)間的流逝,游戲場景中日夜交替的效果。游戲界面中,玩家用戶也可以自行調(diào)節(jié)日夜交替的效果。時(shí)間控制類從游戲界面的時(shí)間設(shè)置窗口獲得設(shè)置數(shù)據(jù),加入U(xiǎn)nity3D的計(jì)時(shí)器數(shù)據(jù),通過數(shù)據(jù)的不斷變化,把游戲場景中的主燈光旋轉(zhuǎn)起來,配合設(shè)置好的天空盒,達(dá)到日夜交替的效果。玩家用戶也可以在時(shí)間設(shè)置界面中選擇關(guān)閉,停止日夜交替的效果。圖4-8游戲場景中的日夜交替效果圖4-9游戲場景中的日夜交替效果4.6.3游戲場景中機(jī)關(guān)游戲場景中有機(jī)關(guān),當(dāng)玩家角色對象觸碰到機(jī)關(guān)時(shí),玩家角色對象會掉血量。游戲場景中,有些類似石頭的物體,設(shè)置為游戲的機(jī)關(guān),機(jī)關(guān)物體對象加入了圓球碰撞器,一旦玩家角色對象觸碰機(jī)關(guān)物體對象,就會發(fā)生碰撞函數(shù)調(diào)用,玩家角色對象會掉血量。游戲機(jī)關(guān)類定義了機(jī)關(guān)的血量數(shù)值。圖4-10游戲場景中的機(jī)關(guān)游戲測試5.1測試計(jì)劃運(yùn)行Unity3D,測試主界面開始按鈕是否正常跳轉(zhuǎn)。模型、音效是否顯示/播放正常,主角按WSAD是否可以前后左右對應(yīng)移動(dòng)奔跑,奔跑時(shí)間是否受持久力影響背包系統(tǒng),能否使用背包系統(tǒng)的物品時(shí)間是否持續(xù)流逝,測試按下JKL三鍵能否使用攻擊技能物品碰撞是否正常,敵人巡邏,死亡等UI是否正常人物施展攻擊技能時(shí),是否消耗能量,血量為零時(shí)是否正常死亡5.2測試用例功能性系統(tǒng)實(shí)現(xiàn)的主要功能,包括角色是否正常移動(dòng)、死亡,人物動(dòng)畫是否正常,怪物UI是否正常。系統(tǒng)實(shí)現(xiàn)的次要功能,包括UI界面是否正常顯示,模型是否正常。測試用例:用例標(biāo)識GDDR1005項(xiàng)目名稱基于unity3D的求生游戲的設(shè)計(jì)與實(shí)現(xiàn)開發(fā)人員陸永祥版本號用例作者陸永祥測試方法場景分析法、等價(jià)類劃分法、邊界值分析法測試類型功能測試、黑盒測試、手工測試測試人員陸永祥用例描述該用例用來測試游戲中的角色、怪物UI、人物動(dòng)畫是否正常前置條件Unity2019.2版本及以上編號測試項(xiàng)操作步驟預(yù)期結(jié)果1角色移動(dòng)、死亡按下WSAD鍵碰撞游戲機(jī)關(guān)是否會發(fā)生碰撞事件讓主角被怪物攻擊讓血量變?yōu)榱闳宋镎R苿?dòng)奔跑碰到物體停下或不能繼續(xù)往該方向走主角死亡2怪物UI觀察場景中的怪物是否正常巡邏走進(jìn)怪物是否會被攻擊怪物正常巡邏怪物攻擊進(jìn)入范圍的主角3人物動(dòng)畫按下JKL三鍵施
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/TR 41019:2024 EN Facility managements role in sustainability,resilience and adaptability
- 2025年度校園基礎(chǔ)設(shè)施裝修改造工程合同
- 2025年度房產(chǎn)居間合同:旅游地產(chǎn)項(xiàng)目開發(fā)合作協(xié)議
- 2025年度標(biāo)前協(xié)議模板:XX基礎(chǔ)設(shè)施建設(shè)合作前期協(xié)議
- 2025年度酒店客房預(yù)訂客戶投訴處理合同
- 2025年度博物館安防監(jiān)控設(shè)備采購與安裝合同
- 學(xué)期班級教學(xué)活動(dòng)工作任務(wù)計(jì)劃
- 學(xué)期閱讀推廣活動(dòng)計(jì)劃
- 社區(qū)文藝活動(dòng)計(jì)劃
- 生物教育在新時(shí)代的挑戰(zhàn)與機(jī)遇計(jì)劃
- 陜西少華山森林公園管軌式滑道項(xiàng)目 環(huán)境影響報(bào)告書
- 場地自行車講解材料
- 道路工程試驗(yàn)檢測培訓(xùn)課件
- 七字押韻祭文范文六篇
- 交通大數(shù)據(jù)服務(wù)平臺建設(shè)方案
- 2024年青島酒店管理職業(yè)技術(shù)學(xué)院高職單招(英語/數(shù)學(xué)/語文)筆試歷年參考題庫含答案解析
- 預(yù)防食物過敏
- 16學(xué)時(shí)《中醫(yī)藥膳學(xué)》教學(xué)大綱(可編輯修改文本版)
- 媒體和傳媒行業(yè)的技術(shù)培訓(xùn)資料
- 行政人事部年終總結(jié)
- 基礎(chǔ)工程課件2剛性基礎(chǔ)與擴(kuò)展基礎(chǔ)
評論
0/150
提交評論