第1章
圖形系統(tǒng)和模型
1.1
計算機圖形學的應用
- 工業(yè)電子設(shè)備的信息顯示(地質(zhì)學、醫(yī)學)
- 計算機輔助設(shè)計軟件(建筑、機械、電路等設(shè)計)
- 仿真技術(shù)(飛行學習度宦、電影特效)
- 普通計算機的用戶界面(操作系統(tǒng)、軟件)
1.2
圖形系統(tǒng)
通用模型的組成結(jié)構(gòu):輸入設(shè)備告匠、輸出設(shè)備戈抄、CPU、GPU凫海、存儲器呛凶、幀緩存男娄。
1.3
物理圖像與合成圖像
一個最基本的場景行贪,包含觀察者、被觀察的實體模闲、光源建瘫。對于計算機而言,它們存在的意義尸折,就是將內(nèi)容顯示到輸出設(shè)備(成像)啰脚,而成像的本質(zhì),即是光線經(jīng)過一系列運動实夹,到達觀察者的過程橄浓。
1.4
成像系統(tǒng)
- 光學照相機(簡單)
- 人類視覺系統(tǒng)(復雜)
1.5
虛擬照相機模型
1.6
應用程序編程接口
早期圖形系統(tǒng)是二維系統(tǒng),建模到繪制這一過程亮航,是通過筆試繪圖儀計算投影荸实,模擬三維圖像。如今缴淋,使用三維 API准给,我們只需關(guān)注三維場景泄朴,隱藏了實際的繪圖實現(xiàn)過程,讓開發(fā)更加直觀露氮、便捷祖灰。
1.7
圖形繪制系統(tǒng)的體系結(jié)構(gòu)
流水線
- 準備頂點
- 去除可視區(qū)域之外的頂點
- 關(guān)聯(lián)頂點,形成圖元(確定線畔规、面等信息)
- 光柵化局扶,圖元轉(zhuǎn)換為片元(確定像素映射信息)
- 根據(jù)片元,更新幀緩存
素材轉(zhuǎn)換流程
頂點 => 圖元 => 片元 => 像素幀
1.8
可編程流水線
現(xiàn)代 GPU 的繪制流水線是可編程的油讯,也就是圖形計算可以在 GPU 處完成详民,不僅可以釋放 CPU 的計算壓力,還能減少 CPU陌兑、GPU 數(shù)據(jù)傳輸消耗沈跨。
1.9
性能特征
現(xiàn)代圖形卡摒棄多部件、多電路的設(shè)計方案兔综,將所有功能集成到一個芯片饿凛,該芯片(GPU)具備整條渲染流水線,形成流水線架構(gòu)软驰。
1.10
OpenGL 版本和 WebGL
WebGL 是運行在現(xiàn)代瀏覽器的 Javascript 接口(基于 OpenGL ES 2.0)涧窒,而 OpenGL ES 是服務(wù)于嵌入式系統(tǒng)的 OpenGL 簡化版。
第2章
圖形學編程
2.1
Sierpinski 鏤墊
ing...
2.2
編寫二維圖形應用程序
ing...
2.3
WebGL 應用程序編程接口
ing...
2.4
圖元和屬性
ing...
2.5
顏色
ing...
2.6
觀察
ing...
2.7
控制函數(shù)
ing...
2.8
Sierpinski 鏤墊繪制程序
ing...
2.9
多邊形和遞歸
ing...
2.10
三維 Sierpinski 鏤墊
ing...
第3章
交互和動畫
3.1
動畫
ing...
3.2
交互
ing...
3.3
輸入設(shè)備
ing...
3.4
物理輸入設(shè)備
ing...
3.5
客戶和服務(wù)器
ing...
3.6
事件驅(qū)動輸入編程
ing...
3.7
位置輸入
ing...
3.8
窗口事件
ing...
3.9
拾取
ing...
3.10
建立交互式模型
ing...
3.11
交互式程序的設(shè)計
ing...
第4章
幾何對象和變換
4.1
標量锭亏、點和向量
ing...
4.2
三維圖元
ing...
4.3
坐標系和標架
ing...
4.4
WebGL 中的標架
ing...
4.5
矩陣和向量類型
ing...
4.6
建模一個彩色立方體
ing...
4.7
仿射變換
ing...
4.8
平移纠吴、旋轉(zhuǎn)和縮放
ing...
4.9
變換的齊次坐標表示
ing...
4.10
變換的級聯(lián)
ing...
4.11
WebGL 中的變換矩陣
ing...
4.12
使立方體旋轉(zhuǎn)起來
ing...
4.13
三維應用程序的接口
ing...
4.14
四元數(shù)
ing...
第5章
觀察
5.1
經(jīng)典觀察和計算機觀察
ing...
5.2
計算機觀察
ing...
5.3
定位照相機
ing...
5.4
平行投影
ing...
5.5
透視投影
ing...
5.6
WebGL 中的透視投影
ing...
5.7
透視投影變換矩陣
ing...
5.8
隱藏面消除
ing...
5.9
顯示網(wǎng)格
ing...
5.10
投影和陰影
ing...
5.11
陰影映射
ing...
第6章
光照和著色
6.1
光線和材質(zhì)
ing...
6.2
光源
ing...
6.3
Phong 反射模型
ing...
6.4
計算向量
ing...
6.5
多邊形的著色
ing...
6.6
通過遞歸細分逼近球面
ing...
6.7
指定光照參數(shù)
ing...
6.8
實現(xiàn)光照模型
ing...
6.9
球面模型的著色
ing...
6.10
基于每個片元的光照計算
ing...
6.11
非真實感著色
ing...
6.12
全局光照
ing...
第7章
離散技術(shù)
7.1
緩存
ing...
7.2
數(shù)字圖像
ing...
7.3
映射方法
ing...
7.4
二維紋理映射
ing...
7.5
WebGL 的紋理映射
ing...
7.6
紋理生成
ing...
7.7
環(huán)境貼圖
ing...
7.8
反射貼圖示例程序
ing...
7.9
凹凸映射
ing...
7.10
融合技術(shù)
ing...
7.11
GPGPU
ing...
7.12
幀緩存對象
ing...
7.13
緩存交換
ing...
7.14
拾取
ing...
第8章
從幾何到像素
8.1
圖形繪制流水線的基本實現(xiàn)策略
ing...
8.2
圖形繪制系統(tǒng)的四個主要任務(wù)
ing...
8.3
裁剪
ing...
8.4
線段的裁剪
ing...
8.5
多邊形的裁剪
ing...
8.6
其他圖元的裁剪
ing...
8.7
三維裁剪
ing...
8.8
光柵化
ing...
8.9
Bresenham 算法
ing...
8.10
多邊形光柵化算法
ing...
8.11
隱藏面消除
ing...
8.12
反走樣
ing...
8.13
顯示方面的問題
ing...
第9章
層級建模方法
9.1
圖符和實例
ing...
9.2
層級模型
ing...
9.3
機器人手臂
ing...
9.4
樹與遍歷
ing...
9.5
使用樹數(shù)據(jù)結(jié)構(gòu)
ing...
9.6
動畫
ing...
9.7
圖形對象
ing...
9.8
場景圖
ing...
9.9
實現(xiàn)場景圖
ing...
9.10
其他樹結(jié)構(gòu)
ing...
第10章
過程建模方法
10.1
基于算法的建模
ing...
10.2
基于物理的建模和粒子系統(tǒng)
ing...
10.3
牛頓粒子
ing...
10.4
求解粒子系統(tǒng)方程
ing...
10.5
約束條件
ing...
10.6
一個簡單的粒子系統(tǒng)
ing...
10.7
基于 agent 的建模
ing...
10.8
基于語言的建模
ing...
10.9
遞歸方法和分形
ing...
10.10
過程噪聲
ing...
第11章
曲線和曲面
11.1
曲線和曲面的表示形式
ing...
11.2
設(shè)計準則
ing...
11.3
三次參數(shù)多項式曲線
ing...
11.4
插值
ing...
11.5
Hermite 曲線和曲面
ing...
11.6
貝塞爾曲線
ing...
11.7
三次 B 樣條
ing...
11.8
普通 B 樣條
ing...
11.9
曲線和曲面的繪制
ing...
11.10
Utah 茶壺模型
ing...
11.11
代數(shù)曲面
ing...
11.12
曲線和曲面的細分
ing...
11.13
從數(shù)據(jù)生成網(wǎng)格
ing...
11.14
支持曲線和曲面的圖形 API
ing...
第12章
高級繪制
12.1
超越流水線繪制結(jié)構(gòu)
ing...
12.2
光線跟蹤
ing...
12.3
構(gòu)建一個簡單的光線跟蹤器
ing...
12.4
繪制方程
ing...
12.5
輻射度方法
ing...
12.6
全局光照和路徑跟蹤
ing...
12.7
RenderMan
ing...
12.8
并行繪制
ing...
12.9
GPU 硬件實現(xiàn)
ing...
12.10
隱函數(shù)和等高線圖
ing...
12.11
體繪制
ing...
12.12
等值面與步進立方體
ing...
12.13
步進四面體
ing...
12.14
網(wǎng)格簡化
ing...
12.15
直接體繪制
ing...
12.16
基于圖像的繪制
ing...
附錄
A
初始化著色器
ing...
B
空間
ing...
C
矩陣
ing...
D
采樣和走樣
ing...