当前位置:首页 > 工业技术
iOS和tvOS  2D游戏开发教程
iOS和tvOS  2D游戏开发教程

iOS和tvOS 2D游戏开发教程PDF电子书下载

工业技术

  • 电子书积分:16 积分如何计算积分?
  • 作 者:(美)raywenderlich.com教程开发组著;李军,左嘉译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2017
  • ISBN:9787115442963
  • 页数:534 页
图书介绍:本书就讲解了如何利用iOS和tvOS的游戏开发,全书分为6个部分,共计29章,以开发入门、物理和节点、游戏优化、GameplayKit、高级主题、附加章节等,其中涉及Swift 2、Sprite Kit 和 GameplayKit的相关知识,帮助读者从入门开始直到完全掌握开发技巧。
《iOS和tvOS 2D游戏开发教程》目录

第一部分 基础知识 2

第1章 精灵 2

1.1 开始 2

1.1.1 通用App支持 6

1.1.2 添加图像 7

1.1.3 启动界面 8

1.2 显示精灵 11

1.2.1 创建精灵 11

1.2.2 把精灵加到场景 11

1.2.3 定位精灵 12

1.2.4 设置精灵的锚点 13

1.2.5 旋转精灵 14

1.2.6 获取精灵的大小 15

1.2.7 精灵和节点 15

1.2.8 节点和z位置 16

1.2.9 最后修整 16

1.3 挑战 17

挑战1:添加僵尸 17

挑战2:进一步的文档 18

第2章 手动移动 19

2.1 Sprite Kit游戏循环 19

2.2 移动僵尸 21

2.2.1 第1次迭代:每帧固定移动 21

2.2.2 第2次迭代:速率乘以时间增量 23

2.2.3 第3次迭代:朝着触摸的方向移动 24

2.2.4 第4次迭代:边界检测 28

2.2.5 第5次迭代:游戏区域 29

2.3 旋转僵尸 31

2.4 挑战 33

挑战1:数学工具 33

挑战2:让僵尸停下来 35

挑战3:平滑移动 35

第3章 动作 38

3.1 移动动作 38

3.2 连续动作 40

3.3 等待动作 41

3.4 运行代码块动作 42

3.5 反向动作 42

3.6 重复动作 44

3.7 定期生成 45

3.8 从父节点删除动作 46

3.9 动画动作 47

3.10 停止动作 48

3.11 缩放动画 49

3.12 旋转操作 50

3.13 组动作 51

3.14 碰撞检测 52

3.15 Sprite Kit游戏循环,第2轮 54

3.16 声音动作 55

3.17 共享动作 55

3.18 挑战 56

挑战1:ActionsCatalog演示程序 56

挑战2:一个受保护的僵尸 57

挑战3:康茄舞队 57

第4章 场景 59

4.1 获胜或失败的条件 59

4.2 创建一个新的场景 61

4.3 转换到一个场景 62

4.4 创建一个定制的场景初始化程序 63

4.5 背景音乐 65

4.6 挑战 65

挑战1:主菜单场景 66

第5章 相机 67

5.1 灯光、相机,开始 68

5.2 滚动的背景 70

5.3 不断滚动的背景 72

5.4 修改游戏设置 74

5.5 挑战 75

挑战1:修改猫女士 75

第6章 标签 77

6.1 内建字体和字体族 77

创建标签 79

6.2 给Zombie Conga添加一个标签 80

6.3 对齐方式 81

6.4 加载定制字体 83

6.5 更新标签文本 86

6.6 挑战 86

挑战1:小猫计数 86

第7章 初识tvOS 88

7.1 tvOS用户输入 88

7.2 开始 89

7.3 按钮按下 92

7.4 添加一个tvOS目标 93

7.5 修正触摸处理 97

7.6 上架图像和3D图标 99

第二部分 物理和节点 102

第8章 场景编辑器 102

8.1 开始 103

材质图册简介 104

8.2 开始使用场景编辑器 105

8.2.1 Object Library 106

8.2.2 添加和放置精灵 107

8.2.3 布置第一个场景 108

8.3 文件引用 110

8.4 动画和动作引用 112

给节点添加动作 113

8.5 关于时间线的更多介绍 114

重复动作 115

8.6 挑战 118

挑战1:进一步创建小猫动作 118

挑战2:进一步创建小猫场景 120

第9章 物理基础 122

9.1 Sprite Kit中的物理引擎 122

物理实体 123

9.2 开始 124

9.3 第一个Playground 126

9.4 创建一个Sprite Kit Playground 127

9.5 圆形实体 131

9.6 边缘闭合实体 133

9.7 矩形实体 134

9.8 定制形状的实体 134

9.9 可视化实体 135

9.10 复杂形状的实体 136

9.11 物理实体的属性 138

9.12 应用冲击 139

9.13 挑战 141

挑战1:力量 141

挑战2:体感实体 142

第10章 中级物理 143

10.1 开始 143

10.2 定制节点类 144

10.3 将精灵连接到变量 146

10.4 添加物理 147

10.4.1 在场景编辑器中创建简单实体 148

10.4.2 模拟场景 149

10.4.3 用代码创建简单实体 150

10.4.4 创建定制实体 151

10.5 SKTUtils简介 151

10.6 背景音乐 152

10.7 控制实体 152

10.7.1 分类实体 153

10.7.2 处理触摸 155

10.7.3 检测实体之间的碰撞 157

10.7.4 检测实体之间的接触 159

10.8 最终修改 161

10.8.1 添加一条游戏进行中的消息 161

10.8.2 失败场景 162

10.8.3 播放动画 164

10.8.4 获胜场景 165

10.9 挑战 166

挑战1:统计弹跳次数 167

第11章 高级物理 168

11.1 Spirt Kit游戏循环,第3轮 168

11.2 关卡2简介 170

11.3 加载关卡 171

11.4 场景编辑器,第2轮 171

弹弓 174

11.5 接合概览 175

11.5.1 固定接合 175

11.5.2 有限接合 176

11.5.3 弹性接合 176

11.5.4 别针接合 177

11.5.5 滑动接合 177

11.6 接合的应用 178

11.6.1 使用固定接合 178

11.6.2 使用弹性接合 180

11.7 Sprite Kit游戏循环,第4轮 181

11.8 限制概览 182

11.8.1 实现绳子的限制 183

11.8.2 更多限制 184

11.9 动态地创建和删除接合 184

11.10 组合形状 187

11.10.1 设计关卡3 188

11.10.2 创建组合对象 189

11.11 关卡推进 192

11.12 挑战 192

挑战1:给Cat Nap再添加一个关卡 193

第12章 裁剪、视频和形状节点 195

12.1 开始 196

12.2 裁剪节点 196

12.3 视频节点 200

12.3.1 创建一个视频节点 200

12.3.2 视频播放 202

12.3.3 开始和结束 204

12.3.4 迪斯科舞小猫 206

12.4 形状节点 208

12.4.1 添加一个形状节点 209

12.4.2 形状节点基础 209

12.4.3 添加提示箭头 211

12.5 挑战 214

挑战1:提示无处不在 214

挑战2:当fillColor遇到fillTexture 214

第13章 中级tvOS 215

13.1 添加一个tvOS目标 215

上架图像和3D图标 216

13.2 将代码移植到tvOS 218

13.3 Apple TV遥控,第2轮 220

13.3.1 TV控制第1部分:谁应该采取行动 220

13.3.2 TV控制第2部分:停留在循环中 222

13.3.3 和Apple TV模拟器交互 225

13.3.4 TV控制第3部分:点击所有内容 225

13.4 挑战 227

挑战 1:打磨Apple TV上的所有关卡 227

第三部分 果汁 232

第14章 开发Drop Charge 232

14.1 开始 232

添加图片 233

14.2 在场景编辑器中构建游戏世界 234

14.2.1 配置场景 234

14.2.2 添加背景精灵 234

14.2.3 添加前景精灵 236

14.2.4 创建平台 236

14.2.5 创建金币 237

14.3 编写游戏设置代码 238

14.3.1 添加平台 238

14.3.2 更多平台 241

14.3.3 扔炸弹 241

14.3.4 获取物理效果 242

14.3.5 碰撞检测 243

14.3.6 使用Core Motion来控制玩家 244

14.3.7 相机跟踪 245

14.3.8 让岩浆流动 247

14.3.9 重复背景、金币和平台 249

14.3.10 还有一件事情 249

14.4 挑战 250

挑战1:创建跨5块的、可破裂的平台 250

挑战2:创建一个“特殊的”金币箭头 250

挑战3:创建额外的平台和金币样式 251

挑战4:为新的覆盖对象添加代码 252

第15章 状态机 254

15.1 状态机是如何工作的 254

15.2 开始 255

15.3 状态1:等待点击 256

15.4 状态2:等待炸弹 257

15.5 状态3:玩游戏 259

更新游戏设置 260

15.6 状态4:游戏结束 261

15.7 最后修改 262

15.8 挑战 263

挑战1:一个英雄状态机 263

第16章 粒子系统 265

16.1 粒子系统是如何工作的 266

16.1.1 粒子系统理论 266

16.1.2 粒子系统的实际应用 266

16.2 粒子系统编程 267

16.2.1 粒子系统的核心属性 268

16.2.2 让模拟提前进行 270

16.2.3 粒子系统的更多核心属性 271

16.2.4 范围属性 271

16.2.5 关键帧属性 271

16.2.6 序列属性 272

16.3 可视化地创建粒子系统 273

16.3.1 创建一个SKS文件 273

16.3.2 Xcode粒子发射器编辑器 274

16.3.3 制作岩浆 275

16.3.4 加载SKS文件 276

16.3.5 持续的系统和运行一次的系统 277

16.3.6 哪里有火,哪里就会有烟 277

16.3.7 目标粒子系统 279

16.4 挑战 280

挑战1:收集常规金币的效果 280

挑战2:收集特殊金币的效果 280

挑战3:破裂平台效果 280

挑战4:玩家轨迹效果 280

第17章 点亮游戏 282

17.1 给游戏添加“果汁”的3个步骤 283

17.1.1 步骤1:角色 283

17.1.2 步骤2:交互 283

17.1.3 步骤3:5种基本的特效 284

17.2 开始 285

17.3 音乐和声音效果 285

17.3.1 创建变化的节奏 286

17.3.2 添加声音效果 287

17.3.3 最后的声音效果 288

17.4 帧动画 289

17.4.1 可视化地创建动作 289

17.4.2 通过时间线编辑 290

17.4.3 使用金币应用 291

17.4.4 用代码实现动画动作 292

17.5 粒子效果 294

17.5.1 随机爆炸 295

17.5.2 增加力量粒子效果 296

17.5.3 游戏结束了 297

17.6 屏幕效果 297

振动、振动,还是振动 298

17.7 精灵效果 299

弹跳的平台 300

17.8 最后的修改 301

17.9 挑战 302

挑战1:创建一个“挤压和拉伸”效果 302

挑战2:将Drop Charge移植到tvOS上 302

17.10 如何继续学习 302

第四部分 GameplayKit 304

第18章 实体—组件系统 304

18.1 开始 304

18.1.1 游戏层 305

18.1.2 材质图册 305

18.2 GameplayKit简介 306

18.3 实体—组件系统 307

18.4 GameplayKit的实体—组件系统 308

18.5 第一个组件 308

18.6 第一个实体 309

18.7 将实体添加到场景 310

18.8 阴影组件 312

18.9 动画组件 313

18.9.1 GKComponentSystem 316

18.9.2 添加到实体 317

18.10 重用组件 318

18.11 发射组件 320

发射炮弹 322

18.12 挑战 324

挑战1:生命值组件 325

第19章 寻路算法 328

19.1 GameplayKit中的寻路 328

19.1.1 基于网格的寻路 328

19.1.2 基于障碍物的寻路 329

19.2 塔防障碍物 329

打开GameScene.sks 329

19.3 塔防选择器动画 332

19.4 选择塔防 334

19.5 显示菜单 335

19.6 放置塔防 336

19.7 创建障碍物图形 337

19.8 将塔防添加到障碍物图形 337

19.9 用寻路算法移动实体 338

19.10 挑战 341

挑战1:更多障碍物 341

挑战2:精灵的Z位置 344

第20章 代理、目标和行为 346

20.1 GameplayKit的代理、目标和行为 346

20.2 添加代理 347

20.3 添加行为和目标 348

20.4 在代理上设置行为 349

实现GKAgentDelegate 351

20.5 音乐插曲 352

20.6 攻击波 352

20.6.1 发送攻击波 354

20.6.2 随机选取起始位置 355

20.6.3 从攻击波中删除恐龙 356

20.7 HUD 358

20.8 减少生命数 359

20.9 花钱建造塔防 360

20.10 降速效果 361

20.11 挑战 364

挑战1: TV版的Dino Defense 364

第五部分 高级话题 366

第21章 贴图地图游戏 366

21.1 Delve简介 366

21.2 开始 367

21.2.1 开始关卡构建 368

21.2.2 创建一个基本的关卡 369

21.2.3 显示关卡 369

21.2.4 添加一个相机节点 371

21.3 打造一个基于贴图的关卡 372

预先设置关卡 374

21.4 实现状态机 375

21.5 游戏需要一个英雄人物 377

21.5.1 创建精灵组件 378

21.5.2 将英雄添加到场景中 378

21.5.3 创建动画组件 380

21.5.4 添加组件系统 384

21.5.5 让英雄移动起来 385

21.5.6 通过倾斜来移动 387

21.5.7 更新动画 389

21.5.8 将相机聚焦到英雄身上 390

21.5.9 添加碰撞 390

21.6 挑战 392

挑战1:定制关卡 392

第22章 随机性 393

22.1 随机意味着什么 393

22.2 GameplayKit的随机性 394

22.2.1 随机性分布 394

22.2.2 随机性源 396

22.3 醉汉行走算法 397

22.4 开始 397

22.5 实现醉汉行走算法 401

22.5.1 更新地图生成器 402

22.5.2 到达出口 404

22.6 制作更好的关卡 406

组合分布 408

22.7 挑战 410

挑战1:随机贴图 411

第23章 程序式关卡 412

23.1 基于房间的程序式关卡设计 412

23.2 构建更好的生成器 413

构建房间 413

23.3 填充地牢 417

23.3.1 处理生命值 418

23.3.2 引入石人 420

23.3.3 创建一个武器 427

23.4 挑战 431

挑战1:难度 432

第24章 游戏控制器 433

24.1 控制器格式 434

24.2 开始 434

24.3 创建控制器管理器 436

24.3.1 指定控制 439

24.3.2 标准游戏手柄 440

24.3.3 使用控制器命令 440

24.3.4 移动控制 442

24.3.5 扩展游戏手柄 443

24.4 添加tvOS目标 444

24.5 在tvOS上支持控制器 446

24.5.1 连接到控制器 447

24.5.2 微游戏手柄 447

24.5.3 绑定控制 449

24.6 挑战 450

挑战1:暂停游戏 450

第六部分 额外章节 452

第25章 Game Center成就 452

25.1 开始 452

25.2 Game Center简介 453

25.3 配置App以使用Game Center 454

25.3.1 打开Game Center 455

25.3.2 在iTune Connect上注册App 455

25.3.3 配置Game Center成就 457

25.4 认证本地玩家 459

25.4.1 认证回调 460

25.4.2 将认证加入到游戏中 460

25.5 添加成就 463

25.5.1 为成就创建一个辅助类 463

25.5.2 将成就整合到游戏中 464

25.6 初始化内建的用户界面 466

将UI加入到游戏中 467

25.7 挑战 469

挑战1: Racing addict和成就 469

第26章 Game Center排行榜 470

26.1 支持排行榜 470

26.1.1 步骤1:认证本地玩家 470

26.1.2 步骤2:创建一个排行榜策略 470

26.1.3 步骤3:在iTunes Connect中配置排行榜 471

26.1.4 步骤4:向Game Center报告得分 474

26.1.5 步骤5:向玩家显示排行榜 476

26.2 排行榜集合 477

26.3 Game Center的安全性 479

26.3.1 提交如何工作 480

26.3.2 限制作弊 480

26.4 挑战 480

挑战1:排行榜集合 480

第27章 ReplayKit 481

27.1 ReplayKit架构 481

27.2 整合ReplayKit 482

27.2.1 步骤1:创建一个策略来开始和停止记录 483

27.2.2 步骤2:修改用户界面 484

27.2.3 步骤3:检查可用性 488

27.2.4 步骤4:开始和停止记录 491

27.2.5 步骤5:预览和分享记录 496

第28章 iAd 498

28.1 iAd简介 498

28.2 iAd是如何工作的 498

28.3 广告格式 499

28.3.1 横幅广告 499

28.3.2 间隙广告 500

28.3.3 媒介反馈广告 501

28.3.4 预滚动广告 501

28.4 整合iAd 501

28.5 加入iAd网络 501

28.6 加入iAd框架 502

28.7 显示横幅广告 504

28.8 显示间隙广告 506

28.9 iAd最佳实践 507

28.10 挑战 507

挑战1:自动显示 507

第29章 写给程序员的2D美工知识 508

29.1 选择路径:雇人还是DIY 508

29.1.1 雇佣一名美术师 508

29.1.2 自己做美工 508

29.2 如何找到并雇佣一位美术师 509

29.2.1 会议和聚会 509

29.2.2 Twitter 509

29.2.3 搜索简历 509

29.2.4 招募申请者 510

29.2.5 这真的有用吗 510

29.3 向美术师付酬 510

29.3.1 收入分成合同 510

29.3.2 固定报酬合同和分小时报酬 510

29.3.3 价格预期 511

29.4 开始 511

29.5 开始绘制草图 512

29.6 将草图导入到Illustrator中 515

29.7 用矢量线条描摹草图 517

29.7.1 编辑路径 519

29.7.2 创建复杂的线条 519

29.7.3 将线条的末端圆角化 520

29.7.4 完成轮廓 520

29.8 定制画笔宽度 520

29.8.1 为Illustrator创建一个默认的宽度样式 521

29.8.2 针对不同的线条形状,使用其他的宽度样式 521

29.9 给美工图上色 522

29.9.1 使用路径寻找器来组合形状 524

29.9.2 给眼睛上色 525

29.9.3 为某个区域上色 526

29.9.4 关于图层的一点说明 527

29.9.5 调整对象层的顺序 528

29.10 关于阴影和光线 529

29.10.1 表现深度的额外阴影细节 530

29.10.2 给轮廓上色 531

29.11 导出PNG文件 532

29.12 挑战 534

挑战1:老鼠 534

挑战2:小狗 534

相关图书
作者其它书籍
返回顶部