Swift游戏开发经典实例(第三版)

Swift游戏开发经典实例(第三版)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
2020-03
版次: 1
ISBN: 9787519840129
定价: 98.00
装帧: 其他
开本: 16开
纸张: 胶版纸
页数: 356页
字数: 424千字
  • 本书详细介绍了iOS 游戏开发中遇到的各种问题,从架构设计到图形性能,所有内容都升级到了*的Swift版本。本书主要内容有:

      设计游戏架构,组织游戏内容。

      用UIKit编写界面、定制菜单。

      让游戏能够检测和响应用户输入。

      使用音效、音乐和语音合成。

      通过iCloud存储和访问数据。

      用SpriteKit创建2D图形及动画。

      用物理引擎模拟真实世界。

      用SceneKit创建和绘制3D场景。

      设计AI系统进行用户测试。

      添加游戏控制,扩展显示器以及增强现实。 Jonathon Manning是一位游戏设计师及程序员,他曾经参与过多个项目,从一个关于猫的视频游戏(获得过BAFTA的奖项)到实时通信软件客户端。他的 Twitter是@desplesda。Paris Buttfield-Addison是一位移动应用工程师、游戏设计师和热衷于让技术尽可能简单和吸引人的学者。他的Twitter是@parisba。Jon和Paris是Secret Lab的联合创始人,Secret Lab是位于澳大利亚塔斯马尼亚的一家独立游戏工作室。 目录



    前言 .1



    第1 章 游戏的设计 9



    1.1 设计游戏引擎 .9



    1.2 创建基于继承的设计 10



    1.3 创建基于组件的设计 12



    1.4 用 GameplayKit 创建基于组件的游戏设计 16



    1.5 计算屏幕的帧刷新时间 18



    1.6 进入和退出游戏 .19



    1.7 用定时器进行游戏的刷新 22



    1.8 每帧刷新 .23



    1.9 游戏暂停 .24



    1.10 记录游戏时间 25



    1.11 使用闭包 26



    1.12 在方法中回调闭包 29



    1.13 使用 Operation Queues .30



    1.14 延迟执行 32



    1.15 串行执行 33



    1.16 通过闭包进行数组的过滤 34



    1.17 加载游戏资源 35



    1.18 在游戏中使用单元测试 36



    .19 二维网格 39



    1.20 使用随机数 .40



    1.21 编写状态机 .42



    第2 章 视图和菜单 . 46



    2.1 使用故事板 47



    2.2 创建视图控制器 .53



    2.3 通过Segue 导航到不同屏幕 60



    2.4 使用布局约束进行布局 65



    2.5 导入图片到项目 68



    2.6 切割按钮的背景图片 70



    2.7 用UIDynamics 创建动画视图 71



    2.8 用Core Animation 移动图片.74



    2.9 旋转图片 75



    2.10 实现视图的弹起效果 77



    2.11 用UIAppearance 主题化UI 样式 79



    2.12 对UIView 进行3D 旋转 .80



    2.13 在游戏内容之上显示菜单 83



    2.14 创建高效的游戏菜单 84



    第3 章 输入 . 86



    3.1 侦测触摸 87



    3.2 处理轻触手势 .88



    3.3 在屏幕上拖动图片 .90



    3.4 识别旋转手势 .92



    3.5 识别捏合手势 94



    3.6 自定义手势 96



    3.7 在视图的指定区域识别触摸 .100



    3.8 识别摇晃手势 101



    3.9 识别设备倾斜手势 .102



    3.10 获得指北针方向 106



    3.11 获得用户的位置 108



    3.12 计算运动速度  112



    3.13 计算用户与目标的距离  113



    3.14 当用户进入或离开某个位置时获得通知 . 114



    3.15 通过地名获得坐标  118



    3.16 通过坐标获得地名  119



    3.17 将设备当作方向盘 121



    3.18 测量磁场 122



    3.19 利用输入改善游戏设计 124



    第4 章 声音  126



    4.1 用 AVAudioPlayer 播放声音 .126



    4.2 用AVAudioRecorder 进行录音 .130



    4.3 使用多个AVAudioPlayer .131



    4.4 两个声音间的淡入淡出 133



    4.5 合成语音 .136



    4.6 获知音乐程序当前播放曲目 137



    4.7 当前曲目何时改变 .140



    4.8 音乐回放控制 141



    4.9 让用户选择音乐 142



    4.10 当其他App 正在播放音乐时的操作 145



    4.11 在游戏中使用哪种声音播放模式最好 147



    第5 章 存储数据  148



    5.1 保存游戏状态 148



    5.2 在本地保存游戏得分 .150



    5.3 用 iCloud 保存游戏进度 .151



    5.4 使用iCloud 的键– 值存储 .157



    5.5 何时使用文件,何时使用数据库 159



    5.6 管理资源集 160



    5.7 用NSUserDefaults 存放数据 .162



    5.8 最佳数据存储策略 .164



    5.9 游戏中的财富值 .165



    5.10 保存到CloudKit 166



    5.11 向CloudKit 数据库中添加记录 .168



    5.12 查询CloudKit 数据库中的记录 .169



    5.13 从CloudKit 数据库中删除记录 .173



    第6 章 2D 图形和Sprite Kit  175



    6.1 熟悉二维数学 176



    6.2 创建Sprite Kit 视图 183



    6.3 创建场景 .184



    6.4 加入精灵 187



    6.5 文本精灵 .188



    6.6 获取有效字体 190



    6.7 使用自定义字体 .191



    6.8 场景切换 191



    6.9 移动精灵和标签 194



    6.10 纹理贴图精灵 197



    6.11 纹理图集 197



    6.12 形状节点 198



    6.13 混合模式 200



    6.14 对精灵使用滤镜 .201



    6.15 贝塞尔曲线 202



    6.16 烟雾、火焰和粒子特效 204



    6.17 抖动屏幕 205



    6.18 动画精灵 207



    6.19 视差滚动 208



    6.20 噪声图 215



    第7 章 物理学  217



    7.1 物理学术语和定义 .217



    7.2 为精灵添加物理特性 .219



    7.3 静止物体和运动物体 .220



    7.4 定义碰撞体的形状 .221



    7.5 速度 224



    7.6 质量、大小和密度 .224



    7.7 创建墙壁 .226



    7.8 设置重力 .227



    7.9 让物体无法旋转 .229



    7.10 改变物理模拟世界的时钟 .229



    7.11 碰撞检测 230



    7.12 查找物体 231



    7.13 连接 233



    7.14 作用力 235



    7.15 在物体上添加推进器 .236



    7.16 制造爆炸 237



    7.17 根据设备方向改变重力 239



    7.18 拖动物体 241



    7.19 创建车辆 243



    第8 章 Scene Kit . 246



    8.1 使用Scene Kit .246



    8.2 创建一个Scene Kit 场景 247



    8.3 显示3D 对象 248



    8.4 Scene Kit 的镜头 248



    8.5 创建灯光 .249



    8.6 移动 251



    8.7 使用文本节点 252



    8.8 自定义材质 252



    8.9 纹理对象 .254



    8.10 法向贴图 254



    8.11 约束对象 255



    8.12 加载3D 模型文件 256



    8.13 3D 物理学 257



    8.14 反射 258



    8.15 点击测试 259



    8.16 加载场景文件 .260



    8.17 粒子系统 260



    8.18 Metal 261



    第9 章 人工智能和行为  263



    9.1 Swift 使向量计算更轻松263



    9.2 让对象朝某个点移动 266



    9.3 跟随路径 .268



    9.4 拦截运动物体 269



    9.5 逃逸 270



    9.6 目标选择问题 271



    9.7 转向问题 272



    9.8 隐蔽点问题 273



    9.9 路径算法 274



    9.10 网格中的路径查找 279



    9.11 计算下一步问题 280



    9.12 判断对象能否“看见”其他对象 281



    9.13 用NSLinguisticTagger 作词性标注 .283



    9.14 用 AVFoundation 框架访问相机 285



    9.15 导入 Core ML 模型 288



    9.16 识别图片中的物体 289



    9.17 用人工智能增强游戏设计 293



    第10 章 使用外设  294



    10.1 检测控制器 .296



    10.2 从游戏控制器中获得输入 298



    10.3 通过AirPlay 显示游戏内容 .300



    10.4 使用扩展屏幕 301



    10.5 为不同的屏幕适配UI 303



    10.6 拖放 307



    10.7 用 UIFeedbackGenerator 实现触觉回馈 .313



    10.8 用ReplayKit 记录屏幕 315



    10.9 用ARKit 显示AR 画面 .318



    10.10 AR 场景的点击测试 322



    10.11 用 TestFight 测试 APP 325



    10.12 用Fastlane 构建和发布APP .326



    第11 章 性能和调试  327



    11.1 改善帧刷新率 .327



    11.2 快速加载关卡 .330



    11.3 解决内存不足问题 331



    11.4 查找崩溃原因 .333



    11.5 使用纹理压缩 .334



    11.6 使用watchpoint .338



    11.7 记录日志 339



    11.8 创建语音断点 .340
  • 内容简介:
    本书详细介绍了iOS 游戏开发中遇到的各种问题,从架构设计到图形性能,所有内容都升级到了*的Swift版本。本书主要内容有:

      设计游戏架构,组织游戏内容。

      用UIKit编写界面、定制菜单。

      让游戏能够检测和响应用户输入。

      使用音效、音乐和语音合成。

      通过iCloud存储和访问数据。

      用SpriteKit创建2D图形及动画。

      用物理引擎模拟真实世界。

      用SceneKit创建和绘制3D场景。

      设计AI系统进行用户测试。

      添加游戏控制,扩展显示器以及增强现实。
  • 作者简介:
    Jonathon Manning是一位游戏设计师及程序员,他曾经参与过多个项目,从一个关于猫的视频游戏(获得过BAFTA的奖项)到实时通信软件客户端。他的 Twitter是@desplesda。Paris Buttfield-Addison是一位移动应用工程师、游戏设计师和热衷于让技术尽可能简单和吸引人的学者。他的Twitter是@parisba。Jon和Paris是Secret Lab的联合创始人,Secret Lab是位于澳大利亚塔斯马尼亚的一家独立游戏工作室。
  • 目录:
    目录



    前言 .1



    第1 章 游戏的设计 9



    1.1 设计游戏引擎 .9



    1.2 创建基于继承的设计 10



    1.3 创建基于组件的设计 12



    1.4 用 GameplayKit 创建基于组件的游戏设计 16



    1.5 计算屏幕的帧刷新时间 18



    1.6 进入和退出游戏 .19



    1.7 用定时器进行游戏的刷新 22



    1.8 每帧刷新 .23



    1.9 游戏暂停 .24



    1.10 记录游戏时间 25



    1.11 使用闭包 26



    1.12 在方法中回调闭包 29



    1.13 使用 Operation Queues .30



    1.14 延迟执行 32



    1.15 串行执行 33



    1.16 通过闭包进行数组的过滤 34



    1.17 加载游戏资源 35



    1.18 在游戏中使用单元测试 36



    .19 二维网格 39



    1.20 使用随机数 .40



    1.21 编写状态机 .42



    第2 章 视图和菜单 . 46



    2.1 使用故事板 47



    2.2 创建视图控制器 .53



    2.3 通过Segue 导航到不同屏幕 60



    2.4 使用布局约束进行布局 65



    2.5 导入图片到项目 68



    2.6 切割按钮的背景图片 70



    2.7 用UIDynamics 创建动画视图 71



    2.8 用Core Animation 移动图片.74



    2.9 旋转图片 75



    2.10 实现视图的弹起效果 77



    2.11 用UIAppearance 主题化UI 样式 79



    2.12 对UIView 进行3D 旋转 .80



    2.13 在游戏内容之上显示菜单 83



    2.14 创建高效的游戏菜单 84



    第3 章 输入 . 86



    3.1 侦测触摸 87



    3.2 处理轻触手势 .88



    3.3 在屏幕上拖动图片 .90



    3.4 识别旋转手势 .92



    3.5 识别捏合手势 94



    3.6 自定义手势 96



    3.7 在视图的指定区域识别触摸 .100



    3.8 识别摇晃手势 101



    3.9 识别设备倾斜手势 .102



    3.10 获得指北针方向 106



    3.11 获得用户的位置 108



    3.12 计算运动速度  112



    3.13 计算用户与目标的距离  113



    3.14 当用户进入或离开某个位置时获得通知 . 114



    3.15 通过地名获得坐标  118



    3.16 通过坐标获得地名  119



    3.17 将设备当作方向盘 121



    3.18 测量磁场 122



    3.19 利用输入改善游戏设计 124



    第4 章 声音  126



    4.1 用 AVAudioPlayer 播放声音 .126



    4.2 用AVAudioRecorder 进行录音 .130



    4.3 使用多个AVAudioPlayer .131



    4.4 两个声音间的淡入淡出 133



    4.5 合成语音 .136



    4.6 获知音乐程序当前播放曲目 137



    4.7 当前曲目何时改变 .140



    4.8 音乐回放控制 141



    4.9 让用户选择音乐 142



    4.10 当其他App 正在播放音乐时的操作 145



    4.11 在游戏中使用哪种声音播放模式最好 147



    第5 章 存储数据  148



    5.1 保存游戏状态 148



    5.2 在本地保存游戏得分 .150



    5.3 用 iCloud 保存游戏进度 .151



    5.4 使用iCloud 的键– 值存储 .157



    5.5 何时使用文件,何时使用数据库 159



    5.6 管理资源集 160



    5.7 用NSUserDefaults 存放数据 .162



    5.8 最佳数据存储策略 .164



    5.9 游戏中的财富值 .165



    5.10 保存到CloudKit 166



    5.11 向CloudKit 数据库中添加记录 .168



    5.12 查询CloudKit 数据库中的记录 .169



    5.13 从CloudKit 数据库中删除记录 .173



    第6 章 2D 图形和Sprite Kit  175



    6.1 熟悉二维数学 176



    6.2 创建Sprite Kit 视图 183



    6.3 创建场景 .184



    6.4 加入精灵 187



    6.5 文本精灵 .188



    6.6 获取有效字体 190



    6.7 使用自定义字体 .191



    6.8 场景切换 191



    6.9 移动精灵和标签 194



    6.10 纹理贴图精灵 197



    6.11 纹理图集 197



    6.12 形状节点 198



    6.13 混合模式 200



    6.14 对精灵使用滤镜 .201



    6.15 贝塞尔曲线 202



    6.16 烟雾、火焰和粒子特效 204



    6.17 抖动屏幕 205



    6.18 动画精灵 207



    6.19 视差滚动 208



    6.20 噪声图 215



    第7 章 物理学  217



    7.1 物理学术语和定义 .217



    7.2 为精灵添加物理特性 .219



    7.3 静止物体和运动物体 .220



    7.4 定义碰撞体的形状 .221



    7.5 速度 224



    7.6 质量、大小和密度 .224



    7.7 创建墙壁 .226



    7.8 设置重力 .227



    7.9 让物体无法旋转 .229



    7.10 改变物理模拟世界的时钟 .229



    7.11 碰撞检测 230



    7.12 查找物体 231



    7.13 连接 233



    7.14 作用力 235



    7.15 在物体上添加推进器 .236



    7.16 制造爆炸 237



    7.17 根据设备方向改变重力 239



    7.18 拖动物体 241



    7.19 创建车辆 243



    第8 章 Scene Kit . 246



    8.1 使用Scene Kit .246



    8.2 创建一个Scene Kit 场景 247



    8.3 显示3D 对象 248



    8.4 Scene Kit 的镜头 248



    8.5 创建灯光 .249



    8.6 移动 251



    8.7 使用文本节点 252



    8.8 自定义材质 252



    8.9 纹理对象 .254



    8.10 法向贴图 254



    8.11 约束对象 255



    8.12 加载3D 模型文件 256



    8.13 3D 物理学 257



    8.14 反射 258



    8.15 点击测试 259



    8.16 加载场景文件 .260



    8.17 粒子系统 260



    8.18 Metal 261



    第9 章 人工智能和行为  263



    9.1 Swift 使向量计算更轻松263



    9.2 让对象朝某个点移动 266



    9.3 跟随路径 .268



    9.4 拦截运动物体 269



    9.5 逃逸 270



    9.6 目标选择问题 271



    9.7 转向问题 272



    9.8 隐蔽点问题 273



    9.9 路径算法 274



    9.10 网格中的路径查找 279



    9.11 计算下一步问题 280



    9.12 判断对象能否“看见”其他对象 281



    9.13 用NSLinguisticTagger 作词性标注 .283



    9.14 用 AVFoundation 框架访问相机 285



    9.15 导入 Core ML 模型 288



    9.16 识别图片中的物体 289



    9.17 用人工智能增强游戏设计 293



    第10 章 使用外设  294



    10.1 检测控制器 .296



    10.2 从游戏控制器中获得输入 298



    10.3 通过AirPlay 显示游戏内容 .300



    10.4 使用扩展屏幕 301



    10.5 为不同的屏幕适配UI 303



    10.6 拖放 307



    10.7 用 UIFeedbackGenerator 实现触觉回馈 .313



    10.8 用ReplayKit 记录屏幕 315



    10.9 用ARKit 显示AR 画面 .318



    10.10 AR 场景的点击测试 322



    10.11 用 TestFight 测试 APP 325



    10.12 用Fastlane 构建和发布APP .326



    第11 章 性能和调试  327



    11.1 改善帧刷新率 .327



    11.2 快速加载关卡 .330



    11.3 解决内存不足问题 331



    11.4 查找崩溃原因 .333



    11.5 使用纹理压缩 .334



    11.6 使用watchpoint .338



    11.7 记录日志 339



    11.8 创建语音断点 .340
查看详情
12
相关图书 / 更多
Swift游戏开发经典实例(第三版)
Swift 5从零到精通iOS开发训练营
张益珲
Swift游戏开发经典实例(第三版)
Swift人工智能实战:从基础理论到AI驱动的应用程序开发
[澳]马尔斯·吉尔达德(Mars Geldard)
Swift游戏开发经典实例(第三版)
Swift人工智能实用指南(影印版)
Mars、Geldard 著
Swift游戏开发经典实例(第三版)
SwiftUI自学成长笔记
刘铭 著
Swift游戏开发经典实例(第三版)
Swift从入门到精通
张亮 著
Swift游戏开发经典实例(第三版)
Sword Fighting: An Introduction to the Single-Handed Sword and Buckler
Schmidt, Herbert
Swift游戏开发经典实例(第三版)
Swim:Why We Love the Water
Lynn Sherr
Swift游戏开发经典实例(第三版)
Swift开发进阶
[美]大卫·马克 著;于鑫睿 译
Swift游戏开发经典实例(第三版)
Swift开发技术标准教程/清华电脑学堂
谢书良 编
Swift游戏开发经典实例(第三版)
Swift物联网程序设计
[美]艾哈迈德·巴克尔 著;王烈征 译
Swift游戏开发经典实例(第三版)
Swift机器学习:面向iOS的人工智能实战
[乌]亚历山大·索诺夫琴科(Alexander Sosnovshchenko) 著
Swift游戏开发经典实例(第三版)
Swimming Home
Deborah Levy
您可能感兴趣 / 更多
Swift游戏开发经典实例(第三版)
内容智能:打赢每一场运营战争(双色)(博文视点出品)
Jones(科琳・琼斯) 著;[美]Colleen、万学凡 译
Swift游戏开发经典实例(第三版)
语用学与英语(语言学及应用语言学名著译丛)
Jonathan Culpeper & Michael Haugh
Swift游戏开发经典实例(第三版)
未来银行
Jonathan McMillan
Swift游戏开发经典实例(第三版)
谱写“魔戒”传奇的人:托尔金评传(英汉对照)
Jones 著;Leslie、Ellen、舒伟 译
Swift游戏开发经典实例(第三版)
你为什么不去厕所啊?
Jonathan Farr 著;李莉 译
Swift游戏开发经典实例(第三版)
你为什么不吃饭啊?
Jonathan Farr 著;李莉 译
Swift游戏开发经典实例(第三版)
The Financial Diaries:How American Families Cope in a World of Uncertainty
Jonathan Morduch;Rachel Schneider
Swift游戏开发经典实例(第三版)
理论中的文学乔纳森.卡勒
Jonathan Culler
Swift游戏开发经典实例(第三版)
Attention, Not Self
Jonardon Ganeri
Swift游戏开发经典实例(第三版)
Coding Projects in Scratch
Jon Woodcock
Swift游戏开发经典实例(第三版)
In Parenthesis
Jones, David;Merwin, W. S.;Eliot, T.S
Swift游戏开发经典实例(第三版)
Art Information and the Internet
Jones, Lois Swan,Swan Jones, Lois