舒禹程 于洪
摘 要:針對智能科學與技術專業(yè)的特點與“智能游戲開發(fā)與設計”課程的教學實際情況,分析課程教學各個環(huán)節(jié)的重點,從教學內容制定、動手能力培養(yǎng)、智能專業(yè)特色體現(xiàn)、課程考核等方面闡述“智能游戲開發(fā)與設計”課程的課堂教學設計。
關鍵詞:游戲開發(fā)與設計;智能教育;課堂教學
0 引 言
隨著通訊、電子、智能設備等相關產業(yè)的飛速發(fā)展,游戲這門“第九藝術”也在進行不斷地演化;在其大型化、專業(yè)化、網絡化、設備化等趨勢中,游戲領域逐漸醞釀了諸如移動化、碎片化、個性化、智能化等新興的發(fā)展方向。根據《2016年中國游戲產業(yè)報告》[1]顯示,隨著游戲業(yè)的井噴式發(fā)展,游戲產業(yè)的社會認同度節(jié)節(jié)攀升,逐漸形成大眾化的娛樂模式。同時,游戲業(yè)的外延與動漫、電影、旅游、玩具等其他文化產業(yè)相互滲透、融合發(fā)展,越來越深遠地影響到人們生活的各個層面。
因此,在開展“智能游戲開發(fā)與設計”的課堂教學時,要求任課教師能夠在不斷迭代的教學過程中始終對于游戲前沿發(fā)展保持敏感性,能夠將業(yè)界的最新動態(tài)與技術介紹給學生,從而保證課堂知識的時效性,達到教學目標、提升教學效果。而如何依托智能科學與技術專業(yè),對于游戲與人工智能技術進行有機的結合,使得學生能夠在學習游戲開發(fā)技術的同時把握智能專業(yè)的特色,學習智能專業(yè)知識,也是“智能游戲開發(fā)與設計”課堂教學環(huán)節(jié)的關鍵內容[2]。
1 課程特點與教學目標
“智能游戲開發(fā)與設計”是一門綜合性的程序設計技能發(fā)展類課程,主要講授游戲開發(fā)過程中的各項基本理論,通過對游戲開發(fā)與設計環(huán)節(jié)的人機交互、圖像處理、人工智能等技術的學習,讓學生具備基本的游戲開發(fā)技能[3]。
開設該課程的主要目標包括:①講解游戲設計的基本原則與理念,培養(yǎng)學生的代碼編寫能力、系統(tǒng)設計能力與團隊協(xié)作能力;②講授游戲程序開發(fā)過程中的核心流程與關鍵技術,針對游戲引擎的特點進行游戲開發(fā)知識的學習與經驗積累;③為大學生在游戲這一新興領域的就業(yè)技能進行拓展,通過系統(tǒng)的綜合訓練,提升學生綜合素質與職業(yè)素養(yǎng)。
2 課程教學分析
根據智能科學與技術專業(yè)的特點與基本培養(yǎng)目標,在研究與設計“智能游戲開發(fā)與設計”課程教學方案時,應該充分考慮到本專業(yè)的特點,與課程中的人工智能知識學習進行相應的鏈接;在課程內容安排時,既要結合培養(yǎng)方案,考慮學生的基本知識掌握情況,又要緊密聯(lián)系行業(yè)前沿發(fā)展,力爭吸引學生積極參與;在課程設置時,有針對性地培養(yǎng)學生在程序編寫、系統(tǒng)設計、團隊合作等方面的能力。
2.1 承接培養(yǎng)進程,制定教學內容
“智能游戲開發(fā)與設計”課程主要面向智能科學與技術專業(yè)高年級本科生,要求學生對于編程語言、面向對象的程序設計、數據結構、算法設計與分析等前置課程進行相應的學習。因此,在設計本課程的教學內容時,需要對學生的學習進程、總體專業(yè)技能、培養(yǎng)目標達成等情況保持持續(xù)的跟蹤,才能有針對性地進行課程的綜合設計以及內容的動態(tài)調整。
具體到游戲開發(fā)教學環(huán)節(jié),其核心內容是基于游戲引擎進行各項具體知識點的學習,因此其重點在于確定好教學時采用的游戲引擎。根據分析可知,Cocos2d-x這款游戲引擎能夠滿足課程要求。Cocos2d-x是一款開源的二維游戲引擎,基于OpenGL ES,支持JavaScript、C++、Lua等開發(fā)語言,具有效率高、可擴展等優(yōu)良特性。在此引擎框架下開發(fā)的游戲能夠十分方便地移植到各個平臺,如在傳統(tǒng)PC,移動端的Android、Windows Phone、iOS等平臺上進行高效的遷移。Cocos2d-x為游戲開發(fā)者提供了便捷、友好的開發(fā)工具包,特別是在當今移動化、個性化、碎片化、輕量化的游戲消費市場[4],出現(xiàn)了很多基于Cocos2d-x引擎開發(fā)的優(yōu)秀游戲。
因此,從課程難度、接受程度、所學內容、行業(yè)發(fā)展等方面進行綜合平衡,課程組認為以Cocos2d-x二維游戲引擎為基礎的課程內容能夠滿足學生后續(xù)發(fā)展的客觀需求,對于培養(yǎng)方案進行有效的承接,為課程的高效開展打好基礎。
2.2 把握學科導向,培養(yǎng)動手能力
“智能游戲開發(fā)與設計”是一門綜合性程度較高、與實際產業(yè)需求結合緊密、對于學生能力要求較高的課程,學生動手能力的高低直接決定了課程培養(yǎng)的效果;從另一方面來說,我們期望該課程能夠繼續(xù)提升高年級本科生的實際代碼編寫和程序設計能力,積累項目合作、文檔撰寫等方面的經驗,做好學科知識的進一步儲備與綜合能力的拓展。因此,在進行教學方案的制定與課程設計時,學生動手能力的培養(yǎng)與鍛煉是課程的一項重點目標。
具體來說,如何將理論知識的學習與動手能力的培養(yǎng)進行整合是課程進行過程中的核心問題。首先,在進行課程的前期準備時,應當基于教學與實驗環(huán)境,開發(fā)并積累相應的代碼示例、程序demo,并搭建網絡共享平臺,使得學生能夠方便地獲取相關資源。在課堂上進行知識點的學習時,也應本著培養(yǎng)動手能力的思想,為學生展示知識點的具體實現(xiàn)過程。為了讓學生能夠更快上手,利用緊張的學習時間充分地獲得提升,從游戲引擎環(huán)境的搭建到詳細的程序框架,再到具體的例子,都需要對其中的關鍵代碼、步驟進行細致的講解,并直接在教學時運行代碼進行編譯、調試、程序運行展示。
2.3 體現(xiàn)智能特色,開展專題學習
自2009年以來,在重慶郵電大學智能科學與技術專業(yè)的培養(yǎng)方案設計中,我們將“智能游戲開發(fā)與設計”作為特色課程進行相應的建設。利用這門課程,我們也將智能專業(yè)的影響拓展到學生學習的不同層面,在理論課程中進行專題學習,在實踐課程中整合游戲程序的設計資源,同時也為學生提供參與相關科技活動的機會。
具體到本課程的教學環(huán)節(jié),我們對其中的智能特色進行了有目的性的拓展。人工智能(AI)技術作為游戲開發(fā)過程中的一項關鍵內容,已經與游戲內容產生越來越深刻的關聯(lián),無論是游戲代入感的建立、游戲可玩性的提高,還是游戲交互性的增強,都需要優(yōu)秀的人工智能算法與之匹配。從現(xiàn)在的人工智能領域發(fā)展來看,已經出現(xiàn)了各種類型的突破,具體表現(xiàn)在:玩家與AI的合作、玩家與AI的對抗、AI直接操縱游戲等方面的研究。因此,在課程進行中,應該為學生提供豐富的游戲人工智能知識介紹與學習。endprint
2.4 依據課程特點,設計考核模式
考核是衡量課程教學目標是否達到,教學效果是否滿意的基本指標。智能游戲設計與分析課程的主要教學目標在于為大學生進行游戲領域知識引入,普及游戲開發(fā)理念,同時以游戲設計與開發(fā)為契機培養(yǎng)學生的實際編程、團隊合作能力。因此,我們認為可以將本課程考核的核心內容確定為:分小組分任務的游戲程序項目開發(fā)與展示。
在進行具體的考核過程設計時,需要本著公平、有效、可行的原則,以本門課程考核形式的特點為依據。一般來說,在進行以小組為基礎的考核時,面臨的一項普遍問題就是團隊分工不清、職責不明、大包大攬等情況。為了解決這一問題,我們認為可以遵循以下幾個思路:①在項目報告中明確職責分工,包括且不局限于:游戲策劃、程序設計與編寫、美術設計等,旨在發(fā)揮不同學生的專長;②由于課程對象為計算機專業(yè)學生,因此必須明確小組每位成員的基本任務,即每位組員須熟悉完整的程序框架與代碼,并進行針對性地考核,如此可以起到真正鍛煉學生程序設計能力的目的;③為了保證以上要求順利執(zhí)行,對于宣講時的打分方式也應當進行詳細的設計。
3 課程教學實例
重慶郵電大學智能科學與技術系對于“智能游戲開發(fā)與設計”這門正在建設中的專業(yè)課程十分重視。在課堂教學的進程中我們不斷地總結經驗教訓,更新先進理念,進行教學探索;對于如何在智能教育的框架下設計本課程,我們也正在開展持續(xù)的教學研究,積累發(fā)展思路。
3.1 教學過程設計
具體到課堂教學內容設計,我們主要劃分的章節(jié)包括游戲開發(fā)簡介、游戲引擎概覽、二維游戲場景繪制、游戲界面設計、二維游戲動畫合成、碰撞檢測與運動模擬、游戲粒子系統(tǒng)、游戲音效編程、游戲中的人工智能等[5]。同時,如圖1所示,課程組也為學生準備了在基于Cocos2d-x引擎的游戲開發(fā)流程中所需的開發(fā)工具包。
為了對學生的動手能力進行針對性地培養(yǎng),我們將其融入了知識點學習的過程。比如,在課堂上進行Cocos2d-x程序“HelloWorld”框架的講解時(如圖2所示),同時打開相應的代碼編輯器,實際操作,讓學生能夠直觀地理解從“main”到“AppDelegate”再到“HelloWorldScene”的程序入口;然后立即進行調試,添加了載入tmx地圖文件的代碼,讓學生真正從動手操作的角度理解游戲設計思路;而在程序成功載入地圖并顯示在屏幕上之后,學生的積極性也被明顯地帶動起來。
在結合智能專業(yè)特色進行本課程的教學時,我們既安排人工智能新技術的介紹,又進行了游戲人工智能算法的講解。在課程前期,我們基于深度學習算法被應用在圍棋游戲的例子,介紹了從傳統(tǒng)圍棋AI程序到Alpha Go再到Master的一系列發(fā)展以及其背后的基本算法機制。結合游戲設計課程,介紹了基于深度學習的強化學習算法被應用在雅達利游戲、星際爭霸、吃豆人等游戲上的例子,體現(xiàn)了當前人工智能領域的最新進展,激發(fā)了學生繼續(xù)學習各種智能算法的興趣。在具體的游戲人工智能算法學習時,我們?yōu)閷W生重點介紹了一些常用的算法,如尋路算法、決策樹、模糊邏輯等。同學們學習興趣濃厚,并在期末項目考核時有意識地實現(xiàn)了部分人工智能算法。
3.2 考核設計
根據前文所述,我們依據教學內容安排,制定了相應的考核方式,主要包含:①平時成績,20%;②期末項目宣講,60%;③項目書面報告,20%。
其中,平時成績主要包含考勤與小作業(yè),各占平時成績的50%。最后提交的項目書面報告主要依托于期末項目宣講的主要內容,進行書面化規(guī)范化寫作。本課程考核的核心是以小組為單位進行期末項目宣講。在宣講時,對于每小組的考核主要分3個階段進行,分別是:①游戲程序演示;②關鍵代碼與流程講解;③提問與回答。參與這3個階段的學生是由抽簽程序決定,要求覆蓋到小組所有成員。三個階段分別打分,分值各占1/3,使得考核過程能夠充分反映具體學生的工作量,同時也起到監(jiān)督小組分工執(zhí)行的目的。在實際的項目宣講中,涌現(xiàn)出許多完成度較高、程序質量較好的優(yōu)秀游戲,獲得了很好的課堂教育效果,部分例子如圖3所示。
4 結 語
本門課程以重慶郵電大學智能科學與技術專業(yè)為支撐,以計算智能重慶市重點實驗室為依托,具有良好的教學研究基礎與實驗平臺。希望通過研究與創(chuàng)新,能夠持續(xù)不斷地提升課程質量,培養(yǎng)學生的專業(yè)能力,為游戲行業(yè)提供人才基礎。
參考文獻:
[1] 中國音像與數字出版協(xié)會游戲工委. 2016年中國游戲產業(yè)報告[EB/OL]. [2016-12-22]. http://www.cgigc.com.cn/gamedata/index.html.
[2] 欒曉, 于洪. 智能游戲開發(fā)與設計課程教學方法探索[J]. 計算機教育, 2016(10): 42-44.
[3] 李儀.“人工智能與游戲編程”課程設計[J]. 計算機教育, 2010(19): 99-117.
[4] 曾憲華, 李偉生, 于洪. 智能信息處理課程群下的機器學習課程教學改革[J]. 計算機教育, 2014(10): 60-62.
[5] 張岳. 面向游戲產業(yè)新趨勢的高校游戲設計課程教學改革[J]. 計算機教育, 2015(12): 24-27.
(編輯:郭田珍)endprint