《计算机图形学与虚拟现实》教学大纲
课程代码 | 045101831 |
课程名称 | 计算机图形学与虚拟现实 |
英文名称 | Computer Graphics and Virtual Reality |
课程类别 | 选修课 |
课程性质 | 选修 |
学时 | 总学时: 48 实验学时: 16 实习学时: 0 其他学时: 0 |
学分 | 2.5 |
开课学期 | 5 |
开课单位 | 计算机科学与工程学院 |
适用专业 | 计算机科学与技术、网络工程、信息安全 |
授课语言 | 中文 |
先修课程 | 线性代数、高级语言程序设计、数据结构 |
课程对毕业要求的支撑 | 本课程对学生达到毕业要求有如下贡献: 1.(工程知识)能够将数学、自然科学、工程基础和专业知识用于解决复杂工程问题。 2.(问题分析)能够应用数学、自然科学和工程科学的基本原理,识别、表达、并通过文献研究分析复杂工程问题,以获得有效结论。 3.(使用现代工具)能够针对复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对复杂工程问题的预测与模拟,并能够理解其局限性。 4.(工程与社会)能够基于工程相关背景知识进行合理分析,评价专业工程实践和复杂工程问题解决方案对社会、健康、安全、法律以及文化的影响,并理解应承担的责任。 5.(个人和团队)能够在多学科背景下的团队中承担个体、团队成员以及负责人的角色。 6.(终身学习)具有自主学习和终身学习的意识,有不断学习和适应发展的能力。 |
课程目标 | 课程结束后,学生的以下能力应得到培养和提高:
|
课程简介 | 本课程是主要学习计算机图学的基本概念与基础算法。主要学习从几何数据的表示到计算机图形显示整个流水线中涉及的相关知识与方法。内容包括: 1)二、三维几何图形的数学表示。2)几何变换,这包含两方面的含义:其一是组织大规模场影所需的坐标变换,其二是三维视见流水线中不同坐标空间之间的变换,例如视见变换、投影变换等。3) 光栅化或扫描转换: 从几何模型数学表示到计算机显示设备输出所需要的离散表示间的转换。4) 裁剪与消隐:由于显示区域是有限的,区域外的几何内容应用当剔除,此外显示区域内视点不可见的实体也需要检测。5) 光照模型:对场景内可见物体进行真实感绘制,主要是介绍Phong光照模型和Whitted光照模型及其光线跟踪算法 。5) 计算机动画基础,简单介绍关键帧动画的基本原理与Morphing动画。最后一部分的内容可根据实际需要选材。 OpenGL作为一个标图形软件包的标准,具有简洁易学的特点。本课程以OpenGL作为编程工具来进行相关理论与算法的学习,课程中可根据所学内容穿插介绍OpenGL的重要函数。 |
教学内容与学时分配 |
2.1 图形系统简介 2.2 光栅显示设备 2.3 颜色系统 2.4 OpenGL的体系结构 (三) 曲线曲面表示 6学时 3.1 多边形网格表示 3.1.1数据格式 3.1.2半边结构 3.2 细分曲线曲面 3.2.1 细分曲线 3.2.2 Catmull-Clark细分 3.2.3 Loop细分 3.2.4 插值细分 3.3 参数曲面线曲面 3.3.1 Bézier曲线曲面 3.3.2 B样条曲线曲面 3.4 L系统 3.5粒子系统 第四章 光栅扫描转换 4学时 4.1 直线段的扫描转换:DDA, 中点画线,Bresenham算法 4.2 多边形区域填充 4.3 多边形扫描转换:活性边表算法 第五章 几何与视见变换 6学时 5.1 二维几何变换 5.2 三维几何变换 5.3 投影变换: 正交投影与透视投影 5.4 线段与多边形裁剪: Cohen-Sutherland线段裁剪,Sutherland-Hodgman多边形裁剪 第六章 消隐 4学时 6.1 Z-缓存方法 6.2 画家消隐算法 6.3 BSP树与八叉树与方法 第七章 光照模型 6学时 7.1 Phong光照模型与明暗处理 7.2 全局光照模型与光线跟踪算法 7.3 纹理映射 第八章 计算机动画简介 2学时 8.1 关键帧动画 8.2 Morphing技术 |
实验教学(包括上机学时、实验学时、实践学时) | 有。总学时16。实验内容:(1) OpenGL 编程环境与glut库;(2)网格曲面、细分曲面绘制;(3) 图元光栅化与裁剪;(4) 几何与视见变换;(5)综合实验(2-3人团队协作). |
教学方法 | 课程教学以课堂教学、课外作业、课程实验为主,尽可能结合授课教师的项目内容加以讨论。 |
考核方式 | 期评成绩由一下四个部分构成: 出勤: 5% 课外作业: 20% 编程与实验: 25% 测验与考试: 50% |
教材及参考书 |
|
制定人及制定时间 | 李桂清, 2019年4月10日 |
“CourseTitle” Syllabus
《计算机图形学与虚拟现实》实验教学大纲
课程代码 | 045101831 |
课程名称 | 计算机图形学与虚拟现实 |
英文名称 | Computer Graphics and Virtual Reality |
课程类别 | 选修课 |
课程性质 | 选修 |
学时 | 总学时:48 实验:16 实习: 其他: |
学分 | 2.5 |
开课学期 | 5 |
开课单位 | 计算机科学与工程学院 |
适用专业 | 计算机科学与技术、计算机网络、信息安全等 |
授课语言 | 中文 |
先修课程 | 高级程序设计语言,数据结构,高等数学,线性代数 |
毕业要求(专业培养能力) |
|
课程培养学生的能力(教学目标) |
|
课程简介 | 本课程是主要学习计算机图学的基本概念与基础算法。主要学习从几何数据的表示到计算机图形显示整个流水线中涉及的相关知识与方法。内容包括:
|
主要仪器设备与软件 | PC机, OpenGL, Meshlab, OpenMesh, Unity3D |
实验报告 | 每次实验需要提交实验报告+源码。 |
考核方式 | 提交实验报告、源码、相关数据 + 综合实验汇报 |
教材、实验指导书及教学参考书目 |
|
制定人及发布时间 | 李桂清/2019.5 |
《计算机图形学与虚拟现实》实验教学内容与学时分配
实验项目编号 | 实验项目名称 | 时数 | 实验内容提要 | 实验类型 | 实验要求 | 每组人数 | 主要仪器设备与软件 |
1 | OpenGL编程环境与glut库配置 | 1 | 理解OpenGL开发环境,并能演示简单的图形程序。 利用多OpenGL的线和多边形绘制功能显示三角网格、细分曲面和参数曲面等几何实体真实感效果(需要预先提供带光照的绘制框架) | 必做 | 1 | PC机、OpenGL | |
2 | 网格曲面渲染系统 | 3 | 构建三维模型渲染系统,网能支持网格曲面绘制,可以加载局部光照,设置物体表面材质。 | 设计性 | 必做 | 1 | PC机、OpenGL |
3 | 图元光栅化与裁剪 | 2 | 实现DDA, Bresenham画线算法,Cohen-Sutherland线裁剪算法等。 | 验证性 | 必做 | 1 | PC机、OpenGL |
4 | 几何与视见变换 | 2 | 利用OpenGL 的图形变换函数对目标图形进行旋转、平移缩放变换并绘制变换结果 | 验证性 | 必做 | 1 | PC机、OpenGL |
5 | 网格模型处理系统 | 4 |
| 综合性 | 选做 | 2--3人 | PC机、OpenGL、OpenMesh、Meshlab、Unity3D |
6 | 光线跟踪渲染系统 | 4 |
| 综合性 | 选做 | 2--3人 | PC机、OpenGL、OpenMesh |
7 | 射击游戏 | 5 | 这是一个太空射击游戏,玩家通过瞄准射击消灭从远方开始袭击的敌人,尽可能不让敌人越过我们的防线,保卫我们的家园。框架代码只有敌人不断袭击的效果,需要大家另外实现的基本功能有:
| 综合性 | 选做 | 2--3人 | PC机、OpenGL、OpenMesh、Meshlab、Unity3D |
“Computer Graphics and Virtual Reality” Syllabus
Course Code | 045101831 |
Course Title | Computer Graphics and Virtual Reality |
Course Category | Elective Courses |
Course Nature | Elective Course |
Class Hours | 16 |
Credits | 2.5 |
Semester | 5 |
Institute | School of Computer Science and Engineering |
Program Oriented | Computer Science and Technology, Network Engineering, Information Security |
Teaching Language | Chinese |
Prerequisites | Programming language, data structure, calculus, linear algebra |
Student Outcomes (Special Training Ability) |
Lifelong Learning: An ability to be qualified for research work and can continue their studies for master and doctor degrees, and have the ability for life-long learning. |
Teaching Objectives |
|
Course Description | This course introduces basic terminology and fundamental algorithms of computer graphics involved in the graphics pipeline from geometric representation to photorealistic rendering. Concretely, it includes following topics:
|
Instruments and Equipments | PC |
Experiment Report | 1 experimental report for each time |
Assessment | experimental reports and experiment defense |
Teaching Materials and Reference Books |
|
Prepared by Whom and When | LI Guiqing / 2019.5 |
“Computer Graphics and Virtual Reality” Experimental Teaching Arrangements
No. | Experiment Item | Class Hours | Content Summary | Category | Requirements | Number of Students Each Group | Instruments, Equipments and Software |
1 | OpenGL programming platform | 1 | Understand the programming environment of OpenGl, compile and run a simple graphical program | Demonstration | Compulsory | 1 | PC、OpenGL、Internet |
2 | Mesh rendering system | 3 | Make use of line drawing and polygon drawing function of OpenGL to display wireframe and photorealistic images of triangular meshes, support local lighting, s (Assume that the program mainframe for displaying objects has been given with lighting enabled) | Design | Compulsory | 1 | PC、OpenGL、Internet |
3 | Line drawing & clipping | 2 | Implement DDA, and Bresenham line drawing algorithms; Implement Cohen-Sutherland line clipping algorithm. | Verification | Compulsory | 1 | PC、OpenGL、Internet |
4 | Geometric and viewing transformation. | 2 | Make use of OpenGL functions to implement rotation, translation and scale of mesh objects. | Verification | Compulsory | 1 | PC、OpenGL、Internet |
5 | Mesh processing system | 4 |
| Comprehensive | Optional | 2-3 | PC、OpenGL、OpenMesh、Meshlab |
6 | Whitted lighting model & Ray-tracing | 4 |
| Comprehensive | Optional | 2-3 | PC、OpenGL、OpenMesh、Meshlab |
7 | Shooting game | 4 |
| Comprehensive | Optional | 2-3 | PC、OpenGL、OpenMesh、Meshlab |