第一周
Day 1
主要内容:
- 介绍本课程,介绍Unity3D游戏引擎,演示其界面元素;
- 示范基本操作、快捷键,示范如何新建游戏项目及打开已有游戏项目;
- 示范如何导入资源包、如何发布游戏项目。
所需准备的软件素材:
- Unity3D引擎软件、Unity3D范例项目
学生需要达到的程度:
- 能独立安装Unity3D软件,并实践操作范例项目
- 能独立浏览Asset Store并下载安装所需资源包
Day 2:
本次课程主要内容:
- 为Unity3D创建各种素材的方法,包括模型、材质、贴图、2D图片精灵、动画、音乐;
- 讲解Prefab的概念及使用方法;演示如何导入各种素材、如何导入资源包、如何导出资源包。
课程所需准备的软件素材:
- Unity-Chan资源包(模型、动画)、音乐音效资源包、一些Maya模型、动画范例(带贴图、带动画)
学生需要达到的程度:
- 能将常见的美术资源转换成游戏资源并导入Unity3D中使用
Day 3
本次课程主要内容:
- 创建一个Tree
- 创建并设置Terrain,刷地面贴图,刷树,刷草,刷碎石
- 添加一些模型素材资源组成比较完整的关卡场景
- 设置灯光并烘焙光照贴图
第二周
Day 1
-
Unity3D场景设计(3):粒子、UI、后期效果及其他(未完成)
- Unity3D自带功能:粒子(未完成)
- Unity3D自带功能:UI(未完成)
- 后期效果部分请参考Unity3D自带功能:摄影机最后一部分
本次课程主要内容:
- 讲解Unity的粒子系统,回顾Maya的粒子系统来类比
- 讲解Unity的UI功能,演示用新的uGui系统创建游戏开始菜单、游戏中HUD显示、背包UI、装备界面UI等
- 演示如何使用Post Processing Stack插件进行后期效果处理
课程所需准备的软件素材:Post Processing Stack官方插件
Day 2
本次课程主要内容:
- 讲解如何使用Animator Controller进行动画状态跳转
- 自然动画过渡
- 使用Trigger变量激活攻击、受伤、死亡动画
- 使用Bool变量切换走/跑
- 讲解如何使用BlendTree进行动画混合的设置:
- 设置静止->走->跑
- 设置前后左右行走动画混合
- 讲解Nav Mesh和Nav Agent的基本使用流程:设置Nav Static、设置Walkable和Not Walkable、设置Jump和Fall、设置Agent、烘焙Nav Mesh
- 演示设置destination进行追踪
- 演示设置NPC巡逻
课程所需准备的软件素材:Unity-Chan角色动画资源包
Day 3
本次课程主要内容:
课程所需准备的软件素材:
第三周
Day 1
Day 2
- PlayMaker:触发事件
- 简单交互逻辑的设计实例
- 机关开门
- 按钮触发动画
- 发射子弹
Day 3
- 不同FSM之间的相互影响:数值传递、状态传递
- 稍复杂一点的交互逻辑的设计实例
- PlayMaker简单实例(2):角色与摄影机的运动控制
- 智能NPC
- 计分系统
- 伤害系统
第四周
Day 1
- 超级简单的“对决”小游戏基础版(Duel Game Basic)
- 方块吃金币游戏
Day 2
- 双摇杆射击游戏
Day 3
- 简单RPG游戏
其他可以作为范例的游戏
- 重制Flappy Bird小游戏
- Unity官方教程:Roll A Ball(PM版)
- Unity官方教程:Space Shooter 基础篇(PM版)
其他课程设计相关内容:
阶段性教学实例安排:
- 在单一State中用Actions的顺序执行来完成的交互目标
- 依靠FINISHED事件来依次衔接多个States
- 添加条件触发来实现多个States之间的自由跳转
- Input
- Collision/Trigger
- Raycast
- Compare
- 在Fsm内部进行数值的储存、获取、计算、比较
- 跨Fsm进行数据的获取和传递
- Get/Set Fsm variable
- Global variable
- 跨Fsm触发事件
- Send Event
需要单独讲解的交互设计单元模块:
- Player的控制交互设计
- 方向控制型
- 目的地控制型
- MainCamera的控制设计
- 相机跟随
- UI元素的显示控制及简单动画
- 游戏进程的控制
- 游戏暂停、游戏结束、游戏重置
- 碰撞检测和Raycast检测
- 伤害系统
- 机关系统
- (待续)