计算机图形学
1000433 计算机图形学
一、总述
1. 教材
参考教材使用:Computer Graphics with Open GL. by Donald D. Hearn
仅作参考书(字典)使用,书中有详细的图形学算法的 opengl 实现。
2. 作业
作业组成为:4 次小作业 + 大作业
22 学期的作业组成为:4 个 Assignment 和 3 个 lab + 大作业,其中由于时间缘故第 3 个 lab 改为选做加分
小作业:
-
每次小作业由若干个概念阐释题目和一个编程题目构成,编程题不要求提交源代码,只需要展示关键代码和成品结果。
-
要求用 OpenGL 实现,考察最基本的图形学算法,在熟悉 api 的前提下不会占用很多时间。
22 学期作业要求: * Assignment 中有编程题的话要求提供代码并且能通过编译在助教那边能生成可执行文件 * lab 的 3 个题目分别为 DDA/Bresenham 画圆, 边坍缩和光线追踪
大作业:
-
自由选择主题,CG 方面的 application 即可。如果偏向渲染可以做 PBR 的各种材质、进阶光照算法、体积渲染等,如果偏向仿真可以做流体的模拟,同时也有较多小组选择做游戏,综合性更强。
-
能力有限的同学可以尝试
shadertoy
这种相对简单点但效果很好的方式。[SharderToy] -
大作业的官方动日期为第九周(防止组员中期退课)。分为:开题展示 (proposal) ,中期展示,和期末展示三个阶段。建议提前开始规划,提前开始组队,临近期末时间会非常紧张。
-
建议至少有一半以上能 all in 的靠谱队友!!!
-
如果想在大作业中加入物理引擎,建议找成熟的引擎方案,即文档多,bug 少的。血与泪的故事 orz
3. 考试
21 学期考试内容:
-
大部分内容考察知识点的理解,比如用自己的话阐释两个概念之间的区别
-
一题考察 OpenGL 程序的简单填空(写了作业就会做)
-
一题考察了 hermite 样条的推导,在 ppt 上有详细的过程。
22 学期考试内容: * 部分考题来自于平时的 Assignment * 考试范围不超过老师考前提供的 Review * Curves 在 Review 中只出现了一行,但是考了一个问答题(4 分)和两道大题(各 8~9 分,具体分数记不清楚) 占比蛮大 * 考题全为问答题的形式,其中分值较大的题涉及边坍缩、用 Half-edge 结构遍历相邻的点的伪代码。 * 考试内容较多,时间紧张
二、任课教师
1. 13182 Zhao
和计科导的 Zhao 老师是同一位。虽然大作业的 workload 比较重,但是 Prof. Zhao 上课认真负责,群里提问都会回答,通过这门课能真的学到很多东西,因此个人还是比较推荐这门课的。
期末的课程反馈老师也会仔细看,我提的意见是增加渲染在课程中的比例,Zhao 老师说他会采纳,课程的改革应该在 22 年的课上就能体现出来。