作品简介

从务实的角度来看,游戏开发是一种实战活动,游戏开发者在掌握了基础知识后,需要不断进行针对性的实战和思考,才能真正掌握游戏开发所需的技术。幸运的是,网络上有很多乐于分享知识的游戏从业者,他们制作了很多入门与进阶的实战教程,而且这些教程中的游戏实例紧贴近年来热门的游戏类型与风格。

《游戏设计与开发:Unity实战完全自学教程》结合了游戏设计的原则与使用Unity开发游戏的方法,精心挑选了受欢迎、有代表性的多个相对独立的游戏实例,在原开发者的协助下进行了重新优化和整理。本书在编排上符合由浅入深的学习顺序,每章有特定的游戏类型与风格,尽最大的努力满足读者学习、实战与参考的需求,帮助读者成为一名更优秀的游戏开发者。

《游戏设计与开发:Unity实战完全自学教程》适合电子游戏相关专业的学生、游戏开发初学者,以及需要进阶的游戏开发者学习。对于学生与初学者来说,本书是一本实战指南;对于需要进阶的游戏开发者来说,本书可以作为工作中的参考资料。

马遥,平时喜欢研究动态语言和算法,擅长讲解复杂的算法和概念,曾经编写过《Unity3D完全自学教程》,翻译过《游戏AI开发实用指南》。

从高中时代起就与游戏开发结下不解之缘。自2008年开始正式成为一名职业游戏开发者,参与过多款大型网络游戏的开发,也亲身经历了手机游戏的崛起。

目前热衷于桌游与开放世界游戏的设计,同时专门从事游戏开发教育工作,希望通过自己的努力,把游戏开发的知识与技术传播给更多人。期望和朋友们一起,在游戏开发的道路上继续探索,继续前进。

作品目录

  • 前言
  • 第1章 3D动作解谜游戏——《拉方块》
  • 1.1 游戏的开发背景和功能概述
  • 1.1.1 游戏开发背景简介
  • 1.1.2 游戏功能简介
  • 1.2 游戏的策划和准备工作
  • 1.2.1 游戏的策划
  • 1.2.2 开发游戏前的准备工作
  • 1.3 游戏的架构
  • 1.3.1 游戏场景简介
  • 1.3.2 游戏架构简介
  • 1.4 游戏的开发与实现
  • 1.4.1 游戏场景的搭建及相关设置
  • 1.4.2 脚本编辑及相关设置
  • 1.5 游戏的优化与改进
  • 第2章 2D平台跳跃跑酷游戏——《冰火人》
  • 2.1 游戏的开发背景和功能概述
  • 2.1.1 游戏开发背景
  • 2.1.2 游戏功能
  • 2.2 游戏的策划和准备工作
  • 2.2.1 游戏的策划
  • 2.2.2 使用Unity开发游戏前的准备工作
  • 2.3 游戏的架构
  • 2.3.1 游戏场景简介
  • 2.3.2 游戏玩法简介
  • 2.4 游戏的开发与实现
  • 2.4.1 场景的搭建及相关设置
  • 2.4.2 脚本编辑及相关设置
  • 第3章 人见人爱——《糖果消消乐》
  • 3.1 游戏的开发背景和功能概述
  • 3.1.1 游戏开发背景
  • 3.1.2 游戏功能
  • 3.2 游戏的策划和准备工作
  • 3.2.1 游戏的策划
  • 3.2.2 使用Unity开发游戏前的准备工作
  • 3.3 游戏的架构
  • 3.3.1 游戏场景简介
  • 3.3.2 游戏架构简介
  • 3.4 游戏的开发与实现
  • 3.4.1 场景的搭建及相关设置
  • 3.4.2 游戏的状态划分和数据结构的设计与实现
  • 3.4.3 棋盘和糖果的生成设计与实现
  • 3.4.4 不同糖果删除效果的设计与实现
  • 3.4.5 洗牌状态的设计与实现
  • 3.4.6 动画状态的设计与实现
  • 3.4.7 糖果掉落状态的设计与实现
  • 3.4.8 等待操作状态的设计与实现
  • 3.4.9 检测状态的设计与实现
  • 3.4.10 删除与生成糖果的设计与实现
  • 第4章 另类跑酷游戏——《套马》
  • 4.1 游戏的开发背景和功能概述
  • 4.1.1 游戏开发背景
  • 4.1.2 游戏功能
  • 4.2 游戏的策划和准备工作
  • 4.2.1 游戏的策划
  • 4.2.2 使用Unity开发游戏前的准备工作
  • 4.3 游戏的架构
  • 4.3.1 游戏场景简介
  • 4.3.2 预制体介绍
  • 4.3.3 游戏玩法和流程
  • 4.4 开始场景的开发
  • 4.4.1 场景的搭建及相关设置
  • 4.4.2 脚本编辑及相关设置
  • 4.5 游戏场景的开发
  • 4.5.1 导入和使用模型素材
  • 4.5.2 创建角色预制体
  • 4.5.3 创建场景预制体
  • 4.5.4 搭建场景
  • 4.5.5 设置游戏物体的层
  • 4.5.6 设置摄像机
  • 4.5.7 创建游戏界面
  • 4.5.8 实现游戏管理器
  • 4.5.9 实现马脚本
  • 4.5.10 实现角色脚本
  • 4.6 游戏的优化与改进
  • 4.6.1 DOTween插件的使用方法
  • 4.6.2 在该游戏中加入动态效果
  • 第5章 经典游戏——《黄金矿工》
  • 5.1 游戏的开发背景和功能概述
  • 5.1.1 游戏开发背景
  • 5.1.2 游戏功能
  • 5.2 游戏的策划和准备工作
  • 5.2.1 游戏的策划
  • 5.2.2 使用Unity开发游戏前的准备工作
  • 5.3 游戏的架构
  • 5.3.1 游戏场景简介
  • 5.3.2 游戏架构简介
  • 5.4 游戏开始界面场景的开发
  • 5.4.1 场景的搭建及相关设置
  • 5.4.2 脚本编辑及相关设置
  • 5.5 游戏关卡场景的开发
  • 5.5.1 场景的搭建及相关设置
  • 5.5.2 脚本编辑及相关设置
  • 5.6 游戏的优化与改进
  • 第6章 3D动作游戏——《割草无双》
  • 6.1 游戏的开发背景和功能概述
  • 6.1.1 游戏开发背景
  • 6.1.2 游戏功能
  • 6.2 游戏的策划和准备工作
  • 6.2.1 游戏的策划
  • 6.2.2 使用Unity开发游戏前的准备工作
  • 6.3 游戏的架构
  • 6.3.1 场景简介
  • 6.3.2 游戏架构简介
  • 6.4 游戏的开发与实现
  • 6.4.1 场景的搭建及相关设置
  • 6.4.2 控制系统的搭建及相关设置
  • 6.4.3 敌人系统的准备及相关设置
  • 6.4.4 UI的搭建及相关设置
  • 6.4.5 其他游戏脚本的准备
  • 6.4.6 脚本编辑及相关设置
  • 第7章 鸟群模拟
  • 7.1 鸟群行为模式的理论与实现
  • 7.1.1 鸟群行为模式的分析
  • 7.1.2 创建工程
  • 7.1.3 编辑脚本
  • 7.1.4 编辑控制脚本
  • 7.1.5 完成工程并测试
  • 7.1.6 鸟的其他行为模式
  • 7.2 鸟群的调整与完善
  • 7.2.1 调整每只鸟的具体行为
  • 7.2.2 小结和扩展
  • 第8章 程序建模——三维网格生成
  • 8.1 三维网格生成概述
  • 8.1.1 三维网格的原理
  • 8.1.2 与网格有关的Unity组件
  • 8.1.3 三维网格技术的应用
  • 8.2 用脚本生成三维网格
  • 8.2.1 创建第一个三角面
  • 8.2.2 对三角面程序的解释
  • 8.2.3 常用三维模型举例
  • 8.3 三维模型贴图
  • 8.3.1 简单贴图实例
  • 8.3.2 贴图代码详解
  • 8.3.3 立方体贴图
  • 8.4 噪声与地形
  • 8.4.1 地形建模
  • 8.4.2 柏林噪声简介
  • 8.4.3 将噪声应用于地形建模
  • 第9章 三维沙盒游戏——《方块世界》
  • 9.1 游戏简介与功能概述
  • 9.1.1 无限大的世界
  • 9.1.2 删除和创建地形方块
  • 9.2 无限网格的生成方法
  • 9.2.1 问题分析
  • 9.2.2 创建组块
  • 9.2.3 编辑组块代码
  • 9.2.4 组块贴图
  • 9.2.5 组块与地形
  • 9.3 将组块组合成世界
  • 9.4 创建游戏角色
  • 9.4.1 添加角色
  • 9.4.2 添加角色控制器组件
  • 9.4.3 编辑角色控制脚本
  • 9.4.4 添加摄像机脚本
  • 9.4.5 添加工具界面
  • 9.5 动态改变组块
  • 9.5.1 销毁方块的算法
  • 9.5.2 通过射线定位要销毁的方块
  • 9.5.3 创建方块的算法
  • 9.5.4 编辑角色操作脚本
  • 9.5.5 完善游戏并测试
  • 反侵权盗版声明
展开全部