一块儿学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,设置图片和填充方式

这样咱们的游戏框架就算作好了,下节咱们来开始作游戏内容

相关文章
相关标签/搜索