MMD聯(lián)動(dòng)Unity學(xué)習(xí)筆記 Vol.47 Unity Shader Graph 節(jié)點(diǎn)解析:UV

前言
????這期我們還是跟著官方的視頻學(xué)習(xí)Unity里關(guān)于Shader Graph的內(nèi)容,這期是這個(gè)系列的第三講:幾何輸入Input Geometry(一)


UV節(jié)點(diǎn)…
????Shader Graph為我們提供了接口來(lái)訪問(wèn)模型的UV信息,簡(jiǎn)單來(lái)說(shuō),UV定義了圖片上第一個(gè)點(diǎn)與模型間的位置信息,以決定表面紋理的貼圖位置?;旧衔覀兯鶆?chuàng)作Shader的過(guò)程中 ,都離不開(kāi)UV節(jié)點(diǎn)的影子,比如采樣貼圖,UV動(dòng)畫和UV遮罩等等。如果你希望獲取到模型的其它UV,也可以通過(guò)右下角的Channel選項(xiàng)選擇對(duì)應(yīng)的UV通道進(jìn)行修改。

采樣貼圖
????在采樣貼圖中需要用到的重要信息就是模型的UV了,它決定了貼圖中的像素以什么樣的方式被映射到模型上。

上一期我們嘗試用Time節(jié)點(diǎn)讓模型的貼圖動(dòng)了起來(lái),根據(jù)時(shí)間所進(jìn)行的偏移正式被應(yīng)用到了模型的UV上,所以模型的貼圖才出現(xiàn)了流動(dòng)的效果。在Shader制作過(guò)程中,我們通常有只影響部分Mesh的需求,而這個(gè)時(shí)候就可以使用UV遮罩來(lái)自定義哪一個(gè)部分的Mesh受到影響。

????我們可以看到把U和V拆分開(kāi)后,它們只是沿各自方向上0到1的向量值,我們可以使用一些方法對(duì)這個(gè)值進(jìn)行簡(jiǎn)單的修改,如加減乘除,Power等等。


????我們可以把UV理解為平面空間下,控制圖像位置或者旋轉(zhuǎn)的Transform節(jié)點(diǎn),合理的組合應(yīng)用可以做出各式各樣的遮罩效果,如果你有耐心可以用它做出Unity的Logo。?

????比如在這個(gè)旗幟飄動(dòng)的Shader中,我們使用UV遮罩讓小旗的左邊部分保持靜止,再連接到AlphaClipThreshold之后,也可以通過(guò)Mask僅讓小旗的右邊部分出現(xiàn)破損效果。

