《Unity3D编程基础》
课程单元教学设计
(2020—2021学年第1学期)
课程名称: Unity3D编程基础
所属专业(教研室): 数字媒体应用技术
制定人: 焦卫峰
日照职业技术学院
2020 年 8月 10 日
课程整体设计
课程名称 | Unity3D编程基础 | 课程类型 | B | ||||
授课对象 | 数字媒体应用技术专业虚拟现实方向 二年级学生 | 学时学分 | 56学时 3.5学分 | ||||
先修课程 | 《基础程序设计》 《Unity 3D虚拟技术基础》 | 后修课程 | 《Unity 3D高级编程》 《VR项目设计与制作》 | ||||
课程目标 | 一、素质目标 1.培养学生具备良好的团队合作精神 在小组讨论及分组作业活动中积极交流和沟通,分工协作。 2.培养学生独立思考、独立解决问题的能力 注重学生勤于动手,独立思考,具备较强的自学能力,能够独立借助网络、图书馆等解决实际问题。 3.注重创新能力的培养 不光重视理论学习,还要重视实实践,培养学生具备继承性思维,引导学生批判性学习,激发学生的创新能力。 4.对待工作精益求精,有较强的责任心和奉献精神,具有较好的职业素养 培养责任心及时间观念,以及对工作的负责态度,和勇于担当的精神。 二、知识目标 1.掌握类的基本结构,属性、方法和事件的设计及使用,学会面向对象编程。 2.掌握类的继承性和多态性,了解抽象类的使用。 3.掌握接口的设计方法,学会使用接口进行编程。 4.掌握泛型和集合类的使用方法。 5.掌握事件、委托的使用 6.掌握程序调试的方法。 7.掌握脚本的生命周期,了解核心类的关系图。 8.掌握使用Input类和用户进行交互。 9.掌握物理引擎的使用,学会碰撞检测。 10.掌握UGUI与事件处理。 11.掌握GameObject、Transform、MonoBehaviour、Application、SceneManager、Object、Component、Random、Time、向量类的使用方法。 三、能力目标 1.具备熟练应用Unity3D软件的能力。 2.具备初步的高级语言程序设计、编译与调试的能力 3.具备使用面向对象技术进行程序开发的能力。 4.具备初级游戏开发的能力。
| ||||||
序号 | 学习单元(学习情境或项目)名称 | 学时 | |||||
1 | 猜数字游戏 | 4 | |||||
2 | 猴子选大王-约瑟夫环 | 4 | |||||
3 | 类和对象 | 4 | |||||
4 | 继承和多态 | 4 | |||||
5 | Unity脚本基础 | 4 | |||||
6 | 游戏对象的基本操作 | 8 | |||||
7 | 游戏交互 | 4 | |||||
8 | 刚体与碰撞体 | 8 | |||||
9 | UGUI | 8 | |||||
10 | 2D游戏 | 8 | |||||
教学材料 | (指教材或讲义、参考资料、仪器、设备、教学软件等) C#入门经典》(第7版),(美)沃森(Watson,K.),(美)内格尔(Nagel,C.) 等著。清华大学出版社 《Unity 5.X从入门到精通》Unity Technologies 编 中国铁道出版社 《叩响C#之门 》,梁斌玉主编。电子工业出版社 《C#高级编程》,(美)内格尔(Nagel.C)等著。清华大学出版社 | ||||||
教学组 织形式 | (班级授课、分组教学以及组织具体安排方式等,如果是多位教师同时指导,还须说明教师分工安排)
班级授课 | ||||||
考核方案 | 考查,过程考核和期末考核相结合 | ||||||
单元标题 | 猜数字游戏 | 单元教学学时 | 4 | |||
在整体设计中的位置 | 第1次 | |||||
授课班级 | 大二 | 授课时间 | 上课地点 | 虚拟实训室A301 | ||
教学目标 | 能力目标 | 知识目标 | 素质目标 | |||
1.具备初步的高级语言程序设计、编译与调试的能力 2.具备使用面向对象技术进行程序开发的能力。
| 1.掌握c#程序的基本结构和程序的基本语法 2.掌握分支语句和循环语句 3.编写猜数字游戏
| 1.培养学生独立思考、独立解决问题的能力 2.注重创新能力的培养
| ||||
能力训练任务 | 分支 循环 随机数 猜数字游戏的编程 | |||||
教学进度 | ||||||
步骤 | 教学任务 | 教师活动 | 学生活动 | 时间 (分钟) | ||
1 | 课程导入 | 提出问题 | 独立思考 | 10 | ||
2 | 学生讨论 | 指导 | 讨论 | 20 | ||
3 | 知识讲解 | 讲授 | 听讲 | 40 | ||
4 | 课堂练习 | 个别辅导 | 练习 | 30 | ||
5 | 完成案例 | 指导 | 编程实现 | 30 | ||
6 | 汇报点评 | 点评 | 汇报 | 20 | ||
7 | 总结 | 总结 | 10 | |||
单元标题 | 猴子选大王 | 单元教学学时 | 4 | |||
在整体设计中的位置 | 第2次 | |||||
授课班级 | 大二 | 授课时间 | 上课地点 | 虚拟实训室A301 | ||
教学目标 | 能力目标 | 知识目标 | 素质目标 | |||
1.具备初步的高级语言程序设计、编译与调试的能力 2.具备使用面向对象技术进行程序开发的能力。
| 1.掌握数组、字符串和函数的基本语法 2.学习并掌握穷举遍历算法、递归算法 3.编写猴子选大王游戏 | 1.培养学生独立思考、独立解决问题的能力 2.注重创新能力的培养
| ||||
能力训练任务 | 数组、函数 穷举 递归 猴子选大王游戏的编程 | |||||
教学进度 | ||||||
步骤 | 教学任务 | 教师活动 | 学生活动 | 时间 (分钟) | ||
1 | 课程导入 | 提出问题 | 独立思考 | 10 | ||
2 | 学生讨论 | 指导 | 讨论 | 20 | ||
3 | 知识讲解 | 讲授 | 听讲 | 40 | ||
4 | 课堂练习 | 个别辅导 | 练习 | 30 | ||
5 | 完成案例 | 指导 | 编程实现 | 30 | ||
6 | 汇报点评 | 点评 | 汇报 | 20 | ||
7 | 总结 | 总结 | 10 | |||
单元标题 | 类和对象 | 单元教学学时 | 4 | |||
在整体设计中的位置 | 第3次 | |||||
授课班级 | 大二 | 授课时间 | 上课地点 | 虚拟实训室A301 | ||
教学目标 | 能力目标 | 知识目标 | 素质目标 | |||
1.具备初步的高级语言程序设计、编译与调试的能力 2.具备使用面向对象技术进行程序开发的能力。
| 1.了解面向对象的概念和基本特征,析构函数 2.掌握类的定义与使用,成员变量的定义和使用 3.掌握构造函数的使用 4.掌握this和static 5.掌握面向对象编程 | 1.培养学生独立思考、独立解决问题的能力 2.注重创新能力的培养
| ||||
能力训练任务 | 类的定义与使用 构造函数 this、static 对象数组 | |||||
教学进度 | ||||||
步骤 | 教学任务 | 教师活动 | 学生活动 | 时间 (分钟) | ||
1 | 课程导入 | 提出问题 | 独立思考 | 10 | ||
2 | 学生讨论 | 指导 | 讨论 | 20 | ||
3 | 知识讲解 | 讲授 | 听讲 | 40 | ||
4 | 课堂练习 | 个别辅导 | 练习 | 30 | ||
5 | 完成案例 | 指导 | 编程实现 | 30 | ||
6 | 汇报点评 | 点评 | 汇报 | 20 | ||
7 | 总结 | 总结 | 10 | |||
单元标题 | 继承与多态 | 单元教学学时 | 4 | |||
在整体设计中的位置 | 第4次 | |||||
授课班级 | 大二 | 授课时间 | 上课地点 | 虚拟实训室A301 | ||
教学目标 | 能力目标 | 知识目标 | 素质目标 | |||
1.具备初步的高级语言程序设计、编译与调试的能力 2.具备使用面向对象技术进行程序开发的能力。
| 1.学会使用继承 2.掌握构造函数的执行顺序,学会base关键字的使用方法 3.掌握方法隐藏与方法重写的区别 4.了解类的多态 | 1.培养学生独立思考、独立解决问题的能力 2.注重创新能力的培养
| ||||
能力训练任务 | 类的继承 多态 | |||||
教学进度 | ||||||
步骤 | 教学任务 | 教师活动 | 学生活动 | 时间 (分钟) | ||
1 | 课程导入 | 提出问题 | 独立思考 | 10 | ||
2 | 学生讨论 | 指导 | 讨论 | 20 | ||
3 | 知识讲解 | 讲授 | 听讲 | 40 | ||
4 | 课堂练习 | 个别辅导 | 练习 | 30 | ||
5 | 完成案例 | 指导 | 编程实现 | 30 | ||
6 | 汇报点评 | 点评 | 汇报 | 20 | ||
7 | 总结 | 总结 | 10 | |||
单元标题 | Unity脚本基础 | 单元教学学时 | 4 | |||
在整体设计中的位置 | 第5次 | |||||
授课班级 | 大二 | 授课时间 | 上课地点 | 虚拟实训室A301 | ||
教学目标 | 能力目标 | 知识目标 | 素质目标 | |||
1.具备熟练应用Unity3D软件的能力 2.具备初级游戏开发和unity交互开发的能力
| 1.了解Unity工程 2.了解输出调试信息的方法 3.脚本事件执行顺序 4.掌握MonoBehaviour类的使用方法 | 1.培养学生独立思考、独立解决问题的能力 2.注重创新能力的培养 3.对待工作精益求精,有较强的责任心和奉献精神,具有较好的职业素养 | ||||
能力训练任务 | 脚本生命周期 Unity脚本编程 | |||||
教学进度 | ||||||
步骤 | 教学任务 | 教师活动 | 学生活动 | 时间 (分钟) | ||
1 | 课程导入 | 提出问题 | 独立思考 | 10 | ||
2 | 学生讨论 | 指导 | 讨论 | 20 | ||
3 | 知识讲解 | 讲授 | 听讲 | 40 | ||
4 | 课堂练习 | 个别辅导 | 练习 | 30 | ||
5 | 完成案例 | 指导 | 编程实现 | 30 | ||
6 | 汇报点评 | 点评 | 汇报 | 20 | ||
7 | 总结 | 总结 | 10 | |||
单元标题 | 游戏对象的基本操作 | 单元教学学时 | 8 | |||
在整体设计中的位置 | 第6次 | |||||
授课班级 | 大二 | 授课时间 | 上课地点 | 虚拟实训室A301 | ||
教学目标 | 能力目标 | 知识目标 | 素质目标 | |||
1.具备熟练应用Unity3D软件的能力 2.具备初级游戏开发和unity交互开发的能力
| 1.学会游戏对象的创建与销毁 2.掌握GameObject类、Transform类 3. Unity核心类的之间的关系 | 1.培养学生独立思考、独立解决问题的能力 2.注重创新能力的培养 3.对待工作精益求精,有较强的责任心和奉献精神,具有较好的职业素养 | ||||
能力训练任务 | 查找游戏对象 获取组件 游戏对象的创建 游戏对象的销毁 | |||||
教学进度 | ||||||
步骤 | 教学任务 | 教师活动 | 学生活动 | 时间 (分钟) | ||
1 | 课程导入 | 提出问题 | 独立思考 | 10 | ||
2 | 学生讨论 | 指导 | 讨论 | 20 | ||
3 | 知识讲解 | 讲授 | 听讲 | 40 | ||
4 | 课堂练习 | 个别辅导 | 练习 | 30 | ||
5 | 完成案例 | 指导 | 编程实现 | 30 | ||
6 | 汇报点评 | 点评 | 汇报 | 20 | ||
7 | 总结 | 总结 | 10 | |||
单元标题 | 游戏交互 | 单元教学学时 | 4 | |||
在整体设计中的位置 | 第7次 | |||||
授课班级 | 大二 | 授课时间 | 上课地点 | 虚拟实训室A301 | ||
教学目标 | 能力目标 | 知识目标 | 素质目标 | |||
1.具备熟练应用Unity3D软件的能力 2.具备初级游戏开发和unity交互开发的能力
| 1.掌握Time、Random类的使用方法 2.掌握向量类的使用方法 3.掌握Input类的使用方法 | 1.培养学生独立思考、独立解决问题的能力 2.注重创新能力的培养 3.对待工作精益求精,有较强的责任心和奉献精神,具有较好的职业素养 | ||||
能力训练任务 | 青蛙过河游戏 大鱼吃小鱼游戏 | |||||
教学进度 | ||||||
步骤 | 教学任务 | 教师活动 | 学生活动 | 时间 (分钟) | ||
1 | 课程导入 | 提出问题 | 独立思考 | 10 | ||
2 | 学生讨论 | 指导 | 讨论 | 20 | ||
3 | 知识讲解 | 讲授 | 听讲 | 40 | ||
4 | 课堂练习 | 个别辅导 | 练习 | 30 | ||
5 | 完成案例 | 指导 | 编程实现 | 30 | ||
6 | 汇报点评 | 点评 | 汇报 | 20 | ||
7 | 总结 | 总结 | 10 | |||
单元标题 | 刚体与碰撞体 | 单元教学学时 | 8 | |||
在整体设计中的位置 | 第8次 | |||||
授课班级 | 大二 | 授课时间 | 上课地点 | 虚拟实训室A301 | ||
教学目标 | 能力目标 | 知识目标 | 素质目标 | |||
1.具备熟练应用Unity3D软件的能力 2.具备初级游戏开发和unity交互开发的能力
| 1.学会RigidBody组件和Collider组件的使用 2.掌握OnCollision和OnTrigger的使用方法 | 1.培养学生独立思考、独立解决问题的能力 2.注重创新能力的培养 3.对待工作精益求精,有较强的责任心和奉献精神,具有较好的职业素养 | ||||
能力训练任务 | 潜艇大战游戏 | |||||
教学进度 | ||||||
步骤 | 教学任务 | 教师活动 | 学生活动 | 时间 (分钟) | ||
1 | 课程导入 | 提出问题 | 独立思考 | 10 | ||
2 | 学生讨论 | 指导 | 讨论 | 20 | ||
3 | 知识讲解 | 讲授 | 听讲 | 40 | ||
4 | 课堂练习 | 个别辅导 | 练习 | 30 | ||
5 | 完成案例 | 指导 | 编程实现 | 30 | ||
6 | 汇报点评 | 点评 | 汇报 | 20 | ||
7 | 总结 | 总结 | 10 | |||
单元标题 | UGUI | 单元教学学时 | 8 | |||
在整体设计中的位置 | 第9次 | |||||
授课班级 | 大二 | 授课时间 | 上课地点 | 虚拟实训室A301 | ||
教学目标 | 能力目标 | 知识目标 | 素质目标 | |||
1.具备熟练应用Unity3D软件的能力 2.具备初级游戏开发和unity交互开发的能力
| 1.UGUI的使用 2. UGUI的事件处理 | 1.培养学生独立思考、独立解决问题的能力 2.注重创新能力的培养 3.对待工作精益求精,有较强的责任心和奉献精神,具有较好的职业素养 | ||||
能力训练任务 | 使用UGUI,添加游戏运行的开始界面和得分显示 | |||||
教学进度 | ||||||
步骤 | 教学任务 | 教师活动 | 学生活动 | 时间 (分钟) | ||
1 | 课程导入 | 提出问题 | 独立思考 | 10 | ||
2 | 学生讨论 | 指导 | 讨论 | 20 | ||
3 | 知识讲解 | 讲授 | 听讲 | 40 | ||
4 | 课堂练习 | 个别辅导 | 练习 | 30 | ||
5 | 完成案例 | 指导 | 编程实现 | 30 | ||
6 | 汇报点评 | 点评 | 汇报 | 20 | ||
7 | 总结 | 总结 | 10 | |||
单元标题 | 2D游戏 | 单元教学学时 | 8 | |||
在整体设计中的位置 | 第10次 | |||||
授课班级 | 大二 | 授课时间 | 上课地点 | 虚拟实训室A301 | ||
教学目标 | 能力目标 | 知识目标 | 素质目标 | |||
1.具备熟练应用Unity3D软件的能力 2.具备初级游戏开发和unity交互开发的能力
| 1.制作2d游戏的方法 2.掌握协程的使用 3. 制作数字华容道游戏 | 1.培养学生独立思考、独立解决问题的能力 2.注重创新能力的培养 3.对待工作精益求精,有较强的责任心和奉献精神,具有较好的职业素养 | ||||
能力训练任务 | 数字华容道游戏 FlappyBirds游戏 | |||||
教学进度 | ||||||
步骤 | 教学任务 | 教师活动 | 学生活动 | 时间 (分钟) | ||
1 | 课程导入 | 提出问题 | 独立思考 | 10 | ||
2 | 学生讨论 | 指导 | 讨论 | 20 | ||
3 | 知识讲解 | 讲授 | 听讲 | 40 | ||
4 | 课堂练习 | 个别辅导 | 练习 | 30 | ||
5 | 完成案例 | 指导 | 编程实现 | 30 | ||
6 | 汇报点评 | 点评 | 汇报 | 20 | ||
7 | 总结 | 总结 | 10 | |||