Unity Shader入門精要 閱讀筆記四

2021-08-11 11:15:09 字數 1063 閱讀 5852

在基礎的圖形學數學中,點、向量以及矩陣是較為基礎的元素。

通常三維世界中最基礎的就是點(x,y,z).

向量可以看成是兩點指向的方向。向量是一種方向,與位置無關。

矩陣是一系列的運算。我們在學習矩陣的時候通常會先學習多元一次方程。矩陣其實就是運算的集合。

這裡我主要記錄我自己覺得容易忘記的一些知識點。

向量的加減

通常向量的運算我們都是在平行四邊形中去思考。

向量相加,是指兩個向量首尾相接,然後從第乙個向量的尾連線第二個向量的頭,形成的新的向量就是和。例如:a+

b 向量相減,是指兩個向量尾部相接,b的頭部指向a的頭部。a−

b 向量的點積

向量的點積又稱為內積。向量的點積的幾何意義為乙個向量在另乙個向量方向上的投影。從幾何意義上可以得到,點積其實得到的是乙個值。a⃗ 

⋅b⃗ =

(ax,

ay,a

z)⋅(

by,b

y,by

)=ax

bx+a

yby+

azbz

另一種表示: a⃗ 

⋅b⃗ =

∣∣a⃗ 

∣∣∣∣

b⃗ ∣∣

cosθ

向量的叉乘

叉乘又被稱為外積。叉乘的表示相對來說會困難一些,也相對難記:a⃗ 

×b⃗ =

(ax,

ay,a

z)×(

by,b

y,bz

)=(a

ybz−

azby

,azb

x−ax

bz,a

xby−

aybx

) 叉乘的結果也是乙個向量,這個向量是垂直於原有的兩個向量,向量的方向由不同座標系判定。如果是左手座標系通過左手判定,如果是右手座標系通過右手判定。

以下面的式子為例: a⃗ 

×b⃗ 

方向判定方法為,四指攤開,方向朝向a向量方向,向b向量進行捲曲,大拇指攤開所指的方向就是結果向量的方向。

正交矩陣:mm

t=mt

m=i

Unity Shader入門精要

學習資料 unity shader入門精要 時長 乙個月 計畫 1 2天完成一章,預計乙個月內完成 幾何階段 gpu實現,輸出螢幕空間的二位點座標,深度,著色資訊,傳送給光柵化階段 光柵化階段 gpu實現,決定每個渲染圖元哪些畫素應該被繪製在螢幕上,將幾何階段傳來的頂點資料進行插值 頂點v法線的獲取...

筆記 《Unity Shader入門精要》

應用階段 輸出渲染圖元 rendering primitives 包括 準備場景資料 相機 場景模型 光源 粗粒度剔除 culling 把不可見的物體剔除 渲染狀態 材質 紋理,使用的shader等。光柵化階段 每個渲染圖元的哪些畫素應該被繪製在螢幕上,包括 三角形設定 三角形遍歷 片元著色器 逐片...

《UnityShader入門精要》Unity陰影

lightmode為shadowcaster的pass是用來渲染陰影對映紋理。該shader如果沒有定義lightmode為shadowcaster的pass,則會去fallback指定的shader繼續尋找。如果沒有找到,該物體無法向其他物體投射陰影,但能接收來自其他物體投射的陰影 螢幕空間的對映...