亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

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

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

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

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

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

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

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

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

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

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

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

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

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

        2.1 前期準(zhǔn)備

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

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

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

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

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

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

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

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

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

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

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

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

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

        3.1 設(shè)置游戲開(kāi)場(chǎng)動(dòng)畫(huà)

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

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

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

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

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

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

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

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

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

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

        圖1:游戲初始化界面

        3.4 設(shè)置游戲場(chǎng)景

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

        在游戲場(chǎng)景中,利用Random 類我設(shè)置了三種背景,可供系統(tǒng)隨機(jī)選擇,每輪的游戲背景都是隨機(jī)的,增加了游戲的未知冒險(xiǎn)性,給玩家?guī)?lái)更多樂(lè)趣,如圖2 是游戲白天場(chǎng)景,圖3 是黃昏場(chǎng)景,圖4 是黑夜場(chǎng)景。

        圖2:白天場(chǎng)景

        圖3:黃昏場(chǎng)景

        圖4:黑夜場(chǎng)景

        3.5 海豚的狀態(tài)

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

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

        3.6 障礙物生成

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

        3.7 游戲關(guān)卡

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

        3.8 結(jié)束界面

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

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

        4 總結(jié)

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

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

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

        猜你喜歡
        按鈕界面人類
        哪個(gè)是門鈴真正的按鈕
        當(dāng)你面前有個(gè)按鈕
        人類能否一覺(jué)到未來(lái)?
        國(guó)企黨委前置研究的“四個(gè)界面”
        人類第一殺手
        1100億個(gè)人類的清明
        基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開(kāi)發(fā)方法研究
        人機(jī)交互界面發(fā)展趨勢(shì)研究
        人類正在消滅自然
        奧秘(2015年2期)2015-09-10 07:22:44
        手機(jī)界面中圖形符號(hào)的發(fā)展趨向
        新聞傳播(2015年11期)2015-07-18 11:15:04
        日本a一区二区三区在线| www.日本一区| 久久男人av资源网站无码| 免费无遮挡毛片中文字幕| 亚洲加勒比无码一区二区在线播放 | 欧美大香线蕉线伊人久久| 国产乱码一区二区三区爽爽爽| 超清精品丝袜国产自在线拍| 东方aⅴ免费观看久久av| 欧美末成年videos在线观看| 亚洲欧美另类精品久久久| 国产无遮挡又黄又爽无VIP| 一区二区中文字幕蜜桃| 色婷婷久久综合中文蜜桃| 国产综合精品久久99之一| 亚洲av无码专区在线观看下载| 人人妻人人妻人人片av| 天美麻花果冻视频大全英文版| 国产成人精品午夜福利免费APP| 国模少妇无码一区二区三区| 亚洲精品女优中文字幕| 精品一区二区三区久久| 亚洲另类无码专区首页| 亚洲成在人网站av天堂| 国产精品久久久av久久久| 91精品国产闺蜜国产在线| 无人视频在线播放免费| 精品亚洲成a人在线观看| 国产办公室沙发系列高清| 国产欧美日韩午夜在线观看 | 人妻在线中文字幕视频| 亚洲一区二区三区在线最新| 成人免费播放视频777777| 国产三级久久久精品麻豆三级| 人妻少妇久久中文字幕一区二区| 亚洲Va中文字幕久久无码一区| 青青草国内视频在线观看| 国产三级av大全在线爽| 欧美人牲交| 免费无码成人av在线播放不卡| 尤物无码一区|