美文网首页
第一章:精灵

第一章:精灵

作者: KarenLoo | 来源:发表于2018-01-21 18:29 被阅读0次

    现在你知道 SpriteKit 是什么,以及为什么要使用它,是时候亲自尝试了!
    你将在这本书中建立的第一个小游戏叫僵尸康茄(Zombie Conga)。 下面是完成后的样子:

    Sprites-1.png

    在僵尸康茄中,你会扮演一个想参加派对的快乐僵尸!

    幸运的是,你所占据的海滩拥有很多猫咪。你只需要咬它们,它们就会加入你的康茄队伍。

    但要注意疯狂的猫主人!这些穿着红色衣服的女人,不允许任何人偷偷摸摸地碰她们的猫咪,她们会尽全力消灭僵尸。

    你将在接下来的六章中分阶段构建这个游戏:

    1. 第一章,精灵:你现在在这一章!通过添加精灵来开始制作游戏的旅程:背景和僵尸。

    2. 第二章,跟随手指移动:你会让僵尸跟随你的手指在屏幕上移动,学习基础的2D矢量数学知识。

    3. 第三章,动作:你将猫和疯狂的猫主人加入游戏,以及基础的碰撞检测和游戏玩法。

    4. 第四章,场景:你将在游戏中添加一个主菜单,以及胜利和失败的场景。

    5. 第五章,镜头:你将使游戏从左到右滚动,最后添加康茄队伍。

    6. 第六章,标签:你会添加标签来显示僵尸的生命值和他的康茄队伍中猫咪的数量。

    是时候开始康茄了!

    开始

    启动 Xcode 并从主菜单中选择 File > New > Project。 选择 iOS /Application/Game 模板,然后单击 Next。

    Sprites-2.png

    输入 ZombieConga 作为 Product Name,选择 Swift 作为 Language,SpriteKit 作为 Game Technology,然后单击 Next。

    Sprites-3.png

    选择硬盘上的某个位置来保存项目,然后单击 Create。 这时,Xcode 将为你生成一个简单的 SpriteKit 初始项目。

    看看 SpriteKit 做了什么。 在 Xcode 的工具栏中,选择 iPhone 8 Plus 并单击 Play。

    Sprites-4.png

    在简短的启动画面之后,你会看到一个标签,上面写着“Hello, World!”。 当您将鼠标拖过屏幕时,文字将会弹起,并出现一些旋转的圆角矩形。

    Sprites-5.png

    在 SpriteKit 中,称为场景的单个对象控制着你应用的每个“屏幕”。 场景由 SpriteKit 的 SKScene 类表示。

    现在,这个应用程序只有一个场景:GameScene。 打开 GameScene.swift,你会看到显示标签和旋转的圆角矩形的代码。

    现在无须理解这些代码 —— 你将会把它们全部删除,逐步地构建你的游戏。

    现在,删除 GameScene.swift 中的所有内容,并将其替换为:

    import SpriteKit
    
    class GameScene: SKScene {
      override func didMove(to view: SKView) {
        backgroundColor = SKColor.black
      }
    } 
    

    请注意,GameScene 是 SKScene 的一个子类。 SpriteKit 在视图中呈现场景之前调用方法 didMove(to:); 这是对场景内容进行初始设置的地方。 在这里,你只需将背景颜色设置为黑色即可。

    僵尸康茄被设计为在横屏模式下运行,所以你需要为此配置。 在项目导航栏中选择 ZombieConga project,然后选择 ZombieConga target。 转到 General 选项卡,确保只选中了 Landscape Left 和 Landscape Right。

    你在这里同时选中 Requires full screen 选框。 如果你想创建一个只支持横屏的应用程序,并且表示这个游戏不会提供多窗口支持,那么这是必需的。

    Sprites-6.png

    你还需要进行一项配置,以便应用程序可以在 iPad 上以横屏模式运行。 打开 Info.plist 并找到 Supported interface orientations (iPad)。 删除 Portrait(bottom home button) 和 Portrait(top home button),只保留横屏选项。

    SpriteKit 项目模板会自动创建一个名为 GameScene.sks 的文件。 你可以使用 Xcode 的内置场景编辑器来编辑这个文件,以可视化的方式布置你的游戏场景。 将场景编辑器想象成一个简单的 Interface Builder。

    你将在第七章“场景编辑器”中了解关于场景编辑器的信息,Zombie Conga 中你不会使用它,因为通过编写代码的方式创建精灵更容易且更有启发性。

    按住 Control 键单击 GameScene.sks,选择 Delete,然后选择 Move to Trash。 同时,也删除 Actions.sks,在这个游戏中你不需要这个文件。

    由于你不再使用这些文件,因此你必须适当修改模板代码。

    打开 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 var prefersStatusBarHidden: Bool {
        return true
      }
    }
    

    之前,视图控制器从 GameScene.sks 中加载场景,而现在通过调用 GameScene 上的初始化方法来创建场景。

    请注意,当你创建场景时,你将使用 2048x1536 大小的尺寸,并将缩放模式设置为 aspectFill。

    现在快速讨论下如何设计这款游戏以支持各种型号的设备。

    相关文章

      网友评论

          本文标题:第一章:精灵

          本文链接:https://www.haomeiwen.com/subject/axdqaxtx.html