“智能游戏开发与设计”课堂教学

2017-11-06 21:57舒禹程于洪
计算机教育 2017年10期
关键词:课堂教学

舒禹程 于洪

摘 要:针对智能科学与技术专业的特点与“智能游戏开发与设计”课程的教学实际情况,分析课程教学各个环节的重点,从教学内容制定、动手能力培养、智能专业特色体现、课程考核等方面阐述“智能游戏开发与设计”课程的课堂教学设计。

关键词:游戏开发与设计;智能教育;课堂教学

0 引 言

随着通讯、电子、智能设备等相关产业的飞速发展,游戏这门“第九艺术”也在进行不断地演化;在其大型化、专业化、网络化、设备化等趋势中,游戏领域逐渐酝酿了诸如移动化、碎片化、个性化、智能化等新兴的发展方向。根据《2016年中国游戏产业报告》[1]显示,随着游戏业的井喷式发展,游戏产业的社会认同度节节攀升,逐渐形成大众化的娱乐模式。同时,游戏业的外延与动漫、电影、旅游、玩具等其他文化产业相互渗透、融合发展,越来越深远地影响到人们生活的各个层面。

因此,在开展“智能游戏开发与设计”的课堂教学时,要求任课教师能够在不断迭代的教学过程中始终对于游戏前沿发展保持敏感性,能够将业界的最新动态与技术介绍给学生,从而保证课堂知识的时效性,达到教学目标、提升教学效果。而如何依托智能科学与技术专业,对于游戏与人工智能技术进行有机的结合,使得学生能够在学习游戏开发技术的同时把握智能专业的特色,学习智能专业知识,也是“智能游戏开发与设计”课堂教学环节的关键内容[2]。

1 课程特点与教学目标

“智能游戏开发与设计”是一门综合性的程序设计技能发展类课程,主要讲授游戏开发过程中的各项基本理论,通过对游戏开发与设计环节的人机交互、图像处理、人工智能等技术的学习,让学生具备基本的游戏开发技能[3]。

开设该课程的主要目标包括:①讲解游戏设计的基本原则与理念,培养学生的代码编写能力、系统设计能力与团队协作能力;②讲授游戏程序开发过程中的核心流程与关键技术,针对游戏引擎的特点进行游戏开发知识的学习与经验积累;③为大学生在游戏这一新兴领域的就业技能进行拓展,通过系统的综合训练,提升学生综合素质与职业素养。

2 课程教学分析

根据智能科学与技术专业的特点与基本培养目标,在研究与设计“智能游戏开发与设计”课程教学方案时,应该充分考虑到本专业的特点,与课程中的人工智能知识学习进行相应的链接;在课程内容安排时,既要结合培养方案,考虑学生的基本知识掌握情况,又要紧密联系行业前沿发展,力争吸引学生积极参与;在课程设置时,有针对性地培养学生在程序编写、系统设计、团队合作等方面的能力。

2.1 承接培养进程,制定教学内容

“智能游戲开发与设计”课程主要面向智能科学与技术专业高年级本科生,要求学生对于编程语言、面向对象的程序设计、数据结构、算法设计与分析等前置课程进行相应的学习。因此,在设计本课程的教学内容时,需要对学生的学习进程、总体专业技能、培养目标达成等情况保持持续的跟踪,才能有针对性地进行课程的综合设计以及内容的动态调整。

具体到游戏开发教学环节,其核心内容是基于游戏引擎进行各项具体知识点的学习,因此其重点在于确定好教学时采用的游戏引擎。根据分析可知,Cocos2d-x这款游戏引擎能够满足课程要求。Cocos2d-x是一款开源的二维游戏引擎,基于OpenGL ES,支持JavaScript、C++、Lua等开发语言,具有效率高、可扩展等优良特性。在此引擎框架下开发的游戏能够十分方便地移植到各个平台,如在传统PC,移动端的Android、Windows Phone、iOS等平台上进行高效的迁移。Cocos2d-x为游戏开发者提供了便捷、友好的开发工具包,特别是在当今移动化、个性化、碎片化、轻量化的游戏消费市场[4],出现了很多基于Cocos2d-x引擎开发的优秀游戏。

因此,从课程难度、接受程度、所学内容、行业发展等方面进行综合平衡,课程组认为以Cocos2d-x二维游戏引擎为基础的课程内容能够满足学生后续发展的客观需求,对于培养方案进行有效的承接,为课程的高效开展打好基础。

2.2 把握学科导向,培养动手能力

“智能游戏开发与设计”是一门综合性程度较高、与实际产业需求结合紧密、对于学生能力要求较高的课程,学生动手能力的高低直接决定了课程培养的效果;从另一方面来说,我们期望该课程能够继续提升高年级本科生的实际代码编写和程序设计能力,积累项目合作、文档撰写等方面的经验,做好学科知识的进一步储备与综合能力的拓展。因此,在进行教学方案的制定与课程设计时,学生动手能力的培养与锻炼是课程的一项重点目标。

具体来说,如何将理论知识的学习与动手能力的培养进行整合是课程进行过程中的核心问题。首先,在进行课程的前期准备时,应当基于教学与实验环境,开发并积累相应的代码示例、程序demo,并搭建网络共享平台,使得学生能够方便地获取相关资源。在课堂上进行知识点的学习时,也应本着培养动手能力的思想,为学生展示知识点的具体实现过程。为了让学生能够更快上手,利用紧张的学习时间充分地获得提升,从游戏引擎环境的搭建到详细的程序框架,再到具体的例子,都需要对其中的关键代码、步骤进行细致的讲解,并直接在教学时运行代码进行编译、调试、程序运行展示。

2.3 体现智能特色,开展专题学习

自2009年以来,在重庆邮电大学智能科学与技术专业的培养方案设计中,我们将“智能游戏开发与设计”作为特色课程进行相应的建设。利用这门课程,我们也将智能专业的影响拓展到学生学习的不同层面,在理论课程中进行专题学习,在实践课程中整合游戏程序的设计资源,同时也为学生提供参与相关科技活动的机会。

具体到本课程的教学环节,我们对其中的智能特色进行了有目的性的拓展。人工智能(AI)技术作为游戏开发过程中的一项关键内容,已经与游戏内容产生越来越深刻的关联,无论是游戏代入感的建立、游戏可玩性的提高,还是游戏交互性的增强,都需要优秀的人工智能算法与之匹配。从现在的人工智能领域发展来看,已经出现了各种类型的突破,具体表现在:玩家与AI的合作、玩家与AI的对抗、AI直接操纵游戏等方面的研究。因此,在课程进行中,应该为学生提供丰富的游戏人工智能知识介绍与学习。endprint

2.4 依据课程特点,设计考核模式

考核是衡量课程教学目标是否达到,教学效果是否满意的基本指标。智能游戏设计与分析课程的主要教学目标在于为大学生进行游戏领域知识引入,普及游戏开发理念,同时以游戏设计与开发为契机培养学生的实际编程、团队合作能力。因此,我们认为可以将本课程考核的核心内容确定为:分小组分任务的游戏程序项目开发与展示。

在进行具体的考核过程设计时,需要本着公平、有效、可行的原则,以本门课程考核形式的特点为依据。一般来说,在进行以小组为基础的考核时,面临的一项普遍问题就是团队分工不清、职责不明、大包大揽等情况。为了解决这一问题,我们认为可以遵循以下几个思路:①在项目报告中明确职责分工,包括且不局限于:游戏策划、程序设计与编写、美术设计等,旨在发挥不同学生的专长;②由于课程对象为计算机专业学生,因此必须明确小组每位成员的基本任務,即每位组员须熟悉完整的程序框架与代码,并进行针对性地考核,如此可以起到真正锻炼学生程序设计能力的目的;③为了保证以上要求顺利执行,对于宣讲时的打分方式也应当进行详细的设计。

3 课程教学实例

重庆邮电大学智能科学与技术系对于“智能游戏开发与设计”这门正在建设中的专业课程十分重视。在课堂教学的进程中我们不断地总结经验教训,更新先进理念,进行教学探索;对于如何在智能教育的框架下设计本课程,我们也正在开展持续的教学研究,积累发展思路。

3.1 教学过程设计

具体到课堂教学内容设计,我们主要划分的章节包括游戏开发简介、游戏引擎概览、二维游戏场景绘制、游戏界面设计、二维游戏动画合成、碰撞检测与运动模拟、游戏粒子系统、游戏音效编程、游戏中的人工智能等[5]。同时,如图1所示,课程组也为学生准备了在基于Cocos2d-x引擎的游戏开发流程中所需的开发工具包。

为了对学生的动手能力进行针对性地培养,我们将其融入了知识点学习的过程。比如,在课堂上进行Cocos2d-x程序“HelloWorld”框架的讲解时(如图2所示),同时打开相应的代码编辑器,实际操作,让学生能够直观地理解从“main”到“AppDelegate”再到“HelloWorldScene”的程序入口;然后立即进行调试,添加了载入tmx地图文件的代码,让学生真正从动手操作的角度理解游戏设计思路;而在程序成功载入地图并显示在屏幕上之后,学生的积极性也被明显地带动起来。

在结合智能专业特色进行本课程的教学时,我们既安排人工智能新技术的介绍,又进行了游戏人工智能算法的讲解。在课程前期,我们基于深度学习算法被应用在围棋游戏的例子,介绍了从传统围棋AI程序到Alpha Go再到Master的一系列发展以及其背后的基本算法机制。结合游戏设计课程,介绍了基于深度学习的强化学习算法被应用在雅达利游戏、星际争霸、吃豆人等游戏上的例子,体现了当前人工智能领域的最新进展,激发了学生继续学习各种智能算法的兴趣。在具体的游戏人工智能算法学习时,我们为学生重点介绍了一些常用的算法,如寻路算法、决策树、模糊逻辑等。同学们学习兴趣浓厚,并在期末项目考核时有意识地实现了部分人工智能算法。

3.2 考核设计

根据前文所述,我们依据教学内容安排,制定了相应的考核方式,主要包含:①平时成绩,20%;②期末项目宣讲,60%;③项目书面报告,20%。

其中,平时成绩主要包含考勤与小作业,各占平时成绩的50%。最后提交的项目书面报告主要依托于期末项目宣讲的主要内容,进行书面化规范化写作。本课程考核的核心是以小组为单位进行期末项目宣讲。在宣讲时,对于每小组的考核主要分3个阶段进行,分别是:①游戏程序演示;②关键代码与流程讲解;③提问与回答。参与这3个阶段的学生是由抽签程序决定,要求覆盖到小组所有成员。三个阶段分别打分,分值各占1/3,使得考核过程能够充分反映具体学生的工作量,同时也起到监督小组分工执行的目的。在实际的项目宣讲中,涌现出许多完成度较高、程序质量较好的优秀游戏,获得了很好的课堂教育效果,部分例子如图3所示。

4 结 语

本门课程以重庆邮电大学智能科学与技术专业为支撑,以计算智能重庆市重点实验室为依托,具有良好的教学研究基础与实验平台。希望通过研究与创新,能够持续不断地提升课程质量,培养学生的专业能力,为游戏行业提供人才基础。

参考文献:

[1] 中国音像与数字出版协会游戏工委. 2016年中国游戏产业报告[EB/OL]. [2016-12-22]. http://www.cgigc.com.cn/gamedata/index.html.

[2] 栾晓, 于洪. 智能游戏开发与设计课程教学方法探索[J]. 计算机教育, 2016(10): 42-44.

[3] 李仪.“人工智能与游戏编程”课程设计[J]. 计算机教育, 2010(19): 99-117.

[4] 曾宪华, 李伟生, 于洪. 智能信息处理课程群下的机器学习课程教学改革[J]. 计算机教育, 2014(10): 60-62.

[5] 张岳. 面向游戏产业新趋势的高校游戏设计课程教学改革[J]. 计算机教育, 2015(12): 24-27.

(编辑:郭田珍)endprint

猜你喜欢
课堂教学
“双减”政策下的课堂教学
高中数学课堂教学中创新能力的培养
文化自信视野下中学物理课堂教学的思考
简约化初中化学课堂教学实践探索
自然拼读法在小学英语课堂教学中的有效融入
英文歌曲在中学英语课堂教学中的应用
例谈促进深度学习的课堂教学导入策略
数学开放题在初中课堂教学的探索
高中数学新型课堂教学探析
对高效初中数学课堂教学的思考与实践