999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

海豚保衛(wèi)戰(zhàn)2D 游戲在Unity3D 下的開發(fā)

2022-07-08 03:04:34何小慧廖曉芳關(guān)韻婷
電子技術(shù)與軟件工程 2022年1期
關(guān)鍵詞:按鈕界面人類

何小慧 廖曉芳 關(guān)韻婷

(廣東外語外貿(mào)大學(xué)南國商學(xué)院 廣東省廣州市 510545)

信息時(shí)代的到來給人們增加了更多選擇的可能性。Unity3D 作為當(dāng)今游戲開發(fā)的主流工具,被越來越多的游戲公司所青睞,具有四大不可忽略的優(yōu)勢:能跨平臺(tái)發(fā)布、2D 和3D 自由轉(zhuǎn)換、易學(xué)易用、擁有超高效能。日后的發(fā)展前景不可估量,在對(duì)Unity3D 深入認(rèn)識(shí)中,有更多人選擇Unity3d 進(jìn)行2D 開發(fā)[1]。

《海豚保衛(wèi)戰(zhàn)》此款游戲以短小的故事引出游戲背后的深意:海豚灣被襲擊,海豚家族浴血奮戰(zhàn),慌亂中走失的小海豚dolphin 幸免于難,慢慢長大,踏上保護(hù)海豚灣家園的路!故事簡單卻給人憐惜又充滿浴血奮戰(zhàn)的氣息[2]。

1 研究方向和目標(biāo)

《海豚保衛(wèi)戰(zhàn)》是以海洋保護(hù)為主題開發(fā)的一款2D 游戲。這一主題確定源于人們對(duì)大自然的不敬畏。人類怎么對(duì)待大自然,大自然也會(huì)以另類的方式對(duì)待人類。

氣溫升高,冰雪消融,對(duì)動(dòng)物來說幾乎是滅頂之災(zāi)。南極的企鵝和北極的北極熊都瀕臨滅絕。更壞的消息是,有科學(xué)家在青藏高原冰核樣本中,發(fā)現(xiàn)了古老病毒存在的證據(jù)。其中28 種是新病毒。在全球變暖導(dǎo)致世界各地的冰川縮小的狀態(tài)下,被封存了數(shù)萬年乃至數(shù)十萬年的微生物和病毒將可能被釋放出來。在大自然的報(bào)復(fù)中,人和自然的相處,我們是否得以認(rèn)真反思。而海豚也是其中的犧牲者。

近年來,新聞報(bào)道了許多關(guān)于海豚自殺的事件,頓時(shí)引起大眾的關(guān)注。許多人感到唏噓不解:為什么海豚選擇集體擱淺自殺呢?

在人類科技日新月異地發(fā)展中,人類利用海洋資源的能力不斷提高,然而也極大地破壞了海洋環(huán)境:聲納探測儀等的運(yùn)用產(chǎn)生海洋噪聲從而影響部分海洋生物機(jī)能的正常使用,比如海豚的回聲定位系統(tǒng)出現(xiàn)紊亂;人類產(chǎn)生的各種化學(xué)垃圾流入海里造成海水污染,海洋生物發(fā)生病變……人類對(duì)海洋生物最直接的傷害就是買賣屠殺,海豚肉是一種美味的食物,巨大的市場需求讓不法分子冒險(xiǎn)大量捕殺。

在我們的認(rèn)知中,海豚是多么善良聰明的生物,從古至今流傳著許多海豚救人的傳說。它們不僅能救人于危難之際,而且是個(gè)天才的表演家。但是人類對(duì)海豚的殺戮卻從未停斷。我感受到人類的可怕,感受到海豚的呼救——以自殺的方式引起關(guān)注。所以我想要以教育游戲的形式給人類的內(nèi)心沖擊力和觸動(dòng)感,通過海豚保衛(wèi)的決心引起人類的關(guān)注。與救人形成對(duì)比,讓人類意識(shí)到人類行為對(duì)海豚及海洋世界的傷害,呼吁人類保護(hù)海洋世界。

2 系統(tǒng)設(shè)計(jì)

2.1 前期準(zhǔn)備

構(gòu)建大致想法的框架后,進(jìn)行相關(guān)資料的大量收集和閱讀素材的參考,開始輯寫游戲策劃書。通過對(duì)游戲競品的對(duì)比分析和思考,將有用的信息融入到策劃中,形成模塊化的文字內(nèi)容,不斷完善游戲創(chuàng)意設(shè)計(jì)。利用繪圖軟件以及數(shù)位板,設(shè)計(jì)出海豚主角形象、游戲名字、游戲海洋場景、水中的人、海洋動(dòng)植物、游戲排行榜、按鈕等游戲素材[3],分析結(jié)果如表1 所示。

表1:《海豚保衛(wèi)戰(zhàn)》與競品的多維度對(duì)比分析

(1)準(zhǔn)備游戲資源。素材準(zhǔn)備是游戲開始的基礎(chǔ)。貼圖資源來自聯(lián)想創(chuàng)作;音效資源通過網(wǎng)絡(luò)搜索獲取適合的音頻素材。《海豚保衛(wèi)戰(zhàn)》里繪制了差不多50 張圖片素材,使用了6 種游戲聲音。

(2)設(shè)置游戲場景。進(jìn)入游戲開發(fā)工作,前期工作是設(shè)計(jì)游戲中的所有場景,包括Init 界面背景和游戲場景。根據(jù)海洋世界的環(huán)境,以及海豚的生存環(huán)境,自主創(chuàng)作出了符合主題和游戲中心思想的畫面。

(3)移動(dòng)的地面以及障礙物。游戲通過地面和障礙物的循環(huán)移動(dòng),海豚固定在一個(gè)合適的位置,形成相對(duì)運(yùn)動(dòng),顯得主角是在不停地游動(dòng)和跳動(dòng)。

(4)準(zhǔn)備游戲Player,即海豚。在對(duì)比中,了解到簡單易上手的游戲具有更廣的受眾面,吸引力更強(qiáng)。所以,我們?yōu)橛螒蜃髌吩O(shè)計(jì)出了海豚專屬的“海豚跳”動(dòng)作動(dòng)畫素材。

(5)游戲開始頁面。游戲不是必須要有故事,然而游戲一般會(huì)講述一個(gè)故事。歡迎頁面是一段簡短有趣的視頻,作為過場動(dòng)畫,講述了整個(gè)游戲的故事背景。

(6)游戲登錄注冊界面。一個(gè)完整的游戲少不了登錄注冊界面。通過登錄注冊賬號(hào),玩家擁有了這個(gè)通行認(rèn)證,游戲的過程就能被記錄下來。這是對(duì)游戲玩家身份的認(rèn)可,讓玩家更加享受游戲中的自我滿足感。

(7)生成的游戲額外獎(jiǎng)勵(lì)。“人”在游戲畫面中隨機(jī)出現(xiàn),作為一種獎(jiǎng)勵(lì)得分物體。海豚通過觸碰“人”實(shí)現(xiàn)海豚救人的行為,游戲繼而對(duì)這種行為做出獎(jiǎng)勵(lì),以此在游戲中弘揚(yáng)善良的美德。

(8)游戲主角得分與死亡。海豚與叉子是互斥關(guān)系。海豚只有越過高低不一的叉子才會(huì)不斷通關(guān)得分,獲得相應(yīng)等級(jí)的勛章獎(jiǎng)勵(lì),否則,海豚生命只有一次,碰到叉子立刻死亡。

2.2 中期程序設(shè)計(jì)

在unity 軟件中創(chuàng)建工程,全部游戲所需素材導(dǎo)入以后,搭建UI、制作動(dòng)畫、創(chuàng)建界面;設(shè)置圖層層次、海豚登場、封裝輸入;玩家登錄與注冊賬號(hào)、消息框提示狀態(tài);叉子循環(huán)隨機(jī)、人循環(huán)隨機(jī)、背景隨機(jī);得分救人、碰撞檢測、海豚死亡;分?jǐn)?shù)結(jié)果顯示、+5 分動(dòng)態(tài)顯示、得分滑動(dòng)條動(dòng)態(tài)變化;排行榜更新重置、不同游戲結(jié)果等級(jí)徽章獎(jiǎng)勵(lì)、游戲重來;添加音效、添加過場動(dòng)畫等,所有過程相關(guān)代碼寫入,有計(jì)劃有步驟地進(jìn)行著游戲設(shè)計(jì)與實(shí)現(xiàn)。

3 功能實(shí)現(xiàn)

3.1 設(shè)置游戲開場動(dòng)畫

利用pr 制作了本游戲的故事背景視頻。將視頻導(dǎo)入到工程的Accest 中,并放入場景中,利用音效組件設(shè)置OnClick 即可自動(dòng)播放。

游戲起始,隨即一陣歡快愉悅的背景音樂響起,小海豚一家在大海里歡快地嬉戲著。可是有一天,一聲槍響,突然來了艘人類的船,人類用魚叉往大海里的海豚刺去。海豚家族幾乎全部死亡,小海豚的爸爸媽媽勇敢犧牲,保護(hù)了小海豚安全逃離。小海豚不忘海豚爸爸媽媽的囑托,長大以后踏上了保衛(wèi)家園使命的道路。

3.2 數(shù)據(jù)的讀寫和實(shí)時(shí)更新

將畫面的背景的不透明度調(diào)低,達(dá)到一種游戲預(yù)備啟動(dòng)的效果,使玩家在游戲緩沖區(qū)漸進(jìn)狀態(tài)慢慢適應(yīng)。

通過編寫程序?qū)Ρ龋l(fā)現(xiàn)MySql 和sql 的Helper 類太過于復(fù)雜,所以我后來選擇了相對(duì)簡單的fileStream 文件流寫入和讀取方式。當(dāng)沒有用戶名時(shí),需要先注冊一個(gè)賬號(hào),利用密碼的格式特殊性,添加了是否顯示密碼的功能。當(dāng)注冊以后,用戶名和密碼就會(huì)保存到txt 文件中。下次登錄,數(shù)據(jù)庫里就自動(dòng)留有信息供用戶識(shí)別了。當(dāng)點(diǎn)擊登錄按鈕,界面會(huì)跳轉(zhuǎn)到Init 界面準(zhǔn)備開始游戲。

從開場動(dòng)畫跳轉(zhuǎn)至新的場景,游戲畫面首先顯示登錄界面,玩家根據(jù)輸入框提示點(diǎn)擊輸入框輸入內(nèi)容,點(diǎn)擊登錄按鈕,在未注冊的情況下,此時(shí)消息框MessageUI 會(huì)彈出文本提示“沒有這個(gè)賬號(hào)”,于是點(diǎn)擊確定關(guān)閉消息提示。

在登錄界面處點(diǎn)擊注冊按鈕,此時(shí)注冊界面出現(xiàn)。玩家根據(jù)輸入框提示點(diǎn)擊輸入框輸入內(nèi)容,通過勾選是否顯示密碼的選項(xiàng)框可以設(shè)置密碼是否可見;需要注意確認(rèn)密碼和密碼這兩處的輸入內(nèi)容要一致,否則點(diǎn)擊注冊按鈕時(shí)將彈出消息提示“兩次輸入的密碼不一致”,點(diǎn)擊確定按鈕重新輸入;當(dāng)用戶已注冊,再次注冊同一用戶名時(shí),消息提示“用戶已被注冊”;注冊成功后界面會(huì)自動(dòng)跳轉(zhuǎn)到登錄界面進(jìn)行登錄操作。

繼續(xù)回到登錄界面,玩家輸入剛剛創(chuàng)建的賬戶和密碼進(jìn)行登錄。當(dāng)密碼錯(cuò)誤時(shí),消息框會(huì)自動(dòng)彈出。輸入正確以后,消息框彈出提示“登錄成功”并馬上跳轉(zhuǎn)到Init 界面準(zhǔn)備開始游戲。

3.3 設(shè)置初始化界面

在Init 界面中,植物有動(dòng)畫效果,螃蟹會(huì)走動(dòng),氣泡會(huì)上升。游戲名字會(huì)晃動(dòng),伴著有節(jié)奏的韻律,點(diǎn)擊開始游戲吧!當(dāng)不玩的時(shí)候,點(diǎn)擊退出按鈕,程序結(jié)束,退出游戲,如圖1 所示。

圖1:游戲初始化界面

3.4 設(shè)置游戲場景

游戲進(jìn)行時(shí),背景看起來是無限重復(fù)的。這是利用了橫向卷軸的方法,將兩幅一樣的地面圖像貼合在一起,讓它們看起來無縫對(duì)接。確定地面邊界常量,即地面最左邊、最右邊的數(shù)值以及中間數(shù)值,分別為 -22.35f、22.35f、0f。在游戲過程中對(duì)地面進(jìn)行越界判斷,當(dāng)邊界越過后修正,即可實(shí)現(xiàn)循環(huán)。

在游戲場景中,利用Random 類我設(shè)置了三種背景,可供系統(tǒng)隨機(jī)選擇,每輪的游戲背景都是隨機(jī)的,增加了游戲的未知冒險(xiǎn)性,給玩家?guī)砀鄻啡ぃ鐖D2 是游戲白天場景,圖3 是黃昏場景,圖4 是黑夜場景。

圖2:白天場景

圖3:黃昏場景

圖4:黑夜場景

3.5 海豚的狀態(tài)

海豚先通過animator 設(shè)置動(dòng)畫后,讓其在游戲中保持動(dòng)作。海豚實(shí)際上是不動(dòng)的。進(jìn)入Play 界面后,通過單擊鼠標(biāo)左鍵,完成“海豚跳”動(dòng)作,實(shí)現(xiàn)躲避陷阱以及觸碰救人的功能。

游戲開始時(shí),不按鼠標(biāo)左鍵的情況下,海豚可在水中自由游動(dòng),距離陷阱會(huì)有一段緩沖距離;在游戲過程中,海豚需要及時(shí)躲避陷阱(叉子)得分積蓄能量,同時(shí)選擇救人以獲得更高的分?jǐn)?shù)。海豚只有一次生命,碰到障礙物立即死亡,游戲重新開始。

3.6 障礙物生成

障礙物也是不斷循環(huán)的,叉子的隨機(jī)高度通過計(jì)算得出。先確定叉子的最低和最高高度位置隨后用Random 類實(shí)現(xiàn)高度間的隨機(jī)性,即可實(shí)現(xiàn)叉子出現(xiàn)的隨機(jī)高度。《海豚保衛(wèi)戰(zhàn)》經(jīng)過測試確定了叉子的最值:public const float MIN_Y =-0.19f;public const float MAX_Y = 2f。

3.7 游戲關(guān)卡

游戲通過一定分?jǐn)?shù)的判斷繼而確定所在關(guān)卡。當(dāng)海豚救人或越過障礙物,均可得分。滑動(dòng)條會(huì)根據(jù)分?jǐn)?shù)的多少進(jìn)行等比例地動(dòng)態(tài)增加。為方便進(jìn)行比例增加,血條是組合而成的,其中紅條是得分控制條,將其Image Type 設(shè)置為filled類型再通過代碼控制紅條的fillAmount 即可實(shí)現(xiàn)[5]。

3.8 結(jié)束界面

海豚觸碰到叉子,海豚死亡,跳轉(zhuǎn)至GameOver 界面,點(diǎn)擊再來一次按鈕可回到Init 界面。重置最高分后,最高分歸零,打破上一個(gè)最高分會(huì)出現(xiàn)皇冠。徽章根據(jù)分?jǐn)?shù)范圍確定金、銀、銅三種徽章等級(jí)。回到Init 界面,點(diǎn)擊游戲開始,繼續(xù)新一輪的游戲[4],如圖5 所示。

圖5:游戲結(jié)束界面

4 總結(jié)

通過Unity3D 軟件和編程工具的結(jié)合,可以比較輕松地實(shí)現(xiàn)2D 游戲。2D 游戲是游戲開發(fā)初學(xué)者的福音,同時(shí),相比3D 游戲,游戲的畫面能更加簡單地做出華麗的效果。這與我喜歡的繪畫和設(shè)計(jì)較相吻合。我想讓設(shè)計(jì)變得更加靈動(dòng),所以選擇了做2D 游戲[5]。

《海豚保衛(wèi)戰(zhàn)》經(jīng)過了作品創(chuàng)意、文獻(xiàn)閱讀、競品分析、方案設(shè)計(jì)、技術(shù)實(shí)現(xiàn)、產(chǎn)品測試等流程,每一步都做了許多的琢磨,以展現(xiàn)更好一點(diǎn)的游戲效果。

通過這樣一個(gè)有意義的小游戲,激起人內(nèi)心一點(diǎn)觸動(dòng),讓人類從娛樂中意識(shí)到人類行為對(duì)海豚及海洋世界的傷害,呼吁人類保護(hù)海洋世界,這是《海豚保衛(wèi)戰(zhàn)》游戲設(shè)計(jì)的意義。哪怕是再小的影響力,那也為世界的改變做出了一點(diǎn)點(diǎn)的貢獻(xiàn)力量。希望今后我們能更加完善游戲設(shè)計(jì),讓游戲變得更加系統(tǒng)化,開發(fā)出令人耳目一新的游戲。

猜你喜歡
按鈕界面人類
這些按鈕能隨便按嗎?
當(dāng)你面前有個(gè)按鈕
人類能否一覺到未來?
國企黨委前置研究的“四個(gè)界面”
人類第一殺手
1100億個(gè)人類的清明
基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開發(fā)方法研究
人機(jī)交互界面發(fā)展趨勢研究
人類正在消滅自然
奧秘(2015年2期)2015-09-10 07:22:44
手機(jī)界面中圖形符號(hào)的發(fā)展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
主站蜘蛛池模板: 国产a v无码专区亚洲av| 99色亚洲国产精品11p| 操国产美女| 国产成人综合亚洲网址| 亚洲区欧美区| 无码电影在线观看| 亚洲人成色77777在线观看| 一级福利视频| 亚洲av日韩av制服丝袜| 日韩精品专区免费无码aⅴ| 免费国产在线精品一区| 亚洲男人在线| AV无码无在线观看免费| 亚洲色成人www在线观看| 国产不卡一级毛片视频| 91青青草视频| 亚洲精品视频免费| 日本久久久久久免费网络| 欧美福利在线| 欧美日本在线一区二区三区| 97久久免费视频| 一级成人a做片免费| 999国产精品| 久久久国产精品无码专区| 日韩天堂在线观看| 婷婷色婷婷| 成人精品免费视频| www.亚洲一区| 国产乱子伦一区二区=| 在线视频97| 国内精品久久九九国产精品 | 日韩精品无码免费专网站| 午夜国产精品视频黄| 久久伊人色| 日韩欧美在线观看| 在线免费看片a| 亚洲最大情网站在线观看| 精品国产自在现线看久久| 欧美翘臀一区二区三区| 亚洲色偷偷偷鲁综合| 精品国产91爱| 日本午夜精品一本在线观看| 精品一区二区三区视频免费观看| 成人国产免费| 露脸真实国语乱在线观看| 熟妇丰满人妻av无码区| 99草精品视频| 91福利免费视频| 国产成人综合久久精品下载| 伊在人亞洲香蕉精品區| 呦视频在线一区二区三区| 国产精品永久久久久| 无码AV日韩一二三区| 国产草草影院18成年视频| 日韩小视频在线观看| 欧美笫一页| 久久成人18免费| 精品人妻一区无码视频| 人妻精品久久无码区| 亚洲人成在线免费观看| 波多野结衣亚洲一区| 99re在线观看视频| 毛片免费视频| 国产激情在线视频| 国产91久久久久久| 欧美啪啪网| 97超级碰碰碰碰精品| 国产福利免费视频| 国产激情在线视频| 亚洲aaa视频| 亚洲无码精品在线播放| 国产精品手机在线观看你懂的| 好吊色妇女免费视频免费| 青青草国产精品久久久久| 丝袜亚洲综合| 日韩在线欧美在线| 国产成人三级| 色老头综合网| 九色综合伊人久久富二代| 国产精品毛片在线直播完整版| 一级成人欧美一区在线观看| 欧美一区二区精品久久久|