ios遊戲開發 Sprite Kit教程:初學者 1

孫啟超發表於2013-10-13

注:本文譯自Sprite Kit Tutorial for Beginners

目錄

  • Sprite Kit的優點和缺點
  • Sprite Kit vs Cocos2D-iPhone vs Cocos2D-X vs Unity
  • Hello, Sprite Kit!
  • 橫屏顯示
  • 移動怪獸
  • 發射炮彈
  • 碰撞檢測: 概述
  • 碰撞檢測: 實現
  • 收尾
  • 何去何從?

在iOS 7中內建了一個新的Sprite Kit框架,該框架主要用來開發2D遊戲。目前已經支援的內容包括:精靈、很酷的特效(例如視訊、濾鏡和遮罩),並且還整合了物理庫等許多東西。

iOS 7中附帶了一個非常棒的Sprite Kit示例工程,名字叫做Adventure。不過這個示例工程稍微有點複雜,不太適合初學者。本文的目的就是做一個關於Sprite Kit使用的初級教程。

通過本文,你可以從頭到尾的學習到如何為你的iPhone建立一個簡單又有趣的2D遊戲。如果你看過我們之前的教程:Simple Cocos2D game教程,你會發現非常的相似。

在開始之前,請確保已經安裝了最新版本的Xcode(5.X),裡面支援Sprite Kit以及iOS 7。

Sprite Kit的優點和缺點

首先,我想指出在iOS中開發2D遊戲Sprite Kit並不是唯一的選擇,下面我們先來看看Sprite Kit的一些優點和缺點。

Sprite Kit的優點:

1、它是內建到iOS中的,因此並不需要下載額外的庫或者其它一些外部依賴。並且它是由蘋果開發的,所以對於它的支援和更新我們可以放心。

2、它內建的工具支援紋理和粒子。

3、它可以讓你做一些其它框架很難做到的事情,例如把視訊當做精靈一樣處理,或者使用很酷的圖形效果和遮罩。

Sprite Kit的缺點:

1、如果使用了Sprite Kit,那麼你將被iOS生態圈所綁架,導致你無法很容易對你開發的遊戲移植到Android上。

2、Sprite Kit現在還處於初始階段,此時提供的功能還沒有別的框架豐富,例如Cocos2D。最缺的東西應該是暫不支援寫自定義的OpenGL程式碼。

Sprite Kit vs Cocos2D-iPhone vs Cocos2D-X vs Unity

此時,你可能在想“我該選擇使用哪個2D框架呢?”

這取決於你的實際情況,下面是我的一些想法:

1、如果你是一個初學者,並且只關注於iOS,那麼就使用內建的Sprite Kit吧,它非常容易學習,並且完全可以把工作做好。

2、如果需要寫自己的OpenGL程式碼,那麼還是使用Cocos2D,或者其它框架吧,目前Sprite Kit並不支援自定義OpenGL程式碼。

3、如果要進行跨平臺開發,那麼選擇Cocos2D-X或者Unity。Cocos2D-X非常出色,可以用它來構建2D遊戲。Unity則更加的靈活(例如,如果有需要的話,你可以在遊戲中新增一些3D效果)。

看到這裡,如果你還想要繼續瞭解Sprite Kit的話,請繼續往下讀吧。

Hello,Sprite Kit!

下面我們就開始利用Xcode 5內建的Sprite Kit模板來構建一個簡單的Hello World工程吧。

啟動Xcode,選擇File\New\Project,接著選中iOS\Application\SpriteKit Game模板,然後單擊Next

輸入Product Name為SpriteKitSimpleGame,Devices選擇iPhone,接著單擊Next

選擇工程儲存的路徑,然後點選Create。然後點選Xcode中的播放按鈕來執行工程。稍等片刻,可以看到如下執行畫面:

跟Cocos2D類似,Sprite Kit也是按照場景(scenes)來構建的,這相當於遊戲中的”levels”和”screens”。例如,你的遊戲中可能會有一個主遊戲區的場景,以及一個世界地圖的一個場景。

如果你觀察一下建立好的工程,會發現SpriteKit Game模板已經建立好了一個預設的場景MyScene。現在開啟MyScene.m,裡面已經包含了一些程式碼,其中將一個lable放到螢幕中,並且新增了:當tap螢幕時,會在螢幕上新增一個旋轉的飛船。

在本教程中,我們主要在MyScene中寫程式碼。不過在開始寫程式碼之前,需要進行一個小調整——讓程式以橫屏的方式執行。

……Sprite Kit教程:初學者 1 結束……

相關文章