Unity學習(三)Unity Shader入門(基礎知識篇)+線性代數複習(未完待續)
阿新 • • 發佈:2018-11-05
至於為什麼剛建立了指令碼,現在就要做Shader了。。說多了都是淚
1.建立一個新的材質 Material
Assert -> Create -> Material
拖到Scene中的某個物體上
2.建立一個新的Shader
Assert -> Create -> Shader
裡面有四種模板:
Standard Surface Shader:表面著色器
Unlit Shader:頂點/片元著色器
Image Effective Shader:後處理效果
Compute Shader:特殊的Shader檔案
3.數學基礎(包括但不限於一下幾點):
Unity使用的座標系:
對於設計者:左手系
對於觀察者:右手系
向量:
向量的內積(點積)幾何意義:投影;a·b即b在a上有方向的投影
向量的外積(叉積)幾何意義:面積&法向量
矩陣:
1.逆矩陣:MM^-1=E
並不是所有矩陣都有逆矩陣,如果有逆矩陣,則稱該矩陣可逆,或非奇藝。
寫Shader的過程中,矩陣的求解可以用C++庫Eigen求得。
逆矩陣有一大堆性質,這個還是看看線性代數吧,雖然交大的線性代數課本簡直。。。。不可描述
2.正交矩陣:MM^T=E
矩陣的幾何意義!!!!(這個肥腸重要)
變換:
線性變換(保留向量加和標量乘):縮放,旋轉,錯切,映象,正交投影
仿射變換:線性變換+平移變換 向量需要擴充套件到四維表示(1,1,1)T+(1,2,3)T
分解基礎變換矩陣
約定變換的順序:縮放-旋轉-平移(公式中從右到左) MVP矩陣
----未完待續