【Games101】Lecture05 光栅化 笔记
視頻 &圖片來源:【B站】GAMES101-現代計算機圖形學入門-閆令琪
目錄
- 1. 正交投影-續
- 1.1 寬高比與垂直可視角
- 1.2 顯示
- 2. 光柵化
- 2.1 三角形
- 2.2 采樣
- 2.3 實際屏幕的光柵化
1. 正交投影-續
1.1 寬高比與垂直可視角
- 寬高比 aspect ratio
- 垂直可視角度 vertical field of view:與上沿重心連線,和與下沿中心連線之間的夾角(圖里兩條紅色虛線的夾角)。影響視錐(frustum)的開口(角度越小,越趨近于正交投影)。
一個例子:上圖為從側面觀察
引出:通常情況下,我們定義一個視錐,只需要定義①垂直可視角度;②寬高比,其他的參數可以自動轉化到定義正交投影的概念上。
1.2 顯示
什么是屏幕(screen)?
- (圖形學上說是)像素的數組
- 分辨率:定義數組的大小
- 一種典型的光柵顯示
什么是光柵(raster)?
- 把圖像畫在屏幕上的過程
什么是像素(pixel)?
- 一個顏色統一的小方塊(方塊內顏色沒變化)
- 一個像素內的顏色可以由RGB表示
什么是屏幕空間?
- 像素的坐標(index)由(x,y)(x,y)(x,y)表示
- 每個像素由一個整數坐標來描述
- 像素的下標范圍:(0,0)→(0,0)\to(0,0)→(width?1,height?1)(width-1,height-1)(width?1,height?1)
- 雖然用整數描述,像素中心在(x+0.5,y+0.5)(x+0.5,y+0.5)(x+0.5,y+0.5)
- 整個屏幕的范圍:(0,0)→(width,height)(0,0)\to(width,height)(0,0)→(width,height)
視口轉換矩陣:Mviewpoint=(width200width20height20height200100001)M_{viewpoint}=\left(\begin{matrix}\frac{width}{2}&0&0&\frac{width}{2}\\0&\frac{height}{2}&0&\frac{height}{2}\\0&0&1&0\\0&0&0&1\end{matrix}\right)Mviewpoint?=?????2width?000?02height?00?0010?2width?2height?01??????
核心:先縮放再移動。3×33\times33×3對角陣-縮放。
2. 光柵化
2.1 三角形
為什么要用三角形?
- 三角形是最基礎的多邊形
- 任何多邊形都可以拆成三角形
- 三角形內部一定是平面的
- 三角形內外定義的非常清晰
- 定義三角形三個頂點不同的屬性,能夠得到一個漸變的效果(在三角形內部插值)
2.2 采樣
采樣:離散化函數的過程。
定義二元函數:inside(t,x,y)={1點(x,y)在三角形t內0其他inside(t,x,y)=\begin{cases}1& \text{點(x,y)在三角形t內}\\0&\text{其他}\end{cases}inside(t,x,y)={10?點(x,y)在三角形t內其他?
藍色區域:包圍盒(Bounding Box),光柵化只考慮區域內的像素。
另一種加速方法:找每一行的最左像素和最右像素。適用于窄長的三角形。
2.3 實際屏幕的光柵化
實際LCD屏幕上的像素
三星的鉆石排列(bayer pattern)使用了更多的綠色像素→人眼對綠色更敏感
總結
以上是生活随笔為你收集整理的【Games101】Lecture05 光栅化 笔记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2021年6月7日大学化学(14)—价键
- 下一篇: 如何解决3G模块和USB转串口冲突问题