版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、-PAGE . zDONGFANG COLLEGE,F(xiàn)UJIAN AGRICULTURE AND FORESTRY UNIVERSITY論文題目:基于unity3d的游戲制作與展示 QQ346977633系 別: 計算機系年級專業(yè):0*級計算機科學與技術學 號:0*50303029姓名:*指導教師:林*職稱:教授2013年04月23日-. zGame design and display based on unity3dTitle:Title單詞打印時將隱藏Department:Departmetn of puter ScienceMajor and Grade:puter Science a
2、nd TechnologyNumber:0950303029Name:ZhengziweiAdvisor:professor Lin hongjiDate:May,2013-. z農(nóng)林大學學院本科畢業(yè)設計(論文)作者承諾保證書本人重承諾: 本篇畢業(yè)設計(論文)的容真實、可靠。如果存在弄虛作假、抄襲的情況,本人愿承當全部責任。學生簽名:年 月 日農(nóng)林大學學院本科畢業(yè)設計(論文)指導教師承諾保證書本人重承諾:我已按有關規(guī)定對本篇畢業(yè)設計(論文)的選題與容進展了指導和審核,該同學的畢業(yè)設計論文中未發(fā)現(xiàn)弄虛作假的現(xiàn)象,本人愿承當指導教師的相關責任。指導教師簽名:年 月 日目錄TOC o 1-3 h z
3、 uHYPERLINK l _Toc12511 摘要 PAGEREF _Toc12511 - 1 - HYPERLINK l _Toc14173 Abstract PAGEREF _Toc14173 - 2 - HYPERLINK l _Toc14023 1.1本課題的研究背景 PAGEREF _Toc14023 - 1 - HYPERLINK l _Toc31499 1.2本課題的研究意義 PAGEREF _Toc31499 - 2 -HYPERLINK l _Toc13612 1.3國外研究現(xiàn)狀 PAGEREF _Toc13612 - 2 - HYPERLINK l _Toc18096 1
4、.4 unity3D游戲引擎平臺的特點 PAGEREF _Toc18096 - 3 - HYPERLINK l _Toc5211 1.5其他游戲引擎平臺 PAGEREF _Toc5211 - 4 - HYPERLINK l _Toc7905 1.6 開發(fā)工具 PAGEREF _Toc7905- 5 - HYPERLINK l _Toc30254 2可行性分析要求 PAGEREF _Toc30254 - 5 - HYPERLINK l _Toc22361 2.1技術可行性 PAGEREF _Toc22361 - 6 - HYPERLINK l _Toc23442 2.2 經(jīng)濟可行性 PAGERE
5、F _Toc23442 - 6 - HYPERLINK l _Toc238 2.3 操作可行性 PAGEREF _Toc238 - 6 - HYPERLINK l _Toc16182 2.4可操作的平臺 PAGEREF _Toc16182 - 7 - HYPERLINK l _Toc27639 3游戲的方案設計 PAGEREF _Toc27639 - 7 - HYPERLINK l _Toc5849 3.1 游戲構造方案設計 PAGEREF _Toc5849 - 7 - HYPERLINK l _Toc2804 3.2游戲體系劃分構造 PAGEREF _Toc2804 - 7 - HYPERL
6、INK l _Toc30666 3.3游戲的各功能劃分 PAGEREF _Toc30666 - 8 - HYPERLINK l _Toc8068 3.4游戲總體預覽 PAGEREF _Toc8068 - 9 - HYPERLINK l _Toc16530 4詳細設計 PAGEREF _Toc16530 - 10 - HYPERLINK l _Toc11235 4.1 框架流程 PAGEREF _Toc11235 - 10 - HYPERLINK l _Toc30957 4.2 開場程序 PAGEREF _Toc30957 - 11 - HYPERLINK l _Toc13706 4.3登入界面
7、 PAGEREF _Toc13706 - 11 - HYPERLINK l _Toc25203 4.4音效背景 PAGEREF _Toc25203 - 12 - HYPERLINK l _Toc2475 4.5關卡設計 PAGEREF _Toc2475 - 13 - HYPERLINK l _Toc18337 4.6適配器的設置 PAGEREF _Toc18337 - 14 - HYPERLINK l _Toc31380 5 功能實現(xiàn)與代碼分析 PAGEREF _Toc31380 - 14 - HYPERLINK l _Toc17448 5.1登陸界面GUI PAGEREF _Toc17448
8、 - 15 - HYPERLINK l _Toc1358 5.2關卡設置控件 PAGEREF _Toc1358 - 16 - HYPERLINK l _Toc22697 5.3風箏轉(zhuǎn)向控制 PAGEREF _Toc22697 - 18 - HYPERLINK l _Toc2275 5.4對小鳥碰撞后的Level_3.cs腳本控制 PAGEREF _Toc2275 - 19 - HYPERLINK l _Toc27968 5.5 音效控制 PAGEREF _Toc27968 - 20 - HYPERLINK l _Toc17721 5.6 小鳥方向的控制 PAGEREF _Toc17721 -
9、22 - HYPERLINK l _Toc16787 5.7 ButtonMassage.cs PAGEREF _Toc16787 - 25 - HYPERLINK l _Toc17763 完畢語 PAGEREF _Toc17763 - 28 - HYPERLINK l _Toc32326 參考文獻 PAGEREF _Toc32326 - 29 - HYPERLINK l _Toc31478 致 PAGEREF _Toc31478 - 30 -. z摘要隨著數(shù)字化、科技化的信息技術開展,城市人們的生活節(jié)奏也大大加快;通過認識unity3d的游戲制作引擎,對于社會上的兩大主流手機市場安卓與蘋果,
10、從而設計的一款以輕松,休閑為基調(diào)的游戲,來緩解人們在工作上的疲勞,或讓休閑之時得到一絲娛樂。Unity3d是一種游戲?qū)I(yè)的開發(fā)工具,根據(jù)物理碰撞,粒子系統(tǒng)等技術,組建了以windows、andorid、ios等為平臺的游戲。并且對于個體的開發(fā)者來說是具有創(chuàng)造力的,它可以在一邊測試的過程中一邊試玩。對于unity,人們不可能只是暫時的有想法,在其運行過程中都可以讓開發(fā)者挖掘到樂趣、bug,然后修改測試直到擁有最吸引人的想法。其中unity支持生成apk文件并在Android手機上的運行致使它的前景大好。而且他的目標移動平臺可以瞬間轉(zhuǎn)換,解決了一種資源可以在手機、網(wǎng)頁、pc和移動平臺上進展不同的體
11、驗的問題。本次畢業(yè)設計的題目為基于unity3d的游戲制作與展示,旨在成功的設計出一款可以運行在智能手機和各類電腦上的休閑、娛樂游戲,在畢業(yè)設計完成時,可以通過多個平臺,不同方式體驗。游戲共包含7關,從易到難。提供了一種放松、休閑的方式,實現(xiàn)了對上班一族的工作壓力緩解。關鍵詞: Unity3D;游戲;AndroidAbstractWith digital, science and technology, the development of information technology, the pace of life of the people of the city greatly ac
12、celerated; through the a unity3d understanding of the game production engine, two mainstream mobile phone market, Android and Apple to design a rela*ed, casual for the tone of the game to relieve the fatigue of people at work or leisure time to get a trace of amusement. The Unity3d professional deve
13、lopment tools is a game, physical collisions, particle system, the formation of the windows, andorid, ios platform game. And for the development of the individual who is creative, it can be in the side of the test process while demo. For Unity, it is impossible to have only a temporary idea in the c
14、ourse of its operation, allows developers to tap into the fun, bug, and then modify the test until you have the most attractive idea. Unity support generated apk file and running on your Android phone causing it promising. And his goal mobile platform can be instantly converted to solve a resource p
15、roblem can be a different e*perience on the phone, web, PC and mobile platforms. The graduation project entitled unity3d-based game production and presentation, aimed at the successful design of a can run on smart phones and various types of puter leisure, entertainment, games, graduation design is
16、pleted by a platform, in different ways e*perience. The game contains 7, from easy to difficult.Provides a rela*ed, rela*ing way to ease the work pressure of the working people. Keywords: Unity3D; games; Android -. z1引言Unity3D是一個全面整合而來的專業(yè)游戲引擎,它支持多個平臺,并且在市場上有百分之十的占有率,他是一個綜合性的游戲開發(fā)工具。Unity3d可以支持的平臺有win
17、dow、 iPhone和Android平臺。也可以利用Unity web player網(wǎng)絡插件發(fā)布網(wǎng)頁游戲,支持Windows和mac的網(wǎng)頁瀏覽。本次論文設計的題目基于unity3d的游戲制作與展示,這是一個十分具有吸引力的休閑游戲應用;游戲設計的過程利用Unity3D引擎根本的功能組件,包括:GUI、碰撞器、角色控制、shader等,并獨立編寫功能、邏輯實現(xiàn)代碼,能夠?qū)崿F(xiàn)游戲的切換、關卡的設計、gui的界面設計、游戲音效音樂等的控制、游戲的觸屏控制等,為了讓上班一族或是休閑人士在輕松時刻得到一些娛樂。而游戲本身對于智能手機安卓,各類電腦,全面支持,讓其游戲多元化;游戲帶有滑稽趣味鍛煉敏捷度,
18、使得體驗者在享受其過程的同時也得到了娛樂。而游戲所生成的apk文件更是支持安卓系統(tǒng),在不久的將來更加易于推廣。1.1本課題的研究背景生活中,工作里,空閑時人們都需要得到一點放松,休閑。本款趣味游戲給人們帶來一種娛樂方式,游戲中包含了許多闖關環(huán)節(jié),意在對工作壓力大,生活無聊閑時的一種自我調(diào)整等,使得體驗者在放松自我的同時提高大腦的敏捷程度。本游戲的設計功能有:圖像配置屏幕分辨率設置圖像質(zhì)量調(diào)整全屏設計GUI界面游戲窗口圖片美化圖片導入音效控制關卡設計按鈕設計1.2本課題的研究意義本次游戲設計的出發(fā)點是在于趣味、休閑、放松;針對于一些上班族,在工作疲乏期間可以通過適當玩玩游戲來調(diào)整自己,從而設計出
19、的一款單機趣味游戲。在游戲設計過程中參加極具放松的背景音樂,加上一些適當?shù)年P卡設計,在運用unity導出e*e文件或apk文件,使得上班族無論想在手機上或是電腦上都可以體驗。而且游戲運行客服端是單機版,并不會占用太多的網(wǎng)絡資源。當今社會越來越科技化,也越來越年輕化。青年勞開工作者將在未來幾十年占據(jù)主導力量,如何使這些人在工作的壓力下得到些許放松,也是我們即將要考慮的問題。本款游戲的設計,使得勞開工作者能在工作期間得到一些放松,從而更好的調(diào)整自己。1.3國外研究現(xiàn)狀Unity3D是由丹麥Unity公司開發(fā)的游戲開發(fā)工具,國在這方面起步比擬晚,目前unity3d的應用領域主要有vR虛擬現(xiàn)實技術、p
20、c網(wǎng)游、以及手機網(wǎng)游等。其中在vr虛擬現(xiàn)實的技術上德國更是取得了一定的成果。瑞典的DIVE分布式虛擬交換環(huán)境更是基于uni*的在同一世界不同節(jié)點多進程上工作的異質(zhì)分布式系統(tǒng)。據(jù)我所知unity在生活應用可分為四類:一是非可視化信息轉(zhuǎn)為可視化信息,例如:用于產(chǎn)品的設計、降低本錢和開發(fā)風險;二是區(qū)域?qū)Ш?,例如:超市購物的導航,區(qū)域的監(jiān)控等。三是虛擬現(xiàn)實技術,例如:員工培訓在新的生產(chǎn)設備投入使用之前可以模擬工廠來提高工人的操作水平;四是游戲的開發(fā),目前能生成apk文件的游戲引擎平臺不多,能同時生成e*e的pc客戶端跟apk文件的游戲引擎平臺更是少之又少。而在我國u3d開發(fā)的智能手機游戲比擬多,境之邊
21、緣,榮譽勛章空降兵,生化奇兵,虛擬競技場。由于它在保證華美3D畫面的同時還能實現(xiàn)跨平臺的游戲開發(fā),包括PC、手機和平板電腦等不同終端,Unity3D技術開發(fā)的熱潮正在國展開,并且受到國游戲廠家以及多家互聯(lián)網(wǎng)巨頭的支持。1.4 unity3D游戲引擎平臺的特點Unity是一個支持多平臺,交互性極強的游戲開發(fā)工具,是個權威的專業(yè)引擎,目前全球游戲開發(fā)使用占有率已突破10%,并不斷呈現(xiàn)上升趨勢,unity是個兼容2d、3d的開發(fā)平臺,并且很好的支持了window vista和*p、win7、andorid、ios等平臺使得其更容易滿足用戶的需求。目前Unity開發(fā)出來的主要網(wǎng)游產(chǎn)品有:蒸汽之城、捉迷
22、藏OL等。而Unity軟件本身在開發(fā)過程中主要有如下這些特點:綜合編輯通過Unity簡單的用戶界面,你可以完成任何工作。這些為你節(jié)省了大量的時間。圖形動力Unity對Direct*和OpenGL擁有高度優(yōu)化的圖形渲染管道。資源導入Unity支持所有主要文件格式,并能和大局部相關應用程序協(xié)同工作。一鍵部署Unity可以讓你的作品在多平臺呈現(xiàn)。iPhone平臺發(fā)布、andorid平臺發(fā)布Unity讓革命性的游戲開發(fā)降臨革命性的設備。著色器Unity的著色器系統(tǒng)整合了易用性、靈活性和高性能。地形低端硬件亦可流暢運行廣闊茂盛的植被景觀。聯(lián)網(wǎng)從單人游戲到全實時多人游戲。物理特效Unity置的NVIDIA
23、Phys*物理引擎帶給你生活的互動。音頻和視頻實時三維圖形混合音頻流、視頻流。光影Unity提供了具有柔和陰影與烘焙lightmaps的高度完善的光影渲染系統(tǒng)。腳本支持Unity支持3種腳本語言:JavaScript,C#,Boo。Unity資源效勞器Unity資源效勞器是一個附加的包括版本控制的產(chǎn)品。文檔Unity為你提供逐步的指導、文檔和實例方案。正是以上這些特點,使得unity在開發(fā)的過程中越來越受到人們的親睞。1.5其他游戲引擎平臺Unreal主要特點:1、擁有優(yōu)秀的編輯工具,強大的渲染引擎支持多線程。2、擁有高級動畫系統(tǒng),強大的腳本支撐。3、模擬物理系統(tǒng),真實的光影效果。4、具有優(yōu)秀
24、的地形渲染效果,支持多層材質(zhì)混合,真實的侵蝕和風化效果,超炫的游戲中的電影效果。但其缺乏之處在于:只支持Windows *P系統(tǒng)。Gamebryo的主要特點:1、提供開發(fā)式平臺,并且支持游戲所需的資源導出插件。2、提供操作者三個主要工具分別是資源觀察器AssetViewer、動畫工具Animation Tool和場景編輯器Scene Designer。主要的技術支持有場景圖構造Scene Graph、渲染系統(tǒng)Frame Rendering、材質(zhì)系統(tǒng)Material/Shader/Te*ture、多線程管理系統(tǒng)Floodgate、幾何模型系統(tǒng)NiMesh、動畫系統(tǒng)Animation、物理系統(tǒng)Ph
25、ysics。但其缺乏之處在于:游戲引擎價格偏高,適用于公司團隊,不適合個人開發(fā)。Bigworld的主要特點:1、低風險、低投資集成度高。2、多進程,腳本使用方便,Server間的跨進程通訊被隱藏性好。3、使用C+開發(fā)的,使用的效勞器是Linu*,只支持RedHat,而且核心代碼,即動態(tài)均衡負載代碼是不提供源碼的。4、不是針對地圖為單元,將地圖為單元分擔到獨立進程中去管理的。但其缺乏之處在于:隱藏細節(jié)多造成修改上的難度大有局限性,支持的平臺不是很多。Ogre的主要特點:1、全面支持Windows,Linu*以及Mac OS *平臺。2、構架簡單支持自動渲染與剪裁。3、支持多種圖片格式以及多種著色
26、語言。4、物理系統(tǒng)強大光影效果突出。5、支持的高級插件較多。6、免費產(chǎn)品更受個體開發(fā)用戶追捧。但其缺乏之處在于:適合pc端網(wǎng)游,支持的平臺不多,手機網(wǎng)游上欠缺。1.6 開發(fā)工具本單元就先簡單介紹下此款游戲開發(fā)所用的語言、技術或工具,對于它們的詳細定義就不多做解釋。Visual studio 2008:微軟公司推出的開發(fā)環(huán)境,負責本次游戲的邏輯開發(fā)。Photoshop:Adobe Photoshop,簡稱PS,是一個由Adobe Systems開發(fā)和發(fā)行的圖像處理軟件。Photoshop主要處理以像素所構成的數(shù)字圖像。使用其眾多的編修與繪圖工具,可以更有效的進展圖片編輯工作。Unity3d:un
27、ity3D是由Unity Technologies開發(fā)的一個讓玩家輕松創(chuàng)立諸如三維視頻游戲、建筑可視化、實時三維動畫等類型互動容的多平臺的綜合型游戲開發(fā)工具,它建立在微軟新一代.net平臺構架上,是一個全面整合交互強的專業(yè)游戲引擎。C#、javascript:是unity3d客戶端運行的語言,用于提高系統(tǒng)與用戶的交互性。2可行性分析要求2.1技術可行性Unity3d游戲制作引擎運用方式分別有單機獨立版和網(wǎng)絡版,本次課題使用的是單機獨立版。在使用unity3d格式轉(zhuǎn)換插件設置游戲的背景信息和動作信息后就可以對游戲進展導出。Unity3d格式轉(zhuǎn)換插件可以導出的可執(zhí)行文件為e*epc版格式,或apk
28、手機客戶端。在游戲的導出之時unity3d本身自帶有壓縮處理,一般來說能將30M左右的文件轉(zhuǎn)換為4M左右。在網(wǎng)絡上也可以滿足傳輸需求,在本地端更是方便。在本款游戲的設計過程中本人也遇到過各種技術難題,但是經(jīng)過努力還是找到了一定的解決方法。其中最重要的技術歸納為畫面效果的設置、GUI功能和功能代碼上。2.2 經(jīng)濟可行性由于unity3d導出的文件在本地生成可執(zhí)行文件e*e,只要玩家拷貝一份游戲的運行客戶端便可運行;固不存在增加網(wǎng)絡本錢的問題,解決了網(wǎng)絡資源或費用上的消耗,而基于unity3d引擎平臺的跨平臺性、互操作性強,它可以支持windows 、vista、*p、win7等操作系統(tǒng)而其中最最
29、方便的是建模跟引擎的編程模塊在用游戲引擎開發(fā)時,也比其他的游戲引擎更廉價,這樣就能到達我們所追求的性價比、成效更高。2.3 操作可行性Unity3d 4.0本身自帶的模塊和控件使得其導出的e*e自帶有文件功能,就好比給你一個壓縮包,你解壓后便可安裝使用。并且能表達出它最人性化的一面,例如pc版本的操作上可以分辨率調(diào)試,此外在安卓手機上的apk文件需要適配器等功能,在管理上也像其他軟件一樣,即開即用不耗用存,而如果你本身想使用網(wǎng)絡端,也只需要去網(wǎng)絡上下載一個適用于你unity版本網(wǎng)頁插件并安裝它,便可到達你所需要的效果,并且這個網(wǎng)絡端插件可以適用*p、win7、vista。最后一方面是界面的風格
30、上的設計,本款游戲在界面上采用簡單的button控件設置,使用戶清晰直觀、容易上手。2.4可操作的平臺如圖2-1到2-3圖2-1 蘋果系統(tǒng) 圖2-2 安卓系統(tǒng) 圖2-3 windows系統(tǒng)3游戲的方案設計3.1 游戲構造方案設計游戲的背景是以輕松、休閑、娛樂為基調(diào),針對的是擁有空閑時間來緩解壓力、調(diào)整自我的工作人群而設計的二維趣味游戲。本次游戲設計了三個模式。分別為帶有適配器的e*e (pc版)、帶有分辨率控制的e*epc版、以及適合安卓系統(tǒng)的手機apk版本。運用不同的版本使得用戶端在運行游戲時可以呈現(xiàn)多種選擇。3.2游戲體系劃分構造本次游戲主要劃分三個局部:分別為1、系統(tǒng)入口 2、登入界面3
31、、關卡音效等三局部。(如表3-1,3-2所示)圖3-1 體系劃分圖 3-2 版本分塊3.3游戲的各功能劃分游戲的四大組成模塊:系統(tǒng)入口pc版、登入界面、背景音效、關卡設計。系統(tǒng)入口:圖像配置、屏幕分辨率設置、圖像的質(zhì)量、是否使用全屏。登入界面:gui界面,游戲窗口。音效背景:利用button控件對游戲的音效控制、背景導入。關卡設計:隨機關卡、順序關卡、重玩關卡。3.4游戲總體預覽(如圖3-3)憤怒的小鳥圖像配置系統(tǒng)入口屏幕分辨率圖像質(zhì)量是否全屏登入界面音效背景游戲窗口Gui界面游戲中音效控制游戲前音效控置制圖片導入圖片美化順序關卡隨機關卡關卡設計重玩關卡圖3-3 總體構造4詳細設計4.1 框架
32、流程見圖4-1憤怒的小鳥系統(tǒng)入口圖像配置、屏幕分辨率、圖像質(zhì)量、是否全屏登入界面音效背景關卡設計GUI界面、游戲進入窗口背景圖片美化、背景圖片導入、音樂的導入、音樂的控制隨機關卡、順序關卡、重玩本關退出游戲 N Y N Y N Y N Y圖4-1 系統(tǒng)框架圖4.2 開場程序這邊以pc版本的游戲為例:在開場游戲的時候我們可以對程序進展配置,如屏幕的分辨率、圖像的質(zhì)量、是否全屏等,而圖像的質(zhì)量是對于一些材質(zhì)的問題,渲染的細節(jié)主要做這些搭配。如圖4-1,4-2所示圖4-2 分辨率設置 圖4-3 圖片質(zhì)量設置4.3登入界面當用戶通過游戲的入口后,就會進入本登入界面的關卡,這個界面主要運用了button
33、控件的控制,建立了GUI設計代碼,使得用戶對本游戲有了直觀的認識。如圖4-4所示 圖4-3 界面設置4.4音效背景在unity3d的游戲操作引擎平臺上,很突出的顯示了其制作游戲的集成性,在游戲apk文件或e*e文件之前,系統(tǒng)帶有自動生成資源包的形式分配好每個模塊的音效與背景。如圖4-5,4-6所示圖4-5 音效設置圖4-6 游戲背景圖4.5關卡設計在我們的游戲啟動界面上設計有兩個關卡選擇,分別順序關卡游戲和隨機關卡游戲,而在每個關卡完畢之后設置有兩個按鈕選擇分別為重玩本關和繼續(xù)下一關;在游戲的過程中可以調(diào)整音效開關,并且可以用w、s、a、d或上下左右方向鍵控制器小鳥的方向。當你發(fā)現(xiàn)小鳥碰壁后就
34、會回到原點,在挽救到被困小鳥的時候就會進入下一個關卡。關卡如下列圖4-7至4-14圖4-7 第一關 圖4-8 第二關 圖4-9 第三關 圖4-10 第四關 圖4-11 第五關 圖4-12 第六關 圖4-13 第七關 圖4-14 下一關4.6適配器的設置適配器圖4-15的運用是unity3d 3.5.5升級到unity3d 4.0的標志,也是最根本的區(qū)別。適配器是為了所生成的apk文件運用在手機上創(chuàng)立的虛擬按鈕用來代替pc版本下游戲的控制方向鍵。圖4-155 功能實現(xiàn)與代碼分析5.1登陸界面GUIusing UnityEngine;using System.Collections;public
35、class wele : MonoBehaviour public GameObject Level_1; public GameObject myLevel; / Use this for initializationvoid Start () / Update is called once per framevoid Update () void OnWeleClick(GameObject ClickBtn) int choose = Random.Range(0,6);/定義七個隨機可選關if(ClickB = start) /如果按下的按鍵是開場FUNCTION.Set
36、Active(this.gameObject,false);if(Level_1 = null)Debug.LogError(Level_1 is Null);Else /并且第一關不為空,進入第一關FUNCTION.SetActive(Level_1,true); if (ClickB = ji*u)/如果按下的鍵是繼續(xù) FUNCTION.SetActive(this.gameObject, false); if (myLevelchoose = null) Debug.LogError(Level_+choose+ is Null); else/如果在關卡不為空的情況 FUN
37、CTION.SetActive(myLevelchoose, true);/選擇隨機關卡事件 5.2關卡設置控件using UnityEngine;using System.Collections;public classNe*t : MonoBehaviour public GameObject p_ne*t;public static GameObject CurrentLevel;/定義枚舉變量public static GameObject Ne*tLevel;public static GameObject ne*t;void Start () bird.FinshLevel = f
38、alse;ne*t = p_ne*t;/本關游戲通關,進入下一界面/ Update is called once per framevoid Update () void OnNe*tClick(GameObject ClickBtn)/判斷按鍵事件if(ClickB = ReturnPlay)/點擊了重玩按鈕if(CurrentLevel = null)/枚舉變量,判斷下一關是否為空Debug.LogError(CurrentLevel is null);/當前關卡游戲物體為空報錯Else/不為空/Application.LoadLevel(bird);bird.FinshLe
39、vel = false;/設置當前關卡完成標志量為falseFUNCTION.SetActive(CurrentLevel ,true);/激活當前關卡FUNCTION.SetActive(ne*t,false);/激死當前界面else/否則點擊下一關按鈕if(Ne*tLevel = null)/判斷下一關卡游戲物體是否為空Debug.LogError(Ne*tLevel is null !);else/Application.LoadLevel(bird);FUNCTION.SetActive(Ne*tLevel,true);/激活下一關卡FUNCTION.SetActive(ne*t,fa
40、lse);/激死當前界面5.3風箏轉(zhuǎn)向控制using UnityEngine;using System.Collections;using System;public class level_3_zhuandong : MonoBehaviour public float speed;void Start () void Update () this.transform.Rotate(0.0f,0.0f,(speed*Time.deltaTime)*-1.0f);/定義旋轉(zhuǎn)變量public class testClass /定義一個測試類public float *;public float
41、y;/控制*y軸旋轉(zhuǎn)public Vector3 pos;5.4對小鳥碰撞后的Level_3.cs腳本控制using UnityEngine;using System.Collections;public class Level_3 : MonoBehaviour public Vector3 BirdPoint;protected GameObject m_Bird;public GameObject Ne*tlevel;void Start () ButtonMassage.Down = false;ButtonMassage.Up = false;ButtonMassage.Lefe =
42、 false;ButtonMassage.Right = false;Ne*t.CurrentLevel = this.gameObject;Ne*t.Ne*tLevel = Ne*tlevel;/枚舉函數(shù)GameObject bird_p = Resources.Load(Prefab/Bird) as GameObject;m_Bird = Instantiate(bird_p) as GameObject;/實例化小鳥m_Bird.transform.parent = this.transform.GetChild(0);/設置小鳥的父物體m_Bird.transform.localPo
43、sition = BirdPoint;/記錄小鳥初始位置m_Bird.transform.localEulerAngles = new Vector3(0.0f,0.0f,0.0f);/初始化角度m_Bird.transform.localScale = new Vector3 (1.0f,1.0f,1.0f);/初始化大小void Update ()if(bird.FinshLevel)FUNCTION.SetActive(this.gameObject,false);/當碰撞到要救的小鳥后激死當前關卡FUNCTION.SetActive(Ne*t.ne*t,true);/碰撞后挽救成功進入
44、下一關或通關完畢elseif(m_Bird = null)/如果小鳥的游戲物體為空,以下代碼用來實例化小鳥游戲物體GameObject bird_p = Resources.Load(Prefab/Bird) as GameObject;m_Bird = Instantiate(bird_p) as GameObject;m_Bird.transform.parent = this.transform.GetChild(0);/.transform.GetChild(0).transformm_Bird.transform.localPosition = BirdPoint;/碰撞后加載本關,
45、小鳥回到原點m_Bird.transform.localEulerAngles = new Vector3(0.0f,0.0f,0.0f);m_Bird.transform.localScale = new Vector3 (1.0f,1.0f,1.0f);/重新定位三維坐標5.5 音效控制using UnityEngine;using System.Collections;public class Sound : MonoBehaviour bool music_conig = true;/初始為播放/ Use this for initializationvoid Start () if(
46、music_conig = true)/如果音效設置標志量為真if(this.audio.isPlaying = false)/當前沒在不放音樂this.audio.Play();/播放這個音效/ Update is called once per framevoid Update () if(music_conig = true)/如果音效設置標志量為真if(this.audio.isPlaying = false) /當前沒在播放音樂this.audio.Play();/播放這個音效else/否則if(this.audio.isPlaying = true) /當前在播放音樂this.au
47、dio.Pause();/暫停播放/點擊音樂按鈕void OnMusicClick(GameObject Btn)if(music_conig = false)/當前不在播放音樂music_conig = true;/把標志量設置成正在播放Btn.transform.GetChild(0).gameObject.Getponent().spriteName = btn_music_on;/修改音樂圖標圖片,播放提示else否則music_conig = false;/把標志量設置成不在播放Btn.transform.GetChild(0).gameObject.Getponent().spri
48、teName = btn_music_off;/修改音樂圖標圖片,關閉提示5.6 小鳥方向的控制using UnityEngine;using System.Collections;public class bird : MonoBehaviour public static bool FinshLevel = false;/是否完成了本次關卡標志量protected Vector3 BirdPoint = new Vector3 (0.0f,0.0f,0.0f);/定義一個小鳥的初始三維值void Start () FinshLevel = false;/剛進入本關設置完成標志量為假Bird
49、Point = this.transform.localPosition;/記錄小鳥初始的位置void Update () if(Input.GetKey(up)|Input.GetKey(KeyCode.W)| ButtonMassage.Up = true)/判斷按鈕是否為上的方向鍵或w鍵this.transform.localPosition += new Vector3(0.0f,250.0f*Time.deltaTime,0.0f); /三維坐標中定義Y軸為向上或向下,控制其向上行走速度,每幀+250像素if(Input.GetKey(down)|Input.GetKey(KeyCo
50、de.S)| ButtonMassage.Down = true)/判斷按鈕是否為下的方向鍵或s鍵this.transform.localPosition -= new Vector3(0.0f,250.0f*Time.deltaTime,0.0f);/三維坐標中定義y軸向上或向下,控制其向下行走速度,每幀+250像素if(Input.GetKey(left)|Input.GetKey(KeyCode.A)| ButtonMassage.Lefe = true)/判斷按鈕是否為左的方向鍵或a鍵this.transform.localPosition -= new Vector3(250.0f*
51、Time.deltaTime,0.0f,0.0f); /三維坐標中定義*軸向左或向右,控制其向左行走速度,每幀+250像素if(Input.GetKey(right)|Input.GetKey(KeyCode.D)| ButtonMassage.Right = true)/判斷按鈕是否為右的方向鍵或d鍵this.transform.localPosition += new Vector3(250.0f*Time.deltaTime,0.0f,0.0f);/三維坐標中定義*軸向左或向右,控制其向右行走速度,每幀+250像素void OnTriggerEnter(Collider other) /
52、發(fā)生碰撞時執(zhí)行的函數(shù)if( = BirdHelp)/如果碰到的是需要挽救的小鳥Destroy(this.gameObject);/刪除小鳥這個游戲物體FinshLevel = true;/闖關成功完本錢關卡的標志設置為真FUNCTION.SetActive(Ne*t.CurrentLevel, false);/激死當前關卡/Application.LoadLevel(ne*t);/激活選擇下一關或者重玩的else/否則碰到的物體是其他的this.transform.localPosition = BirdPoint;/否則的話回到原始點5.7 ButtonMassage.csusing UnityEngine;using System.Collections;public class ButtonMassage : MonoBehaviour public static bool Up = false;public static bool Down = false;public static bool Lefe = false;public static bool Right = false;void OnBirdButonPress(GameObject PressBtn)/Debug.Log(sssssssssssss
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 運輸許可九個制度
- 貨運車輛黑名單制度
- 財務付款的制度
- 甕安介紹教學課件
- 2026南海農(nóng)商銀行科技金融專業(yè)人才社會招聘參考考試試題附答案解析
- 2026山東事業(yè)單位統(tǒng)考煙臺市萊山區(qū)招聘4人參考考試試題附答案解析
- 2026北京海淀區(qū)中法實驗學校招聘備考考試試題附答案解析
- 2025-2026學年第二學期山西金融職業(yè)學院招聘校外兼職教師1人二參考考試題庫附答案解析
- 2026年安康市人民檢察院招聘(8人)參考考試試題附答案解析
- 2026重慶飛駛特人力資源管理有限公司人工智能訓練項目招聘5人參考考試試題附答案解析
- 2025-2030泉州市鞋類制造行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 百師聯(lián)盟2025-2026學年高三上學期1月期末考試俄語試題含答案
- 2026陜西省森林資源管理局局屬企業(yè)招聘(55人)備考題庫及答案1套
- 2025-2026學年人教版高二物理上學期期末模擬卷(含答案)
- 涉密部門保密季度檢查表及規(guī)范流程
- 病種成本核算與臨床路徑精細化管理
- 項目管理專員年底工作總結及2026年項目管理計劃
- 臨床重點專科檢驗科評分標準與評估報告
- 飲片物料管理培訓
- 2025年東北三省四市教研聯(lián)合體高考模擬試題(二)語文
- 福建省初中畢業(yè)升學體育考試發(fā)展歷程回顧與展望
評論
0/150
提交評論