所屬欄目:電子技術(shù)論文 發(fā)布日期:2014-08-20 16:20 熱度:
對于獨立開發(fā)者和工作室,Unity做為大眾化開發(fā)系統(tǒng),掃除了創(chuàng)造獨特游戲的時間和成本上的障礙。使用Unity可以在創(chuàng)建在任意平臺上(Web Player,PC,MAC,Linux,iOS,Android等)吸引和愉悅玩家的游戲。
摘 要:Unity是一個用于創(chuàng)建諸如三維視頻游戲、建筑可視化、實時三維動畫等類型互動內(nèi)容的綜合型創(chuàng)作工具。Unity是一個游戲開發(fā)生態(tài)系統(tǒng):強大的渲染引擎,完全集成一整套直觀工具和快速工作流程,可以創(chuàng)建互動式3D、2D內(nèi)容;文章以一款翻轉(zhuǎn)匹配記憶游戲為例,從游戲的策劃構(gòu)思設(shè)計和程序具體實現(xiàn)等進行介紹。游戲開發(fā)人員可以基于此文章,利用Unity開發(fā)多平臺的游戲。
關(guān)鍵詞:搜論文知識網(wǎng),Unity,C#,用戶圖形界面,翻轉(zhuǎn)匹配記憶游戲
Unity的游戲腳本為基于Mono的Mono腳本,一個基于.NET Framework的開源語言,因此程序員可用C#,JavaScript等加以編寫。C#是微軟推出的一種面向?qū)ο蟮母呒壘幊陶Z言,具有適合快速上手開發(fā)的優(yōu)勢。在介紹游戲?qū)崿F(xiàn)也用C#代碼進行補充說明。翻轉(zhuǎn)匹配記憶類型游戲是一種考驗記憶力的游戲,這種游戲不僅適合小孩,也可以鍛煉成人的記憶力。本人以機器人修復(fù)游戲為例介紹如果在Unity引擎和C#語言的幫助下,開發(fā)用Web Player發(fā)布的網(wǎng)絡(luò)游戲。
1 游戲設(shè)計
1.1 玩法介紹
玩家在背面向上(未知內(nèi)容)的網(wǎng)格卡片里,通過翻開查看的方式尋找匹配的兩張卡片,并且必須同時找出來。即玩家第一次翻轉(zhuǎn)A卡片,第二次必須翻轉(zhuǎn)與A卡片匹配的B卡片,如果翻轉(zhuǎn)的是C卡片(不與A卡片匹配),則兩張卡片再次翻轉(zhuǎn)回去,呈現(xiàn)背面向上(未知內(nèi)容)的形式。用機器人修復(fù)游戲說明,玩家修復(fù)機器人的意思是:玩家第一次翻開的是一種類型機器人的部分身體,下一次必須翻開的是這種類型機器人與之配對的另一部分身體,以此用來修復(fù)機器人。當翻轉(zhuǎn)的卡片為配對卡片時,兩張卡片從游戲區(qū)域移除,當玩家移除掉所有卡片后,游戲勝利。玩家通過不停的翻轉(zhuǎn)卡片,在腦海里記憶卡片位置,從而快速找出配對卡片。
1.2 界面設(shè)計
1.2.1 游戲標題
在標題里需要有游戲名字,游戲基本背景說明,開始按鈕。在這個標題里需要用圖片的藝術(shù)形式來展現(xiàn)整體游戲風(fēng)格,以此來吸引玩家。
1.2.2 游戲區(qū)界面
游戲區(qū)主要需要確定卡片的數(shù)量,考慮到以后的擴展設(shè)計(卡片數(shù)量能方便的調(diào)整),所以需要用動態(tài)加載卡片的方式進行加載。除此之外,因為游戲標題和游戲區(qū)界面是兩個不同的場景顯示,需要有雙向的通道,在標題里有“開始按鈕”做為通向游戲區(qū)的通道,在游戲區(qū)里需要有返回標題的按鈕作為通道。
1.3 游戲關(guān)鍵判斷邏輯
游戲的關(guān)鍵是消去配對的卡片。必須設(shè)定不讓玩家翻轉(zhuǎn)超過兩張卡片,當玩家翻轉(zhuǎn)第二張卡片后,進入判斷流程:如果卡片相匹配,則消去兩張卡片,如果不匹配,則翻轉(zhuǎn)回未知狀態(tài)。之后,繼續(xù)翻轉(zhuǎn)流程。
1.4 游戲性的探索
1.4.1 游戲聲音運用
當卡片翻轉(zhuǎn)成功后,需要有提示音反饋給玩家,以此來提示配對成功,增加游戲的體驗。同時游戲進行時,增加了背景音樂來增強游戲性。
1.4.2 游戲時間限制
為了增加游戲緊張氣氛和給予玩家一定的刺激度,可以增加限定時間的設(shè)置,規(guī)定玩家必須在限定時間里完成全部配對,當增加時間限定后,可以充分起到鍛煉記憶力的目的。游戲里增加一個逐漸減少的時間條用以標識時間的流逝。
1.4.3 難度設(shè)置
為了讓游戲適合不同能力的玩家,引入難度機制。難度機制可以讓初級玩家和高級玩家體驗到游戲的樂趣。
2 游戲主要功能實現(xiàn)及運行效果
2.1 卡片類實現(xiàn)
為了實現(xiàn)游戲邏輯,定義了Card類。isFaceUp表明卡片是否為翻開狀態(tài),游戲邏輯檢測到這個狀態(tài)時,會把卡片顯示為翻開的狀態(tài)。 isMatched表明卡片是否已經(jīng)匹配成功,游戲邏輯檢測到此狀態(tài)時,在卡片位置顯示一塊白色區(qū)域,并且不能再被點擊,表明卡片已被移走。img變量記錄Assets里的資源文件的名字,用來指明顯示圖片。
設(shè)置相同的id變量在兩張匹配的卡片里,為了匹配邏輯使用。
class Card:System.Object
{public bool isFaceUp=false;//檢查是否為翻開狀態(tài)
public bool isMatched=false;//檢查是否匹配成功
public string img;//定義卡片顯示的圖片
public int id;//唯一標示卡片,為匹配卡片時使用}
2.2 隨機性放置卡片
游戲一般在每次運行時,卡片區(qū)的卡片會有不同的順序顯示,需要實現(xiàn)隨機功能來實現(xiàn)。在BuildDeck()函數(shù)里把需要顯示的卡片數(shù)加載到Deck(卡片組)里,之后用Random.Range實現(xiàn)按照隨機的順序從Deck選出卡片。
BuildDeck();
for(int i=0;i for(int j=0;j int someNum= Random.Range(0,aCards.Count);
aGrid[i,j]=aCards[someNum];aCards.RemoveAt(someNum);}}
2.3 用戶圖形界面
用Unity自帶GUI(用戶圖形界面)動態(tài)生成多個按鈕形成卡片,行數(shù)(rows)和列數(shù)(cols)需要提前設(shè)定。代碼位于OnGUI函數(shù)(程序每運行一幀會執(zhí)行)中: for(int i=0;i for(int j=0;j Texture t= Resources.Load(strShow) as Texture;
if(GUILayout.Button(t,GUILayout.Width(cardW)))
{//按鈕按下后處理邏輯}}}
2.4 游戲關(guān)鍵判斷邏輯
游戲關(guān)鍵邏輯是限制每次只能點擊2張不同的卡片,之后需要進行判斷,用一個容器來獲得這2張卡片,當下次再需要加入時,進行判斷,拒絕加入。
//判斷如果是選擇的同一張圖.不加入aCardsFlipped.
If (aCardsFlipped.IndexOf(each)<0){
aCardsFlipped.Add(each);}
if (aCardsFlipped.Count==2){
//如果有2個對象加入.不能再按鍵.
playerCanClick=false;}
2.5 選擇Web Play發(fā)布
當游戲調(diào)試通過后,在File菜單里選擇Build Setting進行設(shè)定,選擇Web Player發(fā)布,當Unity圖標在Web Player右側(cè)時代表選中。游戲運行效果截圖如下:
圖1 Web Player發(fā)布
圖2 游戲運行畫面
3 結(jié)束語
該機器人修復(fù)游戲可以在任何安裝Unity web player插件的網(wǎng)絡(luò)瀏覽器里運行,因此具有跨平臺的先天優(yōu)勢。除能實現(xiàn)基本的翻轉(zhuǎn)游戲功能以外,還能實現(xiàn)限時,難度設(shè)置,聲音提示等擴展功能。經(jīng)過實驗測試,界面美觀,結(jié)果正確,各項功能達到游戲要求。該實現(xiàn)方法可以對其他基于Unity開發(fā)的Web游戲起到拋磚引玉的作用。作者已經(jīng)發(fā)布游戲如下:讀者可以進行參考。
http://www.kongregate.com/games/Moomlight/training-game
參考文獻:
[1][美]ANDRE LAMOTHE.Windows游戲編程大師技巧[M].北京:中國電力出版社,2001.
[2][美]Ryan Henson Creighton.Unity 3D Game Development by Example Beginner's Guide[M].Packt Publishing Limited,2011.
[3][美]Will Goldstome.Unity 3.x游戲開發(fā)經(jīng)典教程[M].北京:科學(xué)出版社,2013.
文章標題:搜論文知識網(wǎng)論文發(fā)表基于Unity的Web游戲設(shè)計與實現(xiàn)
轉(zhuǎn)載請注明來自:http://www.56st48f.cn/fblw/dianxin/dianzijishu/22432.html
攝影藝術(shù)領(lǐng)域AHCI期刊推薦《Phot...關(guān)注:107
Nature旗下多學(xué)科子刊Nature Com...關(guān)注:152
中小學(xué)教師值得了解,這些教育學(xué)...關(guān)注:47
2025年寫管理學(xué)論文可以用的19個...關(guān)注:192
測繪領(lǐng)域科技核心期刊選擇 輕松拿...關(guān)注:64
及時開論文檢索證明很重要關(guān)注:52
中國水產(chǎn)科學(xué)期刊是核心期刊嗎關(guān)注:54
國際出書需要了解的問題解答關(guān)注:58
合著出書能否評職稱?關(guān)注:48
電信學(xué)有哪些可投稿的SCI期刊,值...關(guān)注:66
通信工程行業(yè)論文選題關(guān)注:73
SCIE、ESCI、SSCI和AHCI期刊目錄...關(guān)注:121
評職稱發(fā)論文好還是出書好關(guān)注:68
復(fù)印報刊資料重要轉(zhuǎn)載來源期刊(...關(guān)注:51
英文期刊審稿常見的論文狀態(tài)及其...關(guān)注:69
Web of Science 核心合集期刊評估...關(guān)注:59
電子信息論文范文
智能科學(xué)技術(shù)論文 廣播電視論文 光電技術(shù)論文 計算機信息管理論文 計算機網(wǎng)絡(luò)論文 計算機應(yīng)用論文 通信論文 信息安全論文 微電子應(yīng)用論文 電子技術(shù)論文 生物醫(yī)學(xué)工程論文 軟件開發(fā)論文
SCI期刊分析
copyright © www.56st48f.cn, All Rights Reserved
搜論文知識網(wǎng) 冀ICP備15021333號-3