筆記 《Unity Shader入門精要》

2021-10-06 14:14:35 字數 1253 閱讀 1917

應用階段:輸出渲染圖元(rendering primitives),包括:

準備場景資料:相機、場景模型、光源;

粗粒度剔除(culling):把不可見的物體剔除;

渲染狀態:材質、紋理,使用的shader等。

光柵化階段:每個渲染圖元的哪些畫素應該被繪製在螢幕上,包括:

三角形設定- 三角形遍歷- 片元著色器- 逐片元操作

shader:渲染流水線中的某些特定階段。

shaderlab: 編寫unity shader的一種說明性語言

unity shader不等同於shader,unity shader實際上指的就是乙個shaderlab檔案——硬碟上以.shader作為字尾的一種檔案。

一、 矩陣:定義詳見維基百科

滿足的性質:不滿**換律,滿足結合律

方塊矩陣:行列數相等的矩陣,三維渲染最常用的33/44

對角元素(diagonal elements):乙個矩陣除了對角元素外的所有元素都為0

轉置矩陣(transposed matricx): 矩陣的行列翻轉,即i行變成i列,j列變成j行。

逆矩陣(inverse matrix),矩陣必須為方陣才有逆矩陣;矩陣與逆矩陣相乘得到單位矩陣

正交矩陣(orthogonal matrix):乙個方陣m和它的逆轉矩陣的乘積是單位矩陣,這兩個矩陣正交。

q:如何判斷乙個矩陣是否為正交矩陣,只要滿足aat = e,即可。即矩陣與其逆轉矩陣的乘機為單位矩陣。

二、矩陣的幾何意義

變換(transform):把一些資料如點、方向向量或者顏色等,通過某種方式進行轉換的過程。

其中,線性變換(linear transform)的滿足條件:

f(x)+f(y) = f(x+y)

kf(x) = f(kx)

齊次座標(文中預設為四階其次座標)

平移矩陣,進行平移變換,非正交矩陣。

縮放矩陣

問題:旋轉矩陣是否旋轉座標系的影響??

頂點變換步驟:第二步,將頂點座標從世界空間變換到觀察空間,成為觀察變換。

第三步,從觀察空間轉換到裁剪空間,變換矩陣叫裁剪矩陣,也叫投影矩陣。

視錐體型別:正交投影,透視投影

《Unity Shader入門精要》自學筆記(一)

shader custom zhudingdian subshader cgprogram float4 diffuse 取用設定中的顏色資訊 pragma vertex vert pragma fragment frag include lighting.cginc struct a2v stru...

Unity Shader入門精要 閱讀筆記二

unity shader在5.2版本以上能夠直接從專案中建立4個shader模板 standard su ce shader unlit shader image effect shader,computer shader.standard shader 包含標準光照模型 使用了基於物理的渲染方法 ...

Unity Shader入門精要 閱讀筆記四

在基礎的圖形學數學中,點 向量以及矩陣是較為基礎的元素。通常三維世界中最基礎的就是點 x,y,z 向量可以看成是兩點指向的方向。向量是一種方向,與位置無關。矩陣是一系列的運算。我們在學習矩陣的時候通常會先學習多元一次方程。矩陣其實就是運算的集合。這裡我主要記錄我自己覺得容易忘記的一些知識點。向量的加...