五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

MMD聯(lián)動Unity學習筆記 Vol.53 Unity Shader Graph 節(jié)點解析

2019-11-28 15:00 作者:NXL2  | 我要投稿

前言 ???? ???? ???? ???? ????

????這期我們還是跟著官方的視頻學習Unity里關(guān)于Shader Graph的內(nèi)容,這期是這個系列的第

九期,矩陣(Matrix)相關(guān)所有節(jié)點。

????我們經(jīng)常聽到的矩陣,是一個數(shù)學概念,簡單來講就是一個由M乘N的標量數(shù)組,在Unity中,矩陣通常被用于平移,縮放,旋轉(zhuǎn)等等。

????顧名思義,這幾個節(jié)點的作用,分別是自定義一個2乘2,3乘3,4乘4的矩陣。

????除此之外,在前面幾期我們了解了Input Geometry中的實體空間,模型空間,切線空間,視角空間之間的變換,也是由矩陣計算得到的結(jié)果。

????在Transformation Matrix中,Unity本身就給我們提供了很多變換的矩陣供我們進行矩陣計算,不同于直接寫Shader時需要用代碼調(diào)用對應(yīng)的矩陣,Shader Graph在大多數(shù)情況下,只需要我們切換節(jié)點下方的模式即可。也從公式直接變回了簡單易懂的描述。

????除了Transformation中的內(nèi)置矩陣,Unity還有一 些關(guān)于轉(zhuǎn)換的內(nèi)置變量。

????當然,在內(nèi)置的變換矩陣無法滿足我們的需求時,就需要我們自定義一個轉(zhuǎn)換矩陣了,圖中的Tangent To World節(jié)點就是使用世界空間的Tangent By Tangent Normal來構(gòu)建的一個TBN變換矩陣,把Tangent空間的向量,轉(zhuǎn)換到世界空間中。

????在計算Tri-Planar節(jié)點時,除了計算物體在模型空間和世界空間下的坐標,也需要對模型在模型空間和世界空間下的Normal和Tangent進行矯正計算,保證每一個軸向上的貼圖,在旋轉(zhuǎn)后,還能保持正確的光照效果。否則,在旋轉(zhuǎn)各個方向的面時,法線也會一起旋轉(zhuǎn),所以在這里。我們使用Matrix Construction Node來構(gòu)建對應(yīng)坐標軸的旋轉(zhuǎn)矩陣。

????在構(gòu)建好XYZ軸向的旋轉(zhuǎn)矩陣后,再與三個方向的法線信息相乘,再旋轉(zhuǎn)面的時候,就能得到正確的法線了 。

????以Unity Built-in的變量為例,Unity Matrix Transpose MV是Unity MV的轉(zhuǎn)置矩陣,因為求一個矩陣的逆矩陣需要巨大的運算量,但是求一個矩陣的轉(zhuǎn)置矩陣就很簡單。所以當一個矩陣為正交矩陣的時候,通過轉(zhuǎn)置矩陣或者逆矩陣,是一個很有用的方法。

????而Unity Matrix,Inverse Transpose MV,專門用于將法線從模型空間變化到觀察空間,為Untiy Matrix的逆轉(zhuǎn)置矩陣,有同學可能會問,為什么不同Unity Matrix MV來處理法線,因為如果模型有不統(tǒng)一縮放的時候,用Unity Matrix MV會造成方向失真。

????而Matrix Determinant節(jié)點,行列式是數(shù)學中的一個函數(shù),將一個N乘N的矩陣a,映射到一個標量中,一般用來求解矩陣,Shader中使用的情況比較少。感興趣的同學可以自行深入了解。

MMD聯(lián)動Unity學習筆記 Vol.53 Unity Shader Graph 節(jié)點解析的評論 (共 條)

分享到微博請遵守國家法律
和龙市| 休宁县| 衡阳县| 迁安市| 郯城县| 唐河县| 乳山市| 石城县| 达拉特旗| 高雄市| 宜春市| 虹口区| 鄂伦春自治旗| 阳春市| 西峡县| 阜新市| 凉山| 湖南省| 岐山县| 仪陇县| 富阳市| 峨山| 张家界市| 华安县| 民和| 崇礼县| 邻水| 五原县| 中方县| 图片| 万年县| 酒泉市| 拜泉县| 元阳县| 泰来县| 龙游县| 南宁市| 耿马| 龙口市| 巫山县| 格尔木市|