计算机图形学“体验式”教学体系的研究与实践

时间:2022-10-26 01:08:49

【前言】计算机图形学“体验式”教学体系的研究与实践由文秘帮小编整理而成,但愿对你的学习工作带来帮助。1 实验教学现况分析 图形学是一门实践应用型学科,虽然它的知识内容相对于其他计算机专业课程而言比较难以理解,但其概念、逻辑关系等基本上源于对现实世界的抽象,在现实世界里都能比较容易地找到与之相对应的原型[5]。熟练掌握图形学技术能够使用户制作出令人赏心悦...

计算机图形学“体验式”教学体系的研究与实践

摘 要: 针对计算机图形学传统实验教学过程中存在的问题,提出“体验式教学改革新思路。新思路提出“编程实践”、“图形软件应用”和“理论学习”相结合的教学改进方法,对实验环境、实验环节及实验内容重新作出设置与安排,最终构建一个完整的图形学“体验式”教学体系。实践表明,该教学体系的应用能较好地激发学生的学习热情,培养和提高学生实践操作能力。

关键词: 计算机图形学; 实验教学改革; 体验式教学体系; 实践操作能力

中图分类号:TP393 文献标志码:A 文章编号:1006-8228(2013)11-63-03

0 引言

计算机图形学是计算机视觉领域中一门重要的学科,同时也是建立在传统的图学理论、应用数学及计算机科学基础上的一门综合叉学科[1]。它利用计算机处理图形信息(如图形信息的表示、输入输出与显示、图形的几何变换及人机交互绘图等)[2]。在过去的几十年里,图形学在计算机辅助设计与制造、计算机动画艺术、虚拟现实等诸多领域得到了广泛的应用。作为实践教学的重要组成部分,实验教学在培养实践能力和创新型人才过程中起着十分重要的作用。基于近年来在图形学领域内出现的巨大变化及本校“应用型人才培养”模式[3-4]的确立,有必要对当前的计算机图形学实验教学过程采取进一步的改革措施,提升这门课程的实验教学水平。

1 实验教学现况分析

图形学是一门实践应用型学科,虽然它的知识内容相对于其他计算机专业课程而言比较难以理解,但其概念、逻辑关系等基本上源于对现实世界的抽象,在现实世界里都能比较容易地找到与之相对应的原型[5]。熟练掌握图形学技术能够使用户制作出令人赏心悦目的图形效果。目前的图形学实验教学过程还存在一些问题。

仅从算法验证性实验的角度来组织实验教学是一个问题。计算机图形学是一门建立在算法基础上的学科,掌握必要的算法知识是深入学习图形学不可或缺的条件。所以,很多教师会选择仅仅从算法编程验证的角度来组织实验教学。这些算法的验证性实验在一定程度上锻炼了学生的编程能力,但对学生创新性思维的培养及解决实际问题的能力培养没有显著的成效。同时,对于数字媒体技术专业的学生而言,过分强调算法理论会影响学生学习图形学的兴趣和信心,这样势必会影响到最终的教学效果。

实验教学脱离图形学的实际应用背景也是一个问题。在设计实验项目时,很多教师没有考虑到项目设置的实际应用背景,学生在实验的过程中,只会根据教师的要求,对一些关键算法进行简单的编程验证,教师没有引导学生将所掌握的基本理论知识与相关应用领域建立起联系,这一做法极大地降低了实验课程对学生的吸引力,长此以往便会在学生心中形成图形学“学为何用”的疑问。

2 实验教学方法改革

计算机图形学的学习目标是让学生掌握及应用本课程相关的算法技术来解决实际问题,但在以往的教学过程中我们发现,由于图形学中的大部分算法技术描述比较抽象,理解难度较大,学生常常会产生畏难情绪。出于对以上因素的考虑,我们曾尝试以“实践引导理论”的方法来组织教学。譬如,在讲解“纹理贴图”这一理论知识点之前,首先在实验课堂上给学生演示在图形软件产品3D Max中如何调用纹理贴图命令实现贴图效果,同时让学生观察不同参数设置下的纹理映射效果,在此过程中,学生会产生如“各项参数具备什么作用”等疑问。接下来,教师继续让学生使用微软图形库OpenGL结合Visual C++ 6.0[6]编程实现预定的纹理贴图效果,再提出相同的疑问。带着这些疑问,教师在课堂上为学生讲解图形学中“纹理映射”这一理论知识点,引导学生回到理论学习阶段。

我们将以上方法总结为“编程实践”、“图形软件应用”和“理论学习”三结合法。三结合法中的“编程实践”摒弃了传统的“算法验证”环节,让学生通过调用及组织OpenGL中的“图形命令”实现预定的真实感图形效果,使得学生直接面向可视化的算法结果,这一举措让学生从繁琐低效的算法编程中彻底摆脱出来。此外,要求学生对三维动画及其制作软件3D Max有基本的了解。由于三维动画的制作流程涉及了图形学几乎所有算法技术,而3D Max作为其基本实现工具实际上就是图形学技术的软件产品,它所包含的所有函数命令都是根据图形学算法技术编写而成的。学生通过调用3D Max中的诸多命令实现各种具备真实感的三维场景,这一过程让学生直观地了解到图形学中抽象复杂的算法在实际生活中的应用。

为了更好地将上述方法落实到教学过程中去,我们将三结合法中的“编程实践”、“图形软件应用”提取出来,并从实验环境、实验环节及实验内容设置等方面对其进行补充和完善,最终形成了一个完整的图形学“体验式”教学体系。实践证明通过该体系,学生可以真正地将理论和实践融合到一起,极大地提高了学习兴趣及学习效率。

3 “体验式”教学体系设置

3.1 实验环境设置

一个完善的图形学“体验式”教学体系主要包括三个方面:OpenGL编程实践、图形软件3D Max应用及OpenGL结合3D Max实现三维交互技术。为了同时满足以上三方面教学内容的要求,我们在传统的Visual C++ 6.0开发环境下引入了OpenGL[7],所有的实验项目都是在安装了GLUT的Visual C++ 6.0的环境下进行。同时,每一台学生机上也要安装配置好3D Max应用程序。

此外,为了方便指导学生完成3D Max应用环节及三维交互技术环节的实验内容,在教学安排上应当把计算机图形学和三维动画制作两门课程放在同一学期内,以便将三维动画制作课程中的部分授课环节纳入到计算机图形学实验教学过程中。这一举措也顺应了近年来本校所一贯提倡的应用型“课程整合”[8]大趋势。

3.2 实验环节设置

“体验式”教学体系的实践过程包含以下三个环节:使用OpenGL基本图形命令绘制及显示图形;使用3D Max基本图形命令实现形体的三维建模;OpenGL结合3D Max实现三维仿真。

3.2.1 使用OpenGL基本图形命令绘制及显示图形

采用OpenGL结合Visual C++ 6.0实现简单图形的绘制、变换及真实感显示等功能,这一环节的设置让学生从繁琐的图形学算法编程中摆脱出来,更多的接触实际开发过程所使用的工具与开发环境。

3.2.2 使用3D Max基本图形命令实现形体的三维建模

通过调用3D Max图形命令来完成复杂模型(如三维场景中人物模型、动物模型及器物模型)的真实感显示,使学生直接面向图形学的实际应用过程。

3.2.3 OpenGL结合3D Max实现三维仿真

以图形学软件产品3D Max作为建模工具,结合OpenGL交互技术,完成自选课题。通过本环节的学习,学生可以从更高层次上体验图形学的实际应用背景。

3.3 实验内容设置

根据如上实验环节设计相应的实验内容,在“体验式”教学模式下,我们将实验内容分为验证应用型、提高应用型及综合设计型三个层次,下面结合实验环节分别详细介绍以上三种类型下的实验内容分布。

3.3.1 验证应用型实验

计算机图形学课程包含了多种算法原理的讲解,针对复杂繁琐的算法原理,我们摒弃了传统的算法编程验证环节,直接让学生使用OpenGL基本图形命令实现基本图元及组合图元的绘制、图元的几何变换、图形的真实感效果显示等功能。

计算机图形学中的算法技术主要涵盖造型技术、变换技术、真实感图形技术三个方面。结合图形学算法技术内容分布情况,我们将验证应用型实验内容作如下设置。

⑴ 使用OpenGL图形命令实现基本图形的绘制。

⑵ 使用OpenGL图形变换命令实现基本图形的几何变换及组合图形的绘制。

⑶ 使用OpenGL颜色命令为图形着色。

⑷ 使用OpenGL光照命令为图形添加光照效果。

⑸ 使用OpenGL纹理映射命令为图形添加纹理贴图效果。

⑹ 使用OpenGL曲线、曲面函数实现复杂曲面的绘制。

⑺ 使用OpenGL实现形体隐藏面的消除。

⑻ 使用OpenGL实现图形的融合、反走样、雾化效果。

通过以上实验内容,学生可以直接面向可视化的算法技术成果,加深了他们对于图形学实际应用过程的认识与体验。需要注意的是,在进行以上实验内容之前,教师应当用2课时时间介绍OpenGL应用概述,并指导学生完成Windows程序框架下OpenGL实验框架的搭建。

3.3.2 提高应用型实验

三维动画作为计算机图形学重要应用领域之一,它的制作过程几乎沿用了图形学中所有的算法技术。作为目前比较前沿的计算机视觉应用领域,三维动画成功的推出了许多优秀的制作软件(如3D Max、Alias、SOFTIMAGE等)。其中AUTODESK公司的3D Max以其着色速度快、色彩丰富等优点得到广大用户的青睐。作为一种软件产品,3D Max将动画制作过程中所要用到的功能进行了分门别类的整理,其应用程序中的每一条命令基本上都对应了图形学中的某一特定的算法技术。所以,可以通过调用3D Max图形命令来完成复杂模型(如三维场景中人物模型、动物模型及器物模型)的真实感显示,使学生直接面向图形学的实际应用背景。出于以上因素的考虑,在“体验式”教学体系中,我们为提高应用型实验设置了如下内容。

⑴ 使用3D Max绘制角色模型(包括人物模型、动物模型)、器物模型及场景。

⑵ 在三维场景中实现角色及器物的颜色设置或几何变换(平移、变比、旋转、错切等)。

⑶ 为角色或器物表面定义材质(如透明度、反光度及粗糙程度等),并为其添加纹理贴图效果,形成具备真实感的表面细节和结构。

⑷ 依照摄影原理,在计算机内部设置虚拟摄影机,调整镜头、“打上”光照,最终形成生动逼真的场景画面。

由于应用型实验内容主要涉及到三维动画制作及3D Max软件的使用,结合当前本校正在进行的“课程整合”的需要,我们将图形学实验构成中的“提高应用型”实验环节纳入到三维动画制作的部分实践课程中去。这样的融合一方面让学生体验到图形学算法技术的实际应用性,另一方面可以让学生领会数字媒体技术专业课程之间存在的紧密联系,为后续的专业课程学习增添信心。

3.3.3 综合设计型实验

虽然在OpenGL中容易实现各种图形的变换、着色、光照、纹理等效果,但OpenGL只能绘制基本的图形元素。尽管我们可以通过对这些基本图形元素进行组合变换得到较为复杂的图形,但这样的图形绘制过程比较繁琐,效果也差强人意。而3D Max作为一种比较前沿的图形建模及动画制作软件,方便建立各种复杂模型。在交互技术方面,虽然3D Max具备高质量的建模效果,但是它没有交互性,无法实现实时控制。而OpenGL作为一个三维工具软件包,在三维交互编程等方面提供了比较完善的机制。用户可以通过OpenGL较容易地利用鼠标、键盘进行交互。

综上所述,综合设计型实验可以选择3D Max作为建模工具,结合OpenGL交互技术实现三维仿真[9-10]。在“体验式”教学体系的实践过程中,为了让学生更快更好地完成自选课题,我们首先为学生设计了一项仿真示例“飞机模型的实时控制”。以下介绍具体过程。

⑴ 用3D Max建立飞机模型,本步骤要求实现飞机模型的基本造型及真实感效果。

⑵ 利用View 3ds将3D Max格式的三维模型转换成OpenGL格式。

⑶ 在Visual C++ 6.0开发环境中,建立一个基于MFC的单文档应用程序,通过添加OpenGL相关库、修改View类头文件、添加View类消息函数等操作将飞机模型加载到OpenGL三维环境中。

⑷ 在三维环境中通过调用OpenGL相关命令调整飞机模型的尺寸、显示角度等。

⑸ 当飞机模型在OpenGL三维环境中按照预定效果正常显示后,便可以通过键盘、鼠标或者定时器实现飞机模型的实时控制。

按照以上步骤实现的飞机仿真系统,其结果分别如图1(a)、图1(b)所示。其中,天空是利用OpenGL中的贴图方法加载到三维环境中去的,其动画效果通过纹理控制来实现。同时,通过键盘上的方向键可以实时控制飞机的飞行方向和飞行角度。

综合设计型实验采用“大案例”,让学生独立完成课题选定、素材搜集、内容设计等工作,其过程涉及到OpenGL和3D Max两方面技术的综合运用。目前,本校数字媒体技术专业正着力于“媒体类课程整合”工作,因此我们将图形学的综合设计型实验纳入到“综合课程设计”的环节中,即:将图形学课程设计与三维动画课程设计融为一体,让学生在设计过程中充分体验图形学技术在实际应用中的非凡魅力。

以上便是“体验式”教学体系中实验内容的详细介绍。在实际教学过程中,我们还将根据学生的实际情况,适时对内容作出新的调整。

4 结束语

针对计算机图形学传统实验教学方法中普遍存在的问题,立足于“应用型人才培养”模式,着力构建一个图形学“体验式”教学体系。为了满足新的教学体系中“编程实践”、“图形软件应用”和“理论学习”三结合方法的需求,对实验的环境、环节及实验内容重新作出设置与安排,最终构建了一个完整的和完善的图形学“体验式”教学体系。实践表明,该体系的实施对加深课程理解、培养学生学习兴趣和提高教学质量有着显著的成效。在接下来的教学过程中,我们将继续对“体验式”教学体系作进一步的完善,在原有的图形学实践过程中,尽可能多地纳入其他相关媒体技术类课程的实验内容,让学生在课程整合的过程中体会学为其用。

参考文献:

[1] 李春雨.计算机图形学理论与实践[M].北京航空航天大学出版社,2004.

[2] 倪明田,吴良芝.计算机图形学[M].北京大学出版社,1999.

[3] 蔡长安,汤克明.地方院校校企合作提高IT大学生的就业能力探索[J].实验室科学,2012.15(1):176-179

[4] 陈旭辉,吴克寿,姜春艳.基于CDIO理念的计算机工程教育模式[J].计算机教育,2010.18:141-143

[5] 刘晋钢,孔令德,王进忠.“计算机图形学”课程新教学模式的研究实践[J].计算机教育,2010.3:63-65

[6] 伍军云,徐少平,占传杰.基于OpenGL的计算机图形学辅助教学课件[J].计算机与现代化,2007.9:114-119

[7] 费广正,乔林.Visual C++6.0高级编程技术——OpenGL篇[M].中国铁道出版社,2000.

[8] 黄琼.在计算机应用类课程中开展研究性学习的探索[J].南宁职业技术学院学报,2005.1:42-44

[9] 杜利峰,李竹林.基于OpenGL的计算机图形学教学改革探索[J].电子设计工程,2012.20(13):6-8

[10] 吴婷.从OpenGL图形系统谈计算机图形学的应用领域[J].科技广场,2010.6:64-66

上一篇:基于需求导向的Java应用型人才培养探索与实践 下一篇:基于ARM/GPRS的宿舍信息发送系统