周文宏 賈文 高悅 郭馥英 宋力
摘 要 目前 游戲產(chǎn)業(yè)的發(fā)展如火如荼 為了與時俱進 降低教學實踐中的游戲編程難度 提高學生的學習興趣 對 計算機游戲程序設計 課程的教學內(nèi)容 教學工具進行改革 并對教學方式進行研究和探索 以期提升教學質(zhì)量 從而提高學生的游戲設計與開發(fā)能力 以及工程實踐能力
關鍵詞 游戲程序設計Unity3D 教學方法
中圖法分類號: TP311? 文獻標識碼:A
1 引言
在2010 年,西安電子科技大學開設了“計算機游戲程序設計”課程,這門課程最初為計算機科學與技術學院面向大三所開設的任選專業(yè)課,總學時36 學時,計2 學分。
該課程的教學目標是讓學生了解游戲的分類、開發(fā)過程以及設計游戲所需的各種基本知識,并通過游戲設計實踐,使學生對游戲設計具備一定的基礎,同時培養(yǎng)學生的游戲設計全局觀,為進一步探索游戲設計奠定基礎。
開發(fā)工具使用Visual C + +, 結合DirectX 及OpenGL。授課教材以耿衛(wèi)東、陳為編寫的《計算機游戲程序設計》(第二版)為主,結合主講教師編寫的補充內(nèi)容。其特點是涉及的技術理論較多、較深,該程序用C/ C++編寫,交互方式涉及Windows 系統(tǒng)的消息機制,復雜效果涉及DirectX,OpenGL 的使用,對一部分學生而言,學習和掌握這部分內(nèi)容有較大的難度,因此需要投入較多的編程時間,程序調(diào)試也較困難,這導致了學生學習效率以及動手實踐的積極性降低,從而直接影響課堂教學質(zhì)量和教學效果。另外,由于Unity3D 在游戲行業(yè)的盛行,以及手游市場的占有率較高,目前已成為國內(nèi)使用最多的游戲引擎之一。其具有界面友好,功能豐富,素材資源眾多,以及入門較為容易等特點,并且可以做到立刻出結果,由于采用C#編寫腳本,因此降低了學習難度?;谏鲜鲈?,此次課改對課程的教學大綱、教學內(nèi)容、教學工具,以及考核方式進行了較大的改動,并對多種教學方法的融合進行了研究和探索。
2 課程改革內(nèi)容
保留原來前三章的內(nèi)容:計算機游戲簡介、游戲程序設計概述、二維游戲的基本編程技術;刪除有關DirectX,OpenGL 的高級圖形技術、人機界面、游戲中的人工智能等內(nèi)容;增加Unity3D 引擎介紹、基于Unity3D 引擎的游戲開發(fā)技術、游戲開發(fā)項目案例等內(nèi)容。課改前后教學內(nèi)容對照如表1 所列。
第一部分:第1~3 章,主要以軟件工程的思想講述游戲程序設計方法,以Windows 系統(tǒng)為平臺,剖析二維游戲的設計原理和編程方法,以便讓學生理解和掌握二維游戲的框架設計思路及基本編程技術,編程語言以C++為主。
這部分之所以保留,目的是讓學生不僅僅掌握一門游戲開發(fā)工具的使用技能,更重要的是理解游戲引擎背后的設計原理。因此,該課程教學目標不僅僅是培養(yǎng)一名合格的程序員,而是要培養(yǎng)理論基礎扎實、工程實踐能力突出,以及創(chuàng)新意識強的高層次專業(yè)技術人才。
第二部分:講述Unity 3D 游戲開發(fā)工具的操作與使用以及開發(fā)的基本知識,最后通過游戲案例將所講知識融會貫通。
3 教學方法
教學方法多種多樣,教師不能只單純追求熱點效應,而應當基于學生與課程特點,適當?shù)夭捎枚喾N或混合教學模式[1] 。
3.1 案例演示導入知識教學法
弱化識記型知識。比如,在Unity 3D 軟件使用中,命令、按鈕以及快捷鍵等操作方式有很多步驟,這些知識主要靠識記。在教學中主要以操作“菜單”為主,減輕學生入門時的識記負擔。
課堂上,主要采用案例演示導入知識教學法,即給出任務→案例演示→游戲創(chuàng)建→腳本編程→知識點講解。通過案例運行的直觀效果引出知識點,然后再講授相關內(nèi)容,最后再運行一次案例,使學生加深理解。隨著課程的深入,后期讓學生在示例的基礎上,通過修改、擴展新功能,鞏固所學知識,加強實際的動手能力。
下文以“風車旋轉”游戲為例,闡述具體的教學實施步驟。
首先,講明任務為實現(xiàn)風車的轉動。然后設計游戲規(guī)則,思考需要準備哪些素材。
第一部分:先運行游戲例子,進行效果演示。
(1)打開已建好的項目,運行游戲。
(2)點擊鼠標左鍵,使風車的旋轉。第二部分:創(chuàng)建游戲。
(3)設計游戲規(guī)則,準備游戲的素材:風車圖片。
(4)創(chuàng)建場景視圖。
(5)給場景添加游戲?qū)ο螅簩L車圖片拖拽到場景視圖中,命名為windmill。
(6)設置風車的坐標、大小,以及背景顏色。
(7)運行,查看風車的靜態(tài)效果。第三部分:編寫腳本。
(8)創(chuàng)建腳本文件RotateController.cs,在該腳本的Update()函數(shù)中編寫鼠標左鍵被按下時,改變旋轉速度。
這里讓學生先對Update()有個印象和大概的了解。以后會在MonoBehaviour 基類中進行詳細的講解。
第四部分:掛載腳本。
(9)把RotateController 腳本拖拽到windmill 對象上(在第5 步創(chuàng)建的)。
(10)運行游戲,單擊鼠標左鍵后,風車開始旋轉。
3.2 項目綜合實例教學
教師根據(jù)教學目標和內(nèi)容要求收集、選取典型案例,對案例進行演示,對涉及的關鍵技術及其實現(xiàn)方法進行分析和講解,培養(yǎng)學生的游戲設計全局觀。表2 以“自建跑道的駕駛游戲”項目為例,介紹案例中涉及的主要知識點。
3.3 實驗教學
實驗教學主要分為以下3 項。
(1)學生根據(jù)教師給的示例,通過實際操作對腳本代碼加以分析和理解。
(2)完成專題實驗作業(yè)。
(3)自由組合,1 ~ 4 人為一組,完成一個實踐項目。從構思、設計到實現(xiàn),最后進行成果匯報,并提交設計文檔,教師進行當場點評。
在該環(huán)節(jié)中,主要采用任務驅(qū)動模式[2] ,將實踐教學作為理論教學切入點,實現(xiàn)理論與實踐的有機結合[3] ,可以鍛煉學生的主動思考能力和設計能力,培養(yǎng)學生的團隊合作意識、溝通協(xié)調(diào)和創(chuàng)新能力,為學生以后步入社會、及早適應工作奠定基礎。
3.4 課堂搬進實驗室,邊講邊練,教學更直觀
將教室遷移至具備實驗環(huán)境的機房,采用“教、學、做”一體化教學方法。教師課前先將相關示例程序共享,學生可以跟著教師的講解同步操作,這樣可使學生加深印象,快速掌握課堂內(nèi)容,提高學習效率。
3.5 借助智課平臺,貼心化教學
建課時, 教師會將教學目標、教學計劃、教學PPT、示例代碼等相關教學資料上傳至智課平臺。每次課后,教師將當天的教學視頻上傳,并根據(jù)實際情況更新教學資源,以供學生預先了解或復習。
3.6 線上教學,拓展知識或翻轉課堂
本次課改增加了4 學時的線上教學。教師會根據(jù)實際情況來進行知識拓展,或者翻轉課堂教學。知識拓展是為了開闊學生視野,可以講授新知識、游戲產(chǎn)業(yè)新動向,或者讓學生觀看相關領域的視頻。
翻轉課堂以學生為中心,將學習的決定權從教師轉移給學生。其核心在于把低階的教學目標移出課堂之外,從而把課堂時間解放出來進行高階目標的深層學習[4] 。這個方法需要提前跟學生溝通,圈定專題范圍,并要求學生在課前一起學習新知識、查閱資料以及準備云課堂上的演講,在云課堂上陳述小組工作成果,回答其他學生的提問。學生通過教來學習,并從其他學生對演講的評論和提問中獲益[5] 。
4 考核方式
考核方式多元化,全面考核學生。總評成績由3部分組成,即“專題實驗作業(yè)(20%) +實踐大作業(yè)(40%,含答辯過程)+筆試(40%)”。其中,實踐大作業(yè)由小組完成,提交材料包括分工說明、策劃書、設計文檔、答辯PPT、源代碼等。
5 實踐的效果與存在的問題
基于實踐教學環(huán)境的使用,使過去“理論+上機實驗” 的教學方式變成了“邊講邊練”的模式,解決了理論與實踐教學相分離導致的教學效果低下的問題;加強了學生現(xiàn)場吸收效果,提高了學生學習的積極性。
課改實施一年來,學生對教學內(nèi)容、教學方法、講課示例、筆試占總成績的比例等給了許多的反饋意見,該課程后期將會適時改進。2022 年,選課生和旁聽生中有3 人選了授課教師的有關游戲設計與開發(fā)方面的本科畢業(yè)設計題目,且在畢設答辯中均獲得了優(yōu)秀成績。在“2022 年陜西省大學生創(chuàng)新創(chuàng)業(yè)訓練計劃項目”中,參與指導的團隊入選了國家級一般項目。
但該課程仍存在一些不足,因為專業(yè)設置、課程性質(zhì)等原因,實踐操作課時安排較少,理論課也未涉及更深的技術及編程技巧。另外,因硬件設備的限制,講課內(nèi)容也未涉及虛擬現(xiàn)實技術。
6 結束語
通過本次的“計算機游戲程序設計”課程實踐教學改革,選用Unity3D 作為游戲開發(fā)工具,融合了多種教學方法,使學生學習的興趣和積極性得到了大幅提高。實踐證明,該課程教學改革加強了學生創(chuàng)新意識與工程實踐能力,并取得了較好的教學效果。在今后的教學工作中,將通過進一步的實踐探索和學生反饋,并總結教學問題,不斷改進和完善,實現(xiàn)教學革新推動教學發(fā)展。
參考文獻:
[1] 吳寧,房琛琛,任燕飛.大班教學環(huán)境下基于SPOC 的混合教學設計與效果分析[J].中國大學教學,2016(5):32?37.
[2] 楊競華.項目教學法在計算機教學中的應用[M].吉林:吉林人民出版社,2021.
[3] 張奕櫻,霍英杰.任務驅(qū)動教學法在計算機教學中的應用實踐[J].佳木斯職業(yè)學院學報,2023,39(1):151?153.
[4] 郭建鵬.翻轉課堂教學模式:變式與統(tǒng)一[J].中國高教研究,2019(6):8?14.
[5] 張萍,DING Lin,張文碩.翻轉課堂的理念、演變與有效性研究[J].教育學報,2017(1):46?55.
作者簡介:
周文宏(1966—),碩士,高級實驗師,研究方向:計算機應用技術。