有趣的Axure案例:像素鳥游戲的設(shè)計(jì)
這是作者第三次發(fā)布有關(guān)axure游戲的內(nèi)容了,相比較前兩次而言,此次的設(shè)計(jì)更加完善,難度相應(yīng)的也要高很多。游戲基本上已經(jīng)趨于完整,加入了game over的判定,希望大家在游戲能夠獲得高分的同時(shí)也能夠?qū)W會(huì)axure的復(fù)雜用法。
作者之前已經(jīng)發(fā)布過(guò)兩款有關(guān)axure的小游戲了,即《有趣的Axure案例:打地鼠游戲的設(shè)計(jì)》,《有趣的Axure案例:釣魚游戲的設(shè)計(jì)》。如果覺得該實(shí)例的難度比較高可以嘗試之前的實(shí)例,尤其是打地鼠,實(shí)現(xiàn)起來(lái)比較簡(jiǎn)單。如果不做小錘的動(dòng)作,甚至可以直接設(shè)置地鼠為點(diǎn)擊后隨機(jī)重置,整個(gè)游戲即可以制作完成。
本實(shí)例的難點(diǎn)主要在于畫布的運(yùn)動(dòng)循環(huán)以及水管的運(yùn)動(dòng)和隨機(jī)長(zhǎng)度。最后要說(shuō)的是,本實(shí)例并不是基礎(chǔ)操作,需要有不錯(cuò)的axure基礎(chǔ)才可以制作,制作本實(shí)例應(yīng)該具備以下一些技能。
- 熟悉動(dòng)態(tài)面板,知道是state是什么意思;
- 知道函數(shù)的存在,在可以百度的情況下能夠使用函數(shù);
- 熟悉全局變量以及局部變量;
- 熟悉常用的循環(huán)觸發(fā)模式。
一、成果展示
1. 游戲結(jié)束展示
上圖是像素鳥游戲失敗之后的提示界面,可以刷新后再開始。之所以看起來(lái)gif圖很奇怪是因?yàn)槿绻耆浿疲瑘D片的體積將會(huì)達(dá)到10M以上,無(wú)法上傳,所以就有了這個(gè)ppt感的演示畫面。
2. 難度修改展示
難度修改可以通過(guò)點(diǎn)擊鍵盤上的數(shù)字1、2、3來(lái)直接進(jìn)行修改,也可以點(diǎn)擊游戲右下角的下拉菜單進(jìn)行修改。且修改是即時(shí)生效的,即修改后的游戲難度會(huì)立刻發(fā)生改變,同時(shí)分?jǐn)?shù)的評(píng)定也會(huì)隨之而發(fā)生改變。難度越高水管的高度越高,同時(shí)游戲每秒鐘得分也會(huì)隨之增加。
游戲交互:
- 點(diǎn)擊“點(diǎn)擊我向上飛”可以讓小鳥向上飛;
- 游戲開始后小鳥即自動(dòng)下墜;
- 小鳥碰到障礙物或者地面將會(huì)死亡并播放死亡效果;
- 只要游戲進(jìn)行,得分就會(huì)增加,小鳥死亡之后得分停止變化且會(huì)將得分顯示出來(lái);
- 刷新網(wǎng)頁(yè)之后可以重新開始游戲;
- 通過(guò)鍵盤上的1,2,3可以調(diào)節(jié)游戲難度,也可以通過(guò)鼠標(biāo)點(diǎn)擊選擇難度,難度選擇之后立即生效;
- 難度的增加帶來(lái)的變化就是水管的邊長(zhǎng);
- 高難度得分速度也會(huì)隨之加快,難度越大,得分越快;
- 開始挑戰(zhàn)吧!
二、設(shè)計(jì)方法
1. 基礎(chǔ)素材的引入
第一步依然是找素材,找素材的方式和以前一樣,即在百度中搜索背景,小鳥以及水管,然后將其剪裁到合適的大小并加載到axure中來(lái)。接著繪制控制小鳥的按鍵,得分面板,以及難度選擇下拉菜單。在難度下拉菜單中新建三個(gè)難度級(jí)別,依次為難度一,難度二,難度三。
2. 背景自動(dòng)循環(huán)設(shè)計(jì)
背景自動(dòng)循環(huán)的方式設(shè)置起來(lái)很簡(jiǎn)單,但是方式不是很容易想到。操作分為兩步,第一步是移動(dòng)背景圖片,第二步是將該圖片歸位。
這樣就可以給人一種似乎背景一直在移動(dòng)的感覺,當(dāng)然圖片的長(zhǎng)度需要長(zhǎng)于動(dòng)態(tài)面板的長(zhǎng)度,否則就有可能看到空白區(qū)域。當(dāng)圖片不夠長(zhǎng)的時(shí)候,可以把圖片復(fù)制并接在后面就可以了。
當(dāng)然上述方法能夠?qū)崿F(xiàn)的一個(gè)關(guān)鍵因素就是背景圖片本身是比較單調(diào)的,這樣循環(huán)利用沒有太大的問(wèn)題。如果背景圖片很復(fù)雜的話,循環(huán)的瑕疵就很嚴(yán)重了。
3. 水管的循環(huán)
水管的制作是上下分開的,因?yàn)橐紤]水管的隨機(jī)長(zhǎng)度,如果不設(shè)置隨機(jī)長(zhǎng)度,那么直接可以將其和背景綁定一次實(shí)現(xiàn)整個(gè)過(guò)程。這樣的效果比較單調(diào),但是難度將會(huì)大大減小。
相信看過(guò)之前兩個(gè)游戲?qū)嵗淖x者,已經(jīng)不會(huì)滿足于僅僅只是做一個(gè)綁定的水管效果,讓我們來(lái)做更加復(fù)雜的樣式。
這里需要用到一個(gè)以前沒有用過(guò)的功能,即觸發(fā)效果??梢钥吹皆搫?dòng)作的最后一步是鼠標(biāo)單擊時(shí),on this即一個(gè)循環(huán)觸發(fā)。shangbu是上部水管的名字,移動(dòng)方式和背景是一樣的,這樣就不會(huì)出現(xiàn)水管在背景上滑動(dòng)的情況。當(dāng)移動(dòng)到最左端的時(shí)候,復(fù)位回(800,0)然后利用隨機(jī)函數(shù)設(shè)置尺寸。
這里公式中是有l(wèi)evel這一項(xiàng)的,因此通過(guò)level的改變即可以實(shí)現(xiàn)尺寸的整體改變,下方的水管方式和上方相同。
4. 難度選擇的實(shí)現(xiàn)
上面已經(jīng)提到了尺寸設(shè)置公式里面含有l(wèi)evel,因此只要改變level的大小就可以實(shí)現(xiàn)水管長(zhǎng)度的改變,設(shè)置方法如上所示。難度三的時(shí)候level達(dá)到了1.5,即水管的長(zhǎng)度將會(huì)達(dá)到難度1的1.5倍。不過(guò)因?yàn)槠渲羞€是含有隨機(jī)函數(shù)的,所以只能說(shuō)平均長(zhǎng)度應(yīng)該是難度1的1.5倍。
5. 得分的設(shè)計(jì)
得分的設(shè)置還是相對(duì)簡(jiǎn)單的,其實(shí)就是隨著時(shí)間的自加運(yùn)算。此外,此處將level混了進(jìn)去,讓用戶的難度影響到得分速度,難度越高,得分也會(huì)越高。
6. 小鳥的設(shè)置
做到這里,基本面板就有了,但是最關(guān)鍵的像素鳥還沒有加進(jìn)來(lái)。小鳥實(shí)際上是不會(huì)進(jìn)行橫向運(yùn)動(dòng)的,因此只需要處理其y坐標(biāo)即可,方法也很簡(jiǎn)單。
通過(guò)上面的設(shè)置,小鳥將會(huì)向下運(yùn)動(dòng)。不過(guò),小鳥一直下落也是不可以的,我們還需要增加它上升的功能,即每點(diǎn)擊一次,小鳥就會(huì)向上飛一點(diǎn)。
該觸發(fā)直接設(shè)置在點(diǎn)擊的按鈕上,觸發(fā)后的動(dòng)作為小鳥在50毫秒中向上移動(dòng)50個(gè)像素,接下來(lái)就是碰撞動(dòng)作判定了。
碰撞動(dòng)作判定前兩個(gè)實(shí)例中都有,這里也一樣,即設(shè)置條件。三個(gè)條件依次為碰到上部水管,碰到下部水管,撞到地面。當(dāng)碰撞的時(shí)候,小鳥落到地面并實(shí)現(xiàn)旋轉(zhuǎn)的動(dòng)畫。
7. 游戲結(jié)束提示
將兩個(gè)提示放在合適的位置并進(jìn)行隱藏,只有在失敗的時(shí)候才觸發(fā)顯示,且將最終得分通過(guò)全局變量顯示出來(lái)。“再來(lái)一次”的顯示則延后2000毫秒,這樣的體驗(yàn)更佳。
總結(jié)
本實(shí)例的實(shí)際制作要比上面提到的復(fù)雜很多,這里僅僅是思路的表達(dá)。很多常規(guī)的操作以及具體的參數(shù),都沒有在文章之中體現(xiàn)出來(lái)。相信熟悉axure的讀者,可以按照這個(gè)思路重復(fù)出來(lái),但是如果是初學(xué)者難度就很高了。
最后希望大家能夠喜歡上axure這款最著名的原型工具。
#專欄作家#
馬璐,人人都是產(chǎn)品經(jīng)理專欄作家。關(guān)注產(chǎn)品設(shè)計(jì)以及用戶體驗(yàn),力求在技術(shù)一定的情況下將產(chǎn)品做到極致,充分發(fā)揮技術(shù)的潛能。
本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載
題圖來(lái)自作者
大佬,有沒有比這個(gè)還要簡(jiǎn)單的游戲?qū)嵗?/p>
這個(gè)算是難的了,我其他文章的游戲都要比這一個(gè)簡(jiǎn)單。
這個(gè)膩害,這個(gè)高手 ??
客氣了
樓主上面講的教程,有些步驟沒寫出來(lái),能不能寫細(xì)致一點(diǎn)或者分享一下源文件
源文件整理后統(tǒng)一放出,這不是最后一個(gè)游戲?qū)嵗?,后面還有
?? ??
圍觀大佬 ?
感謝認(rèn)可
找到了個(gè)BUG,一直點(diǎn)起飛,會(huì)飛出屏幕,是不是可以加上小鳥的Y軸限制?
能不能把Axure文件發(fā)給我學(xué)習(xí)一下啊。
是的,需要加限制哦,源文件整理后統(tǒng)一放出,這不是最后一個(gè)游戲?qū)嵗?,后面還有
常說(shuō) 產(chǎn)品人 的終極目標(biāo)是改變世界,但事實(shí)····· 改變世界留給少數(shù)那些人,其他人就負(fù)責(zé)用技能溫暖世界吧
嗯,溫暖也不錯(cuò)
體驗(yàn)地址如下:https://xntxwx.axshare.com
最新地址:https://aisph0.axshare.com
上面的地址好像小鳥不見了 ??
牛匹牛匹
謝謝認(rèn)可
?? 厲害
謝謝認(rèn)可