開發者經驗談:如何一天時間搞定iOS遊戲開發?
遵循一定的原則可以保證開發順利進行,最大程度避免意外情況的發生。根據我以往的經驗,如果不提前想好運用什麼技術?怎麼組合這些技術?臨時抱佛腳,刷網頁搜資訊將會耗費掉很多精力。
這篇指南會告訴你什麼時候該走哪一步,用蘋果的原生遊戲引擎SpriteKit,讓遊戲從創意轉變為現實。
1. 建立一個Project
有了一個遊戲創意之後,第一步是立刻用蘋果的開發IDE——Xcode,建立一個遊戲Project。為蘋果裝置開發App,為什麼非得用Xcode呢?因為它更簡單,更省事,更方便。
2. 設立Workspace
在Xcode裡,Workspace要求有邏輯體系(logistics),一些準備工作也必不可少,比如決定遊戲在裝置上的orientation,做一些適當的改動——取消選定portrait或landscape view,在project檔案或XCODE編輯器裡進行編輯。
3. 新增Project資源
Project資源即影像音訊檔案或其他要新增到project裡的外部檔案。簡單拖放進project導航器就可以了。
4. 改變背景顏色
這一步才真正是好戲開場。要改變背景顏色的話就得多寫幾行程式碼,保證運轉高效進行,程式設計師也更有動力繼續工作。
這一步看似不起眼,做好了卻能大大提升開發者的積極性,讓他們更加相信自己有能力為Project帶來積極的影響。
5. 為背景新增Sprite
從asset或影像資料夾裡獲取圖片,新增為遊戲背景。瞭解瞭如何新增以及安置背景sprite的位置後,就能為遊戲場景新增sprite了。
6. 新增遊戲Sprite
新增了背景sprite後,同時新增in-game sprites,也是不錯的想法。
遊戲內建sprite也會幫忙節省不少時間,讓你安安心心把注意力放在遊戲邏輯上。
7. 新增玩家控制的Sprite
新增遊戲sprite時,你說不定已經加上了玩家控制的sprite,這一招挺受用的。將兩者分開來操作主要是考慮到多數情況下,玩家控制的sprite按照我們的意願執行一個行為或位置時,可能跟遊戲內建的其他sprite有所不同。
新增遊戲邏輯
建立了自己的遊戲asset之後,就開始為遊戲新增邏輯了。在這篇指南中,我們會用到很多iOS遊戲喜歡用的“拖放”機制。
執行遊戲邏輯時,須採用“分而治之”的方法,也就是將過程分割成最小單位,分別編寫程式碼。
8. “拖放”Sprite——“拖”
I為玩家sprite執行“拖動”機制,要用到touchesBegan功能,該功能現已適用於蘋果產品。這個動作只需要輕點螢幕即可引發。
9.“拖放”Sprite——“放”
這一步會用到touchesMoved和touchesEnded功能,判斷手指什麼時候移開螢幕。
這部分我們建立選單螢幕,按鍵還有遊戲所需的使用者介面工具。
10. 建立主選單(setUp)
要建立主選單螢幕,也就是scene(場景)或一個SKNode,要求有Cocoa Touch檔案。在這篇指南里,我們用scene。
11. 呼叫主選單
建立主選單後,要呼叫主選單,才能開始運作。遊戲啟動後,應立刻呼叫主選單,作為遊戲中出現的第一個場景。
12. 新增背景Sprite
這一步跟新增遊戲場景背景sprite是一樣的。
13. 觸控開始遊戲
主選單載入後,遊戲要真正開始,只要給螢幕新增一個觸控功能就好。觸控的動作檢測到之後,呼叫載入遊戲場景,然後遊戲開始執行直到結束。
14. 返回主選單按鈕
玩家如何從遊戲場景返回主選單呢?方法是重複第13步的touch方法,但這次我們用sprite做按鍵,玩家按下按鍵之後,就能返回主選單。
15. 場景轉換
動畫讓遊戲更引人入勝,可謂錦上添花。雖然跟遊戲內容沒太大關係,但能大大提升遊戲體驗。
16. 新增一個Play按鍵
遊戲完成之後,用Sprite新增一個Play按鍵,很簡單。按下Play鍵,就能開始遊戲了。
App Store上有更多遊戲邏輯和遊戲Demo
我曾開發了一個名為Piggie Penny Pincher的iOS遊戲,App Store上有,接下來,我將和大家分享我在開發該遊戲時用到的一些解決方案。
讓遊戲動起來
18. 動畫&特效
是時候新增動畫和特效了,好讓遊戲看起來更生動一些。
運用動畫製作12條準則的任何一條,都會使你的動畫更為生動。而最簡單常用的是“擠壓與拉伸(Squash and Stretch)”,讓遊戲體驗更上一層樓。
19. 音樂和音效
最後可以為遊戲新增音樂和音效了,雖然並非或不可缺,但能讓你的遊戲更加引人入勝。
原文連結:Medium
相關文章
- 經驗分享:談談如何多快好省地開發獨立遊戲遊戲
- 獨立遊戲開發者的Kickstarter眾籌成功經驗談遊戲開發
- 印度博弈遊戲開發者的一天遊戲開發
- 程式 · 雜談 | 僅花一天時間,開發者重製 32 年前經典 Mac 應用!Mac
- 《暗影之手》開發者談獨立遊戲專案管理的10點經驗遊戲專案管理
- iOS開發經驗總結iOS
- 開發者談:懂得經營是遊戲開發環境的基本技能屬性遊戲開發開發環境
- 開發者談如何通過遊戲社群更好地理解玩家遊戲
- iOS開發經驗總結2iOS
- iOS開發經驗總結3iOS
- Android SDK 開發經驗淺談Android
- 遊戲開發者依然能從這7款經典街機遊戲中汲取經驗遊戲開發
- 遊戲開發者談在遭遇產品失敗時如何更理性地看待挫折遊戲開發
- 《休閒遊戲開發者指南》釋出,新時期的Ohayoo如何全面助力開發者?遊戲開發
- 遊戲開發經驗談(二):對戰類全球服遊戲的設計與實現遊戲開發
- 開發者談恐怖遊戲可以借鑑的Roguelike遊戲特色遊戲
- 開發者談如何讓遊戲的開發過程本身也相對有趣一些遊戲
- 開發者談遊戲設計師和玩家消費者之間的鴻溝遊戲設計師
- 遊戲開發者談遊戲行業融資時常見的五個問題遊戲開發行業
- 任天堂官方:獨立開發者如何開發、發售Switch遊戲遊戲
- 中小遊戲開發團隊如何保持創作力?<經驗篇>遊戲開發
- 開發者從QA角度談如何從測試層面優化遊戲最終體驗優化遊戲
- 開發者談切入遊戲開發市場的7個選擇視角遊戲開發
- 旅居中國的日本遊戲開發者訪談:外國人在中國的遊戲開發之路遊戲開發
- 開發十年經驗之談:如何構建自己的Java開發體系Java
- 陳昊芝談中國遊戲開發者與玩家的對立現象:開發者的遊戲理想國遊戲開發
- 開發經驗漫談 -- Git在開發流程中的運用Git
- 開發者談合格遊戲文件的基本構成要素遊戲
- PS5 獨佔遊戲《Returnal》開發者訪談遊戲
- 開發者談如何通過有效的規劃讓遊戲核心更好玩遊戲
- 開發者談如何以實際行動構建高質量遊戲遊戲
- 長文:開發者談如何進行F2P遊戲的測試發行?遊戲
- 遊戲開發中不同時區下的時間問題遊戲開發
- 開發者談設計遊戲時需要注意的7個關鍵點遊戲
- 短視訊app開發之ios小視訊開發經驗共享APPiOS
- 從0開始學遊戲開發-蔡能-極客時間遊戲開發
- 開發者談確保遊戲開發有節奏的執行力至關重要遊戲開發
- 《新神》開發者:獨立遊戲開發是種什麼樣的體驗?遊戲開發
- 獨立開發者想做全球遊戲發行?可以先找Xsolla艾克索拉談談遊戲