經(jīng)驗(yàn)分享—一天時(shí)間搞定iOS游戲開(kāi)發(fā)
遵循一定的原則可以保證開(kāi)發(fā)順利進(jìn)行,最大程度避免意外情況的發(fā)生。根據(jù)我以往的經(jīng)驗(yàn),如果不提前想好應(yīng)用什么技術(shù)?如何組合這些技術(shù)?臨時(shí)抱佛腳,刷網(wǎng)頁(yè)搜信息將會(huì)耗費(fèi)很多精力。
本文就來(lái)講一講使用蘋(píng)果公司的原生游戲引擎SpriteKit開(kāi)發(fā)一款游戲都需要哪些步驟。
1.創(chuàng)建一個(gè)Project
有了游戲創(chuàng)意之后,第一步就是使用蘋(píng)果公司的開(kāi)發(fā)IDE:Xcode,創(chuàng)建一個(gè)游戲Project。為什么在開(kāi)發(fā)蘋(píng)果設(shè)備使用的App時(shí),必須要使用Xcode呢?這是因?yàn)閄code更簡(jiǎn)單,更省事,更方便。
2.設(shè)置Workspace
在Xcode里,每個(gè)Workspace要求有邏輯體系(logistics)以及一些準(zhǔn)備工作,比如決定游戲在設(shè)備上是橫版還是豎版,并做一些適當(dāng)?shù)母膭?dòng)——取消勾選橫向視圖或者縱向視圖,并在Project文件或Xcode編輯器中進(jìn)行編輯。
3.添加Project資源
Project資源即圖像音頻文件或其他要添加到project里的外部文件。僅需要簡(jiǎn)單地將其拖放到project導(dǎo)航器就可以了。
4.改變背景顏色
到這里,好戲才剛剛開(kāi)始。要改變背景顏色的話就得多寫(xiě)幾行代碼以保證程序可以運(yùn)行??梢愿咝н\(yùn)行程序就可促使開(kāi)發(fā)者更加有動(dòng)力繼續(xù)工作。這一步看似不起眼,做好了能大大提升開(kāi)發(fā)者的積極性,讓他們更加相信自己有能力為Project帶來(lái)積極的影響。
5.為背景添加Sprite
從asset或圖像文件夾里獲取圖片,并添加為游戲背景。一旦了解了如何添加以及設(shè)置背景Sprite的位置后,就能為游戲場(chǎng)景添加Sprite了。
6.添加游戲Sprite
添加了背景sprite后,就要添加游戲內(nèi)置(in-game)精靈。游戲內(nèi)置Sprite可以節(jié)省不少時(shí)間,幫助開(kāi)發(fā)者將注意力主要放在游戲邏輯上。
7.添加玩家控制的Sprite
添加游戲Sprite的同時(shí),你可能已經(jīng)加上了玩家控制的Sprite。這是行得通的。將兩者分開(kāi)操作主要是考慮到多數(shù)情況下,當(dāng)玩家所控制的Sprite按照設(shè)置的行為或位置執(zhí)行時(shí),可能跟游戲內(nèi)置的其他Sprite有所不同。
創(chuàng)建了自己的游戲asset之后,就可以開(kāi)始為游戲添加邏輯了。在這篇文章中,我們將會(huì)用到很多App Store中游戲喜歡用的“拖放”機(jī)制。
執(zhí)行游戲邏輯時(shí),須采用“分而治之”的方法,也就是將過(guò)程分割成最小單位,分別編寫(xiě)代碼。
8.“拖放”Sprite——“拖”
為玩家Sprite執(zhí)行“拖動(dòng)”機(jī)制,需要用到touchesBegan功能,該功能現(xiàn)已適用于蘋(píng)果產(chǎn)品。這個(gè)動(dòng)作只需要輕點(diǎn)屏幕即可觸發(fā)。
9.拖放”Sprite——“放”
這一步會(huì)用到touchesMoved和touchesEnded功能,判斷手指什么時(shí)候移開(kāi)屏幕。
這部分我們創(chuàng)建菜單屏幕,按鍵還有游戲所需的用戶界面工具。
10.創(chuàng)建主菜單(setUp)
要?jiǎng)?chuàng)建主菜單屏幕,也就是scene(場(chǎng)景)或一個(gè)SKNode,必須要有Cocoa Touch文件。本文中使用scene。
11.調(diào)用主菜單
創(chuàng)建主菜單后,要調(diào)用主菜單,程序才能開(kāi)始運(yùn)行。游戲啟動(dòng)后,應(yīng)立刻調(diào)用主菜單,作為游戲中出現(xiàn)的第一個(gè)場(chǎng)景。
12.添加背景Sprite
這一步跟添加游戲場(chǎng)景的背景Sprite是一樣的。
13.觸摸開(kāi)始游戲
主菜單加載完成后,只需要給屏幕添加一個(gè)觸摸功能,游戲就能真正開(kāi)始了。一旦檢測(cè)到觸摸的動(dòng)作,游戲場(chǎng)景就被調(diào)用并加載出來(lái),然后游戲開(kāi)始運(yùn)行直到結(jié)束。
14.返回主菜單按鈕
玩家如何從游戲場(chǎng)景返回主菜單呢?方法是重復(fù)第13步的touch方法,但這次我們定義一個(gè)Sprite做為按鍵,玩家按下按鍵之后,就能返回主菜單。
15.場(chǎng)景轉(zhuǎn)換
動(dòng)畫(huà)讓游戲更引人入勝,可謂錦上添花。雖然跟游戲內(nèi)容沒(méi)太大關(guān)系,但能大大提升游戲體驗(yàn)。
16.添加一個(gè)Play按鍵
游戲制作完成后,玩家需要找到一個(gè)進(jìn)入游戲的方式。很簡(jiǎn)單,使用Sprite定義一個(gè)Play按鍵,按下Play建即可開(kāi)始游戲。
App Store上有很多游戲邏輯和游戲Demo
我曾開(kāi)發(fā)了一個(gè)名為Piggie Penny Pincher的iOS游戲。接下來(lái),我將和大家分享我在開(kāi)發(fā)該款游戲時(shí)用到的一些解決方案。
讓游戲動(dòng)起來(lái)
18.動(dòng)畫(huà)&特效
是時(shí)候添加動(dòng)畫(huà)和特效了,好讓游戲看起來(lái)更生動(dòng)一些。
運(yùn)用制作動(dòng)畫(huà)的12條準(zhǔn)則中的任何一條,都會(huì)使你的動(dòng)畫(huà)更為生動(dòng)。其中最簡(jiǎn)單的準(zhǔn)則就是最常用的“擠壓與拉伸(Squash and Stretch)”,可以使游戲體驗(yàn)更上一層樓。
19.音樂(lè)和音效
最后可以為游戲添加音樂(lè)和音效了。通常開(kāi)發(fā)者們可能會(huì)忽略這一點(diǎn),但這能讓你的游戲更加引人入勝。