王語杰 楊永輝 劉子澍 趙君 楊金馨
(北方工業(yè)大學計算機學院,北京 100144)
在智能移動終端普及的當下,作為移動應用重要分支的手游產(chǎn)業(yè)全面進入井噴期。中國已經(jīng)成為亞洲乃至全球移動游戲市場規(guī)模最大、增速最快的市場,甚至有很多創(chuàng)業(yè)公司憑借手游的利潤成功上市。在這樣的市場環(huán)境下我們的游戲有這很好的發(fā)展前景。
游戲總體的設計上我們則是從時下流行的動漫元素中得到的靈感,主角揮舞巨型流星錘是從日本動畫《從零開始的異世界》中的女角色蕾姆的武器中獲得的想法,強大的反差感可以給玩家很強的視覺沖擊以及留下深刻的印象,而像素風格則是經(jīng)過我們平時的觀察發(fā)現(xiàn)這種風格的游戲在近期市場上很受歡迎,下載量頗高,且組內成員們也相對喜歡這種風格,于是便決定使用這種風格制作我們的游戲。
游戲流程如下圖1所示,后面的解說按圖中的內容進行。
圖1 《像素大亂斗》游戲流程圖
圖2 游戲邏輯
由于我們的程序以Android開發(fā)為主,所以經(jīng)過討論我們決定在使用比較目前相對流行且具有跨平臺開發(fā)功能的Unity3D游戲引擎來進行開發(fā),編程語言為C#(游戲主體)和C++(部分動態(tài)鏈接庫)。
我們的游戲主要由4個不同的場景組成,每個場景中包含著執(zhí)行不同功能的腳本、模型以及與場景功能相對應的界面,如圖2所示。
3.1.1 控制位移,縮放(3D效果的關鍵),差值過度動畫平滑
我們創(chuàng)建兩個Animation Curve一個是scale Animation Curve和position X Animation Curve,分別控制縮放和位移
時間流水線控制,我們通過把所有的Item設置好自己對應的時間流位置,每次只要一動時間流水線,然后從兩個曲線內獲得當前流水線對應的縮放系數(shù),位移系數(shù),然后設置item的位移和縮放即可。
在制作動畫部分,就是時間流水線的差值處理,使一定時間時間流水值達到目標值,如圖3所示。
3.1.2 控制層級
只有正確的層級控制,才能夠保證"不穿幫",我們采用的是list排序方法,按照每個item距離"屏幕的遠近"其實就是scale系數(shù),判斷哪個item在前,哪個在后面。
3.1.3 實現(xiàn)滾動循環(huán)
至于循環(huán)滾動,因為我們使用到了Animation Curve,先天性的動畫曲線會有三種模式一種是ping pong,loop,一種是clamp,其中我們需要的是LOOP,這就是滾動循環(huán)的關鍵點,我們的縮放曲線,位移系數(shù)曲線從0到1的效果模擬完畢,如果我們繼續(xù)向前增加時間流水值,那么進入到下一個曲線的時候,所有的i t e m都會反過來進行采樣曲線值,就能夠準確的實現(xiàn)循環(huán)效果。
圖3 曲線圖
圖4 游戲初始界面
圖5 角色選擇界面
圖6 游戲界面
游戲中,敵人會在一個以玩家所在位置為中心,一定距離為半徑的圓內的隨機位置,按照一定的頻率生成。出現(xiàn)在場景里的敵人會向玩家所在位置逼近。參考了一些網(wǎng)上其他人的做法之后,敵人刷新的頻率由一個變量my time控制。當my time增加到比預設生成頻率rate大時會生按前文所述方式生成一個敵人,之后my time一次性減小一個rate,重新開始增加。如此循環(huán)直到本局游戲結束。my time的增量由Unity自帶的Time.fixed Delta Time控制,即每次增加0.02,可以保證敵人刷新頻率穩(wěn)定,游戲過程中不會出現(xiàn)在相同時間間隔下敵人數(shù)量飄忽不定的情況,可以讓玩家有更好的游戲體驗。
武器設計部分:為了搭配這次設計的整體風格,武器方面的設計也盡量貼合像素風,通過3DSMAX進行建模,通過變形,塌陷,鏈接將零散的部分變?yōu)檎w,使用棱角分明的硬派風格表現(xiàn)武器風格
角色設計部分:本次游戲因為主要采用像素風格所以使用了一款名為magicavoxel的軟件。magicavoxel是一款專門制作像素風格模型的軟件,可以使用ATTACH工具方面的添加像素塊,根據(jù)選擇的模式不同可以輕松的繪制點、面、矩形;再利用ERASE工具配合使用可以制作鏤空等層次效果。利用PAINT工具可以對每一個像素塊進行上色。游戲中的人物制作主要就是依靠這三種工具配合使用完成的。軟件還有不同的材質貼圖,可以制作光源、水、玻璃等質感的像素塊,不過在本次制作中沒有使用到。軟件也自帶了幾種不同的渲染引擎可以達到不同的效果,也可以導出不同的格式方便使用,并可以利用插件導入unity并在里面再次編輯。
由于目前功能尚未完善,只能進行最簡單的模式,所以只添加了開始按鈕,如圖4所示。
初始擁有一個角色,其他角色需要金幣解鎖,如圖5所示。
玩家通過操作虛擬角色運動甩出流星錘進行攻擊,武器接觸到敵方坦克視為攻擊成功,得分加一同時擊飛敵方坦克,如圖6所示。
由于游戲測試次數(shù)不夠多,角色平衡性上可能還需要進行微調,目前來看難度偏低。搖桿控制角色移動時的地圖范圍判定不太完善,偶爾會出現(xiàn)卡在地圖邊緣的情況。可供選擇的武器和地圖場景現(xiàn)在由于時間精力問題還過少。
本文首先介紹了在智能終端普及且安卓操作系統(tǒng)為主流系統(tǒng)的大背景下,手游產(chǎn)業(yè)全面進入井噴期。而像素及動漫類游戲在該平臺上正值火爆,擁有廣大的玩家基數(shù)以及良好的可玩性,受到廣大90后玩家的喜愛,所以我們決定抓住這次機會,跟隨市場的腳本。本游戲是基于安卓平臺開發(fā)的軟件,能夠能夠滿足玩家隨時隨地進行該類型游戲的需求。本游戲流程條例清晰,界面制作獨具一格,可以滿足絕大多數(shù)喜愛該類型游戲的玩家的需求。
[1] 張策.基于Unity3D的三維游戲場景設計與實踐[D].合肥工業(yè)大學,2016.
[2] 楊觀.基于Unity的游戲邏輯引擎的設計與實現(xiàn)[D].哈爾濱工業(yè)大學,2015.
[3] 李雷,張俊楷.談Unity游戲開發(fā)教學改革與實施對策[J].時代教育,2015,(07):203.
[4] 韓大鵬.基于Unity3D引擎的手機游戲客戶端的研究與實現(xiàn)[D].西安電子科技大學,2014.
[5] 高楠.談第九藝術的靈魂——三維游戲角色設計[J].中國科教創(chuàng)新導刊,2014,(04):135.
[6] 陶陽.基于Unity在Android平臺上開發(fā)游戲的方法[J].電腦編程技巧與維護,2012,(19):73-77.
[7] 齊江華.游戲的靈魂——淺談游戲角色設計[J].科技信息,2009,(16):505.