hi,小慕
课程

中国大学MOOC,为你提供一流的大学教育

hi,小mooc
计算机图形学
第1次开课
开课时间: 2019年03月12日 ~ 2019年07月05日
学时安排: 2学时每周
当前开课已结束 已有 6935 人参加
老师已关闭该学期,无法查看
课程详情
课程评价(259)
spContent=宣传片特点:原创CG人物小图(头戴CG帽子、短胳膊短腿的人物)+原创背景音乐(小图出现时) 课程进行时:小图导学-教师授课-小图助学-github完整资源 课程的收获:建立图形理论体系+可编程渲染管线+使用图形编程技能(c++,OpenGL,GLSL)(在管线和图形编程,尤其是着色器编程方面与Unity相通)
宣传片特点:原创CG人物小图(头戴CG帽子、短胳膊短腿的人物)+原创背景音乐(小图出现时) 课程进行时:小图导学-教师授课-小图助学-github完整资源 课程的收获:建立图形理论体系+可编程渲染管线+使用图形编程技能(c++,OpenGL,GLSL)(在管线和图形编程,尤其是着色器编程方面与Unity相通)
—— 课程团队
课程概述

计算机图形学是研究怎样利用计算机来显示、生成和处理图形的原理、方法和技术的一门学科,是计算机科学与技术、软件工程、数字媒体技术等专业的必修课。近年来,计算机图形学被广泛应用在影片渲染、计算机游戏、虚拟现实、科学计算可视化等多个方面。

 

我们的计算机图形学课程有管线视角理论体系完整编程框架先进将对课程中讲解的实验提供配套代码下载,包括完整工程以及工程中用到的资源,如课程团队原创的卡通人物形象的模型资源等)三个特点:

第一,管线视角的图形学,按照图形渲染管线的三个概念阶段,即应用程序阶段、几何阶段、光栅化阶段来组织课程内容,将整个课程内容划分为五篇:基础篇、应用程序、几何阶段、光栅化阶段、高级话题。

第二,构建完整的理论体系,将传统理论和图形新发展结合起来,既包括朴素的软光栅、经典的造型技术,也包括真实感图形学的光照、纹理、阴影等内容,在这些内容中不仅体现经典的算法,还包括一些新的算法如实时光线追踪、法线贴图、实时动态阴影等。


第三,搭建先进实用的编程框架,基于可编程管线进行图形编程,采用主流的图形标准OpenGL,并用采用其着色器语言OpenGL Shading Language(简称GLSL)进行着色器的编写(Shader的编写思想与Unity3D相通)。这个图形编程框架充分利用了日趋强大的GPU的计算能力,和目前工业界的实际做法完全相通。设置了从在一个窗口中绘制多边形到粒子系统、延迟渲染的多个进阶实验,逐步提高学生的图形编程能力。实验将提供配套代码的下载链接。


授课目标

1、让学生学习到经典的图形理论;

2、让学生了解最新的基于GPU的可编程渲染流程;

3、带领学生基于最新的图形编程框架(基于OpenGL和GLSL)完成实验;

4、让大家感觉渲染影片、开发游戏引擎、实现虚拟现实应用、进行科学计算可视化并非遥不可及。

课程大纲
欢迎来到图形世界
课时目标:介绍图形学的基本概念和发展历史,讲解图形学的应用领域和研究方向。
1.1初识图形学
1.2有趣的图形应用和研究
认识图形系统
课时目标:讲解图形系统的构成,介绍输入设备、显示设备和图形子系统的构成。
2.1图形系统浅析
2.2从穿孔纸到数据衣:输入设备
2.3从CRT到3D显示(上):CRT的前世今生
2.3从CRT到3D显示(中):平板的奥秘
2.3从CRT到3D显示(下):神奇的3D显示
2.4从CPU到GPU:图形显示子系统
可编程渲染管线
课时目标:讲解可编程渲染管线的流程,介绍着色器编程,给出搭建实验环境的的方法并通过绘制窗口进行验证。
3.1从固定到可编程
3.2探秘GPU渲染管线
3.3着色器编程
实验 绘制窗口(搭建实验环境,绘制窗口,在窗口中绘制三角形)
图形思维的起点——朴素的软光栅
课时目标:通过讲解直线、圆、椭圆、多边形的扫描转换和区域填充,让大家了解基于逐个像素生成图形的方法,启发图形思维。
4.1初次尝试——点和直线(上):DDA算法(数值微分法)
4.1初次尝试——点和直线(中):中点的Bresenham算法
4.1初次尝试——点和直线(下):改进的Bresenham算法
4.2如果是圆?(上):八分法画圆
4.2如果是圆?(下):中点Bresenham画圆
4.3椭圆又如何?
4.4遇见多边形(上):X扫描线算法
4.4遇见多边形(中):Y向连贯性算法
4.4遇见多边形(下):边标志算法
4.5巧妙的区域填充
4.6属性——改变图元的模样
4.7必不可少的反走样
实验 绘制四边形(学习VAO、VBO、EBO,用VAO/VBO和结合EBO两种方式绘制四边形)
探秘造型技术
课时目标:讲解造型技术,既包括规则造型的几种经典方法,也包括针对非规则造型的分形几何、粒子系统等。在实验中则尝试球的绘制和模型的导入。
5.1初识造型技术
5.2样条的魔力
5.3规则形体(上):边界表示
5.3规则形体(中):构造实体几何表示
5.3规则形体(下):空间分割表示
5.4遇见非规则(上):自然的奥秘——分形几何
5.4遇见非规则(下):聚沙成塔——粒子系统
实验 绘制球(shader类的引入,用EBO方式绘制球)
实验 模型导入
变换与观察
课时目标:引入齐次坐标和矩阵运算,学习模型变换和视图变换。
6.1神奇的齐次坐标
6.2三维模型,动起来!(模型变换)
6.2观察者也能动(视图变换,也称观察变换)
投影变换
课时目标:学习基本的投影变换,了解规范化投影空间和相应的变换。
7.1有趣的投影
7.2规范化的投影变换(投影变换)
实验 摄像机(摄像机camera类的引入,通过改变视点位置进行场景漫游)
裁剪与屏幕映射
课时目标:学习裁剪算法及屏幕映射,并以6-8章中学到的模型变换、视图变换和投影变换为基础用PVM矩阵完成立方体旋转的实验。
8.1裁剪思想(上):规整的编码裁剪
8.1裁剪思想(下):聪明的Liang-Barsky算法
8.2真正的裁剪——在三维空间遇见多边形
8.3映射到屏幕
实验 立方体旋转(PVM矩阵、z缓冲的引入,通过更改PVM矩阵来使立方体旋转)
奇妙的真实感——片元着色
课时目标:介绍颜色模型,讲解光照、纹理以及阴影的计算。
9.1图形渲染与视觉外观
9.2奇妙的颜色(上):视觉现象
9.2奇妙的颜色(下):颜色模型
9.3光照明模型:光照的编年史
9.3光照明模型(上):Phong模型初步
9.3光照明模型(中):Phong模型实现
9.3光照明模型(下):全局光照
实验 Phong光照模型
9.4让人头疼的纹理(上):颜色纹理
实验 颜色贴图(平面贴图,立方体贴图)
9.4让人头疼的纹理(下):几何纹理
实验 法线贴图(引入切线空间,实现法线贴图)
9.5加入阴影会怎样?
实验 实时动态阴影(引入帧缓冲附件,实现基于shadow mapping的阴影计算算法)
有趣的测试和合并——片元操作
课时目标:介绍光栅化阶段的片元操作和相关概念,并对深度测试算法进行介绍。
10.1再看片元操作(模板测试、深度测试与颜色混合)
10.2谁遮住了我?(剔除与深度测试)
实验 透明物体处理
高级渲染
课时目标:简单介绍基于物理的渲染,并讲解几种游戏中典型的渲染方法,完成有一定综合性要求的粒子系统和延迟渲染实验。
11.1基于物理的渲染
11.2游戏中的渲染
实验 粒子系统
实验 延迟渲染
展开全部
预备知识

C语言、C++初步。

证书要求

证书要求

课程成绩构成如下:

(1)单元测验:30%

(2)交流讨论:30%

(3)期末考试:40%

本课程设置两档成绩:

(1)合格证书:课程总成绩满足≥60分,但是又没有达到80分;

(2)优秀证书:课程总成绩满足≥80分。


参考资料

1、课程中给出的PDF文件;

2、Real-Time Rendering 4th Edition;

3、陆峰,何云峰编著的《计算机图形学基础(第3版)》。

  

华中科技大学
5 位授课老师
万琳

万琳

教授

陈传波

陈传波

教授

何云峰

何云峰

副教授

推荐课程

【DeepSeek适用】小白玩转AI大模型应用开发

林粒粒

201人参加

小白玩转 Python 数据分析

林粒粒

77人参加
下载
下载

下载App