一塊兒學SpriteKit遊戲開發[ 1 ]建立一個SpriteKit項目

介紹

SpriteKit是蘋果平臺上獨有的遊戲框架,能夠在Mac OS X、iOS、tvOS上方便的開發2D遊戲應用,其上手簡單、對Swift語言支持良好。儘管在跨平臺方面不如人氣頗高的Cocos2D、Unity等跨平臺遊戲框架,可是若是隻是在iOS上製做2D遊戲來講,是學習成本最低的遊戲框架了。
接下來我將和你們一塊兒探索一下SpriteKit的奇妙世界編程

First SpriteKit Game Application

Getting started

打開 Xcode,從主菜單中選擇File\New\Project...選擇iOS \Application\Game 模版並點擊Next。
圖片描述
輸入咱們的遊戲名ZombieConga,編程語言選擇Swift,遊戲技術選擇SpriteKit,設備選擇Universal。
圖片描述
如今咱們已經建立了一個Sprite Kit遊戲模版,如今咱們來運行一下這個模版
圖片描述
在Sprite Kit中,scene包括來你的app中的全部screen,scene是Sprite Kit中SKScene的子類,如今咱們的遊戲只有一個scene:GameScene,打開GameScene.swift咱們就能看到Hello world! Label和那些旋轉的飛船的代碼。如今咱們沒必要理解他們,咱們如今刪除這些代碼。僅保留以下內容:swift

import SpriteKit
class GameScene: SKScene {
  override func didMoveToView(view: SKView) {
    backgroundColor = SKColor.blackColor()
  }
}

didMoveToView()方法是展示這個場景前的方法,在這裏咱們能夠方便的作一些初始化動做,此處咱們僅將背景設置爲黑色。
因爲咱們的遊戲須要橫屏,因此咱們在項目設置中,禁止豎屏
圖片描述
SpriteKit 模版會自動建立名爲GameScene.sks.的文件,你能夠經過Xcode內置的編輯器編輯這個文件,就如同用InterfaceBuilder編輯界面同樣,咱們在這裏不使用它,因此刪除這個文件app

接下來打開GameViewController.swift文件,替換爲以下內容框架

import UIKit
import SpriteKit
class GameViewController: UIViewController {
  override func viewDidLoad() {
    super.viewDidLoad()
    let scene =
      GameScene(size:CGSize(width: 2048, height: 1536))
    let skView = self.view as! SKView
    skView.showsFPS = true
    skView.showsNodeCount = true
    skView.ignoresSiblingOrder = true
    scene.scaleMode = .AspectFill
    skView.presentScene(scene)
  }
  override func prefersStatusBarHidden() -> Bool  {
return true
} }

這樣咱們就改變了這個視圖控制器的初始化方式,先前它會經過讀取GameScene文件來初始化,修改後則是經過代碼來初始化。編程語言

Universal app support

這裏咱們看到場景的大小爲2048*1536,也就是iPad Air2的屏幕大小,這是爲了實現對小屏幕設備的適配
圖片描述編輯器

  • iPad Retina [4:3 or 1.33]: Displayed as-is to fit the 2048x1536 screen size.ide

  • iPad Non-Retina [4:3 or 1.33]: Aspect fill will scale a 2048x1536 visible area by 0.5 to fit the 1024x768 screen.佈局

  • iPhone 4S [3:2 or 1.5]: Aspect fill will scale a 2048x1366 visible area by 0.47 to fit the 960x640 screen.學習

  • iPhone 5 [16:9 or 1.77]: Aspect fill will scale a 2048x1152 visible area by 0.56 to fit the 1136x640 screen.ui

  • iPhone 6 [16:9 or 1.77]: Aspect fill will scale a 2048x1152 visible area by 0.64 to fit the 1334x750 screen.

  • iPhone 6 Plus [16:9 or 1.77]: Aspect fill will scale a 2048x1152 visible area by 0.93 to fit the 1920x1080 screen.

Adding the art

打開Assets.xcassets文件,刪除自帶的飛船圖片,隨後咱們添加本身的圖標及圖片
圖片描述

Launch screen

隨後咱們來設置Launch screen,與通常iOS應用開發同樣,咱們經過自動佈局,設置一個圖片相對四周距離爲0,設置圖片和填充方式

這樣咱們的遊戲框架就算作好了,下節咱們來開始作遊戲內容

相關文章
相關標籤/搜索