# GAMES101

## 课程简介

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

官方介绍:

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

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

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

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

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

## 课程资源

- 课程网站：[GAMES101](http://games-cn.org/intro-graphics/), [GAMES101](https://sites.cs.ucsb.edu/~lingqi/teaching/games101.html)
- 课程视频：[bilibili](https://www.bilibili.com/video/BV1X7411F744?p=1), [官网](http://games-cn.org/graphics-intro-ppt-video/)
- 课程教材：Fundamentals of Computer Graphics
- 课程作业：[8 个 project](http://games-cn.org/forums/topic/allhw/)

## 资源汇总

@ysj1173886760 在学习这门课中用到的所有资源和作业实现都汇总在[ysj1173886760/Learning: graphics/GAMES101 - GitHub](https://github.com/ysj1173886760/Learning/tree/master/graphics/GAMES101) 中。
