日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Games101】Lecture05 光栅化 笔记

發(fā)布時(shí)間:2023/12/16 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Games101】Lecture05 光栅化 笔记 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

視頻 &圖片來源:【B站】GAMES101-現(xiàn)代計(jì)算機(jī)圖形學(xué)入門-閆令琪

目錄

  • 1. 正交投影-續(xù)
    • 1.1 寬高比與垂直可視角
    • 1.2 顯示
  • 2. 光柵化
    • 2.1 三角形
    • 2.2 采樣
    • 2.3 實(shí)際屏幕的光柵化

1. 正交投影-續(xù)

1.1 寬高比與垂直可視角

  • 寬高比 aspect ratio
  • 垂直可視角度 vertical field of view:與上沿重心連線,和與下沿中心連線之間的夾角(圖里兩條紅色虛線的夾角)。影響視錐(frustum)的開口(角度越小,越趨近于正交投影)。


一個(gè)例子:上圖為從側(cè)面觀察
引出:通常情況下,我們定義一個(gè)視錐,只需要定義①垂直可視角度;②寬高比,其他的參數(shù)可以自動(dòng)轉(zhuǎn)化到定義正交投影的概念上。

1.2 顯示

什么是屏幕(screen)

  • (圖形學(xué)上說是)像素的數(shù)組
  • 分辨率:定義數(shù)組的大小
  • 一種典型的光柵顯示

什么是光柵(raster)

  • 把圖像畫在屏幕上的過程

什么是像素(pixel)

  • 一個(gè)顏色統(tǒng)一的小方塊(方塊內(nèi)顏色沒變化)
  • 一個(gè)像素內(nèi)的顏色可以由RGB表示

什么是屏幕空間

  • 像素的坐標(biāo)(index)由(x,y)(x,y)(x,y)表示
  • 每個(gè)像素由一個(gè)整數(shù)坐標(biāo)來描述
  • 像素的下標(biāo)范圍:(0,0)→(0,0)\to(0,0)(width?1,height?1)(width-1,height-1)(width?1,height?1)
  • 雖然用整數(shù)描述,像素中心在(x+0.5,y+0.5)(x+0.5,y+0.5)(x+0.5,y+0.5)
  • 整個(gè)屏幕的范圍:(0,0)→(width,height)(0,0)\to(width,height)(0,0)(width,height)

視口轉(zhuǎn)換矩陣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??????
核心:先縮放再移動(dòng)。3×33\times33×3對(duì)角陣-縮放。

2. 光柵化

2.1 三角形


為什么要用三角形?

  • 三角形是最基礎(chǔ)的多邊形
  • 任何多邊形都可以拆成三角形
  • 三角形內(nèi)部一定是平面的
  • 三角形內(nèi)外定義的非常清晰
  • 定義三角形三個(gè)頂點(diǎn)不同的屬性,能夠得到一個(gè)漸變的效果(在三角形內(nèi)部插值)

2.2 采樣

采樣:離散化函數(shù)的過程。

定義二元函數(shù):inside(t,x,y)={1點(diǎn)(x,y)在三角形t內(nèi)0其他inside(t,x,y)=\begin{cases}1& \text{點(diǎn)(x,y)在三角形t內(nèi)}\\0&\text{其他}\end{cases}inside(t,x,y)={10?點(diǎn)(x,y)在三角形t內(nèi)其他?

//采樣 //遍歷整個(gè)屏幕 for(int x=0;x<xmax;++x)for(int y=0;y<ymax;++y)image[x][y]=inside(tri,x+0.5,y+0.5);


藍(lán)色區(qū)域:包圍盒(Bounding Box),光柵化只考慮區(qū)域內(nèi)的像素。

另一種加速方法:找每一行的最左像素和最右像素。適用于窄長的三角形。

2.3 實(shí)際屏幕的光柵化

實(shí)際LCD屏幕上的像素

三星的鉆石排列(bayer pattern)使用了更多的綠色像素→人眼對(duì)綠色更敏感

總結(jié)

以上是生活随笔為你收集整理的【Games101】Lecture05 光栅化 笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。