

摘要:本文針對“計算機圖形學”課程特點及傳統教學模式存在的不足,提出“理論知識系統化,教學過程實例化,應用層次多樣化”的教學思路,將“計算機圖形學”算法原理與交互式圖形軟件設計相結合,并將算法原理應用于實際問題當中,取得了良好的教學效果。
關鍵詞:計算機圖形學;教學模式;應用層次多樣性
1教學現狀分析
“計算機圖形學”是一門理論與實踐結合很強的課程,是計算機各專業的主干課程。通過學習這門課程,學生應掌握計算機圖形生成與處理技術的基礎知識、基本原理和算法[1],具有開發圖形軟件的設計能力,為今后從事計算機圖形圖像處理領域的研究和開發工作打下良好的基礎。在教學中,教師利用高級語言(例如Visual C++)進行程序開發,促進學生熟練掌握高級語言,為開發圖形應用系統打下程序設計基礎。然而在多年的教學中,筆者卻發現多數學生認為這門課程算法太抽象,原理太難,編程不易,面對具體問題時不知如何運用所學算法給出切實可行的解決方案并編寫程序,得出預期結果。
產生上述問題的主要原因是[2]:長期以來,受傳統教育的影響,“計算機圖形學”始終沒有擺脫先理論后應用的傳統教學模式,這一方面使學生在算法及原理學習階段缺乏對抽象理論知識的感性認識,對內容抽象、較難理解的算法只能“死記硬背”,學習過程“似懂非懂”,根本談不上“深入理解”,另一方面使學生進入實踐應用學習階段時對學過的算法及原理遺忘甚多,沒有了理論指導,實踐就無從下手。學生感覺算法及原理和實踐環節是兩張皮,根本無法學以致用,專業興趣得不到激發,學習積極性難以調動,越學越乏味,逐漸失去了信心,嚴重影響教學質量,難以達到預期效果。此外,大部分教材對算法的描述并沒有相應的程序代碼,初學者總有一種不知所措的感覺,認為書上的算法及原理只是紙上談兵,根本就無從實踐,學完后就將其束之高閣。
如何改進教學方法,解決抽象原理與實踐相脫節的問題,讓絕大多數學生在有限的時間內迅速掌握課程的基礎算法及原理,并運用于實踐中,成為具有真才實學的高素質人才,是本課程研究的重要課題。
2教學模式改革
針對傳統教學模式的不足,為了激發學生的學習興趣,提高實踐技能與學習效果,教師應該從課程的大局出發,為學生搭建課程的整體構架,由易到難,由淺入深把握課程的教學要求。筆者總結并提出了教學過程中自始自終貫穿“理論知識系統化,教學過程實例化,應用層次多樣化”的教學思路。
2.1理論知識系統化
“理論知識系統化”是指整個課程中的算法原理遵循由淺入深的講解方式,構建出系統化的圖形算法原理的知識架構。
“計算機圖形學”涉及的理論知識以算法原理為主,故需要詳細解讀,因為算法原理之間相互聯系,互為支撐,故算法講解應由簡入繁,由易到難,搭建出合理的算法架構。
2.2教學過程實例化
“教學過程實例化”是指在課堂教學過程中打破“重算法,輕實例”的教學模式,以教師為主導,學生為主體,運用算法的實例演示、算法對比等方式,讓學生真切感受到本算法設計出的“所見即所得”優秀案例。
首先,在學習每一種算法之前,教師精心設計與現實生活相關聯的、生動直觀的、難易適中的實際問題,讓學生思考如何利用現有的知識解決問題;再運用將要學習的經典算法解決同一問題,通過和前面的方法比較分析,讓學生真正理解所學算法的優勢。
其次,對所用算法的核心代碼進行重點剖析。本課程中的主要算法都配有實現了的程序,但受限于課堂時間,教師不詳細講解,只對算法的核心代碼作重點剖析,讓學生深刻領會算法的精髓所在。
通過上述分析講解,學生獲得“所見即所得”的程序效果圖,加深學習印象,達到了教與學相互促進的目的。
2.3應用層次多樣化
在“計算機圖形學”中,學生從基于光柵掃描顯示器的掃描轉換開始,學習反走樣技術、三維坐標變換、透視投影變換、Z-Buffer消隱算法、帶有材質和紋理的光照模型算法等內容,制作出具有光照和紋理的動態消隱的三維旋轉立體圖,最終對圖形進行交互式設計。
為了使學生能夠由淺到深,深入理解和靈活掌握教學內容,提高軟件設計的綜合能力,教師在課程中遵循“驗證性應用、設計性應用、創造性應用”三個層次組織實踐性教學,知識的難度系數逐級遞增,學生循序漸進提高實踐技能。
(1) 驗證性應用。
學生在課堂學習基礎上,通過上機實驗實現教師課堂上演示的算法原理,對所學理論知識進行驗證,進一步加深對所學算法原理的認識。
(2) 設計性應用。[3]
經過驗證性應用,學生對算法原理已經有了深刻認識,接下來的設計性應用要鍛煉學生選擇正確的算法解決實際問題的應用能力。
為此,教師在重點章節的教學完成后,選取一些特定的應用案例,指導學生選取正確的算法。另外,為了培養學生良好的工作作風和方法,也為后續課程做鋪墊,對于每一個應用案例,教師除了給出實際要求外,還要按照軟件工程的方法明確實驗步驟,即從問題的需求分析入手,在指定算法原理的基礎上詳細設計問題的求解,最后進行編碼及調試。
在設計性應用結束后,教師一定要對學生完成情況給以充分肯定和評價,還要對不足之處和共性問題加以補充和講解,加深學生對每一種算法的理解,升華學生掌握知識的深度和完整性,真正達到知識正遷移的目的,使學生掌握的知識成為他們社會實踐的向導。
(3) 創造性應用。
創造性應用層次是本課程結束后最后一個實踐環節,一般以課程設計或計算機圖形學大型作業的形式來體現,旨在培養學生的動手實踐能力、綜合運用能力、開拓創新能力。該層次強調給學生提供充分的學習自由度和自主性,讓學生主動實踐和親身體驗,為學生在編寫程序和分析過程中發揮創造性提供廣闊的空間。
教師應著眼于全課程,從學生學習的實際情況出發,精心挑選一些與實際應用結合密切的綜合應用實例,具有一定難度的題占30%,中等難度的題占50%,一般難度的題占20%,學生可根據自己的實際情況自由選擇。每一個實例只需給出實驗要求,學生則依照實驗要求自行設計算法加以解決。
學生拿到題目及實驗要求后,首先從分析題目的需求入手,經過構造算法、編程和上機調試等若干步驟獨立完成題目,最終提交完整的大型作業報告。通過獨立完成設計,深化對“計算機圖形學”算法原理的理解,提高對知識理論的獨立運用能力,提高程序設計與調試水平,養成嚴謹的科學態度和良好的工作作風。
3教學效果
在計算機圖形學中,變換矩陣是非常基礎和重要的知識,許多資料只羅列出一堆矩陣公式、圖表等,初學者很難有感性認識。學生通過本課程學習后,結合OpenGL這樣一個非常流行的圖形庫,以實踐方式闡述3D變換矩陣中最簡單的三種變換:平移、縮放及旋轉,效果如圖1所示。
要做出具有真實感的圖形,需要借助顏色模型、光照模型和映射等技術,圖2展示了學生使用Visual
C++開發的圓環在各個方向的光照效果圖。
4結語
“計算機圖形學”課程是一門對理論和實踐要求都很高的課程,在夯實學生基礎理論知識的同時,培養學生解決實際問題的能力。本文提出了在“計算機圖形學”課程教學中引入“理論知識系統化,教學過程實例化,應用層次多樣化”的新教學模式,使該課程的理論知識與交互式圖形軟件設計相結合,學生在掌握理論和實踐鍛煉兩方面均感到應用自如,取得了良好的教學效果。
參考文獻:
[1] 孔令德. 計算機圖形學基礎教程(Visual C++版)[M]. 北京:清華大學出版社,2008.
[2] 黃瓊. 在計算機應用類課程中開展研究性學習的探索[J]. 南寧職業技術學院學報,2005(1):42-44.
[3] 唐世綱. 論案例教學的實施及功用[J]. 教學管理,2005(02):4-7.
Research and Practice of New Model in “Computer Graphics”
LIU Jin-gang, KONG Ling-de, WANG Jin-zhong
(Computer Engineering Department, Taiyuan Institute of Technology, Taiyuan 030008, China)
Abstract: It’s analyzed the characteristic of computer graphics and shortage of traditional model of instruction in the paper. A new teaching model that theory is systemic, teaching process has instances, applied hierarchy is diversification. The scheme combines arithmetic of computer graphics and interactive software design, which apply theories to practice, and has obtained better teaching effect.
Key words: Computer Graphics; teaching pattern; multilevel
(編輯:張玥)