第〇章 · 课程概述
课程定位 · 学习资源 · 学习要求 · 评价方式 · 教学内容
理解计算机如何描述、变换、观察并绘制二维与三维对象。
以现代可编程流水线为核心,理解 Vertex Shader 与 Fragment Shader。
使用现代 Web 技术完成交互式图形程序设计与实验。
课程不是学习一个“绘图软件”,而是学习图像生成背后的模型、算法、系统与程序设计方法。
角色、场景、实时光照与交互
把复杂数据转化为可理解的图像
建模、观察、验证和虚拟实验
写下你最想实现的一种图形效果
说出一个你知道的图形应用
WebGL Programming GuideMatsuda & Lea · 2013
OpenGL Programming GuideKessenich, Sellers, Shreiner · 9th Ed. · 2016
Programming 3D Applications with HTML5 and WebGLTony Parisi · 2014
学过程序设计基础,能够编写结构清晰、可调试的代码。
了解数组、链表、树等常见数据结构与基本算法思想。
具备平面几何和立体几何的基本空间理解能力。
能够理解向量、矩阵及其基本计算。
页面结构、Canvas 元素与脚本加载。
变量、函数、数组、对象、事件与模块化基础。
只需理解基础样式;不是本课程重点。
平时成绩包括:签到、问答、交流沟通等。
可携带一张纸作为考试资料。
开卷并不意味着不需要掌握概念、计算过程和程序逻辑。
实验不仅要得到图像,还要能够解释:代码改了什么,图像为什么变化。
合作完成一个较完整的图形学课程设计。
课程核心与考核重点:深入理解图形学数学模型、渲染管线底层原理与着色器编程实现。
拓宽视野与综合设计:了解现代图形系统高阶特性与复杂三维场景组织管理方法。
重点章节要求“深入原理、独立编程、调试分析”;介绍性章节重在“理解思想、了解系统能力、善于查阅与应用”。
浏览器、代码编辑器以及课程所需 WebGL 项目环境。
矩阵与向量、JavaScript / HTML 基础不足的同学尽快补充。
教材、课程网站、课程平台与实验说明。
下一步,我们正式进入:
先回答最基本的问题:计算机图形学到底在解决什么?