CS23-计算机图形学

UCSB: GAMES101

课程简介

  • 所属大学:UCSB
  • 先修要求:线性代数,高等数学,C++
  • 编程语言:C++
  • 课程难度:🌟🌟🌟
  • 预计学时:80 小时

官方介绍:

本课程将全面而系统地介绍现代计算机图形学的四大组成部分:(1)光栅化成像,(2)几何表示,(3)光的传播理论,以及(4)动画与模拟。每个方面都会从基础原理出发讲解到实际应用,并介绍前沿的理论研究。通过本课程,你可以学习到计算机图形学背后的数学和物理知识,并锻炼实际的编程能力。 作为入门,本课程会尽可能的覆盖图形学的方方面面,把每一部分的基本概念都尽可能说清楚,让大家对计算机图形学有一个完整的、自上而下的全局把握。全局的理解很重要,学完本课程后,你会了解到图形学不等于 OpenGL,不等于光线追踪,而是一套生成整个虚拟世界的方法。从本课程的标题,大家还可以看到“现代”二字,也就是说,这门课所要给大家介绍的都是现代化的知识,也都是现代图形学工业界需要的图形学基础。

GAMES101 是国内相当有名的图形学公开课。和大家印象中满是数学和算法的图形学不同,这门课以十分生动的方式带我们进入了图形学这个领域的大门。

每个project代码量都不会很多,但是却都十分有趣。在做这些project的过程中,我们会实现简单的光栅化,并渲染一个简易的模型,我们还会实现光线追踪,以追求渲染更好的质量。每个project中还有选做的拓展作业,可以让我们渲染的模型具有更好的质量,更快的渲染速度。

喜欢玩游戏的同学应该对实时光线追踪有一定的了解,这门课的老师闫令琪就对这一技术有直接的推动作用。

跟着课程的视频,做完每一个project,相信你会和我一样对图形学,以及现代的渲染技术产生浓厚的兴趣。

课程资源

资源汇总

@ysj1173886760 在学习这门课中用到的所有资源和作业实现都汇总在ysj1173886760/Learning: graphics/GAMES101 – GitHub 中。

 

 

UCSB: GAMES202

课程简介

  • 所属大学:UCSB
  • 先修要求:线性代数,高等数学,C++,GAMES101
  • 编程语言:C++
  • 课程难度:🌟🌟🌟🌟
  • 预计学时:60 小时

官方介绍:

本课程将全面地介绍现代实时渲染中的关键问题与解决方法。由于实时渲染 (>30 FPS) 对速度要求极高,因此本课程的关注点将是在苛刻的时间限制下,人们如何打破速度与质量之间的权衡,同时保证实时的高速度与照片级的真实感。

本课程将以专题的形式呈现,课程内容会覆盖学术界与工业界的前沿内容,包括:(1)实时软阴影的渲染;(2)环境光照;(3)基于预计算或无预计算的全局光照;(4)基于物理的着色模型与方法;(5)实时光线追踪;(6)抗锯齿与超采样;以及一些常见的加速方式等等。

除了最新最全的内容之外,本课程与其它任何实时渲染的教程还有一个重要的区别,那就是本课程不会讲授任何与游戏引擎的使用相关的内容,并且不会特别强调具体的着色器实现技术,而主要讲授实时渲染背后的科学与知识。本课程的目标是在你学习完这门课的时候,你将有深厚的功底去开发一个属于你自己的实时渲染引擎。

作为 GAMES101 的进阶课程,难度有一定的提升,但不会很大,相信完成了 GAMES101 的同学都有能力完成这门课程。每个 project 代码量都不会很多,但是都需要一定的思考。

课程资源

 

 

UCSB: GAMES103

课程简介

  • 所属大学:Style3D/OSU
  • 先修要求:线性代数,高等数学,大学物理,编程能力,基本图形知识
  • 编程语言:C#
  • 课程难度:🌟🌟🌟🌟
  • 预计学时:50 小时

官方介绍:

本课程将作为基于物理的计算机动画技术入门,着重介绍各种基础的物理动画模拟技术。

该课程主要涵盖四个方向,分别为:1)刚体模拟;2)质点弹簧、约束与布料模拟;3)基于有限元的弹性体模拟;4)流体模拟。

本课程内容将不会涉及具体的物理模拟引擎,但会讨论各种引擎背后的技术,以及它们的优缺点等等。由于开发学习物理模拟需要一定的数学基础,课程初始阶段也会花一定的时间复习必备的数学知识。顺利完成课程之后,同学们应该会对基础的物理模拟技术有深入理解,对高级的模拟技术也会有部分接触。

图形学可粗略分为渲染、模拟、几何三个领域。GAMES101 和 GAMES202 主要以渲染为主,而对于物理模拟,GAMES103 则是很棒的学习资源。

课程资源

资源汇总

@indevn 在学习这门课中用到的所有资源和作业要求都汇总在 GAMES103 Unoffical 中。对于作业的具体实现,在知乎上有很多相关文章进行了细致讲解可以参考。

 

 

Stanford CS148: Computer Graphics

课程简介

  • 所属大学:Stanford
  • 先修要求:线性代数,高等数学,Python
  • 编程语言:Python
  • 课程难度:🌟🌟🌟
  • 预计学时:40 小时

官方介绍:

这是一门计算机图形学的入门课程,这门课的一开始使用 Blender 去生成图像,并且理解底层的数学知识,包括三角形、法向量、插值、纹理映射、凹凸贴图等等。之后会介绍光线和颜色以及它们如何影响计算机的显示和打印。同时也会介绍 BRDF 以及一些基本的光照和着色模型。课程的最后,会涉及到光线追踪、反走样、加速结构等内容。

具体课程信息可以查看课程网站

这门课程比起 GAMES101 浅一些,编程语言使用的是 Python,对于不熟悉 C++ 的同学比较友好。

课程资源

 

 

CMU 15-462: Computer Graphics

课程简介

  • 所属大学:CMU
  • 先修要求:基础的向量微积分和线性代数 , 基础的 C/C++ 编程能力。
  • 编程语言:C/C++
  • 课程难度:🌟🌟🌟🌟
  • 预计学时:100 小时

本课程全面介绍了计算机图形学。它侧重于基本概念和技术,以及它们与图形中多个问题领域(渲染、动画、几何、成像)的交叉关系。主题包括:采样、混叠、插值、光栅化、几何变换、参数化、可见性、合成、过滤、卷积、曲线和曲面、几何数据结构、细分、网格划分、空间层次结构、光线追踪、辐射测量、反射率、光场、几何光学,蒙特卡洛渲染,重要性采样,相机模型,高性能光线追踪,微分方程,时间积分,数值微分,基于物理的动画,优化,数值线性代数,逆运动学,傅立叶方法,数据拟合.

课程资源

 

 

USTC: Computer Graphics

课程简介

  • 所属大学:中国科学技术大学
  • 先修要求:微积分,线性代数,C/C++编程,数据结构
  • 编程语言:C/C++
  • 课程难度:🌟🌟🌟
  • 预计学时:100小时

中科大数学学院的刘利刚老师在20年疫情期间上传的课程,个人感觉跟 Games101 的注重渲染相比在内容上更全面,有着后者所没有的离散几何处理等内容,看起来更加数学化,可以与 Games101 进行互补,课程资料全面公开。

课程资源

  • 课程网站:http://staff.ustc.edu.cn/~lgliu/Courses/ComputerGraphics_2020_spring-summer/default.htm
  • 课程视频:https://www.bilibili.com/video/BV1iT4y1o7oM/?spm_id_from=333.880.my_history.page.click&vd_source=eea47a16439992e41b232bc5d5684e27
  • 课程教材:本课程不规定使用规定教材,以学术前沿论文为主,以下教材仅仅为参考 E. Angel, Interactive Computer Graphics — A top-down approach using OpenGL™, 6th ed., 2011. (中文翻译版:交互式计算机图形学—基于 OpenGL 的自顶向下方法(第五版),电子工业出版社,2012)
  • 课程作业:http://staff.ustc.edu.cn/~lgliu/Courses/ComputerGraphics_2020_spring-summer/default.htm ,九个作业加一个 Project ,具体看官网

 

by csdiy.wiki

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
none
暂无评论...