UE4材質節點入門 第八節(材質的數學運算 二)
前言:在學習的過程中筆記是不可缺少的,匆匆看過一遍不記筆記和實操的話總會忘掉一些知識點或者是記的不牢固,所以我寫了本系列文章,一方面是強迫自己認認真真的看完一章課程,另一方面記筆記加深一下自己的記憶以及思考。所以本系列文章是我學習過程中的筆記,思考,實操以及作業然後分享給大家,歡迎大佬們指正。
最大值、最小值(Max、Min):
最大值與最小值類似,最大值的作用就是輸入一個A和一個B,然後把AB的值進行一個對比,輸出較大的一個值。最小值與之相反,同樣輸入一個A與一個B,對比AB的值,輸出較小的值。
最大值
最小值
由此可以看到,Max與Min對比的是數值的大小,如果是圖片紋理,那麼對比的是每一個圖片畫素位置的值。我們可以用Max或者Min對比輸出我們想要的效果。
四捨五入、取符號、if(Round、Sign、if):
四捨五入,與小學數學中的概念一樣,如果小數點後小於0.5,那麼就捨去。如果大於等於0.5,那麼就會進“1”。
四捨五入
對紋理的四捨五入
四捨五入同樣可以使用在文理上,如圖我們把紋理座標取樣UV座標分別分離,然後連線四捨五入,最後的結果就是從0-1的漸變,變成了從中間分割開的0和1。
關於取符號,如果我們輸入的是一個正數,那麼取符號會輸出一個正1,如果我們輸入的是一個負數,那麼取符號會輸出一個負1,如果輸入0,那麼就會輸出0。
取符號
if節點在我們前幾章中有所使用,其實就是輸入A與B,然後判斷A與B的關係。
if判斷
如圖所示,我們用紋理取樣座標的U座標作為A輸入,然後與0。5數值做對比,如果紋理座標U通道大於0。5則輸出1,如果小於0。5則輸出0。所以你就會看到UV座標的U通道是0-1的線性,變成了0。5以下的是0,0。5和0。5以上的值是1。
冪節點(Power)
冪節點就是冪次方,輸入一個值或者紋理,然後再輸出一個值作為乘方。
冪次方
如圖所示,我們輸入一個值3,然後在輸入一個值2作為乘方,3的2次方就是9,所以Debug節點就輸出了9。
https://www。zhihu。com/video/1472328845885546497
同樣power同樣可用於紋理,如影片所示,我們用time節點然後乘以一個值當作乘方,然後來計算線性的(0-1)的值,也就是我們的紋理座標UV的U軸。然後你就會發現,我們的暗部區域會壓向亮部區域,這是因為除了0-1的乘方還是自己,其他小數乘以自己只會越來越小,表達到畫面上就會越來越暗,所以會形成這種暗部壓向亮部的效果。
點積(dot):
點積也被稱為點乘,向量乘等等。
二維向量的點積公式為: 如有向量a (x,y) b (x,y) 則:a · b = axbx + ayby
三維向量的點積公式為: 如有向量a (x,y,z) b(x,y,z) 則:a · b = axbx + ayby + azbz
點積的結果是一個標量。
二維向量點乘
三維向量點乘
我們在材質中用的更多的是向量點積的幾何概念。比如如果向量方向相同,那它們的點積結果大於 0,相反如果向量方向相反,則結果小於0,在方向相同還有相反的情況之外,還有一個情況如果兩個向量垂直,則結果為。
向量的點積幾何意義
在虛幻引擎中,我們的向量是有很多的不同作用的節點,比如頂點法線、畫素法向、相機向量、絕對世界位置等等向量。這些向量都是可以使用點積來計算的。
參考資料:
【技術美術百人計劃】圖形 1。2。1 向量基礎_嗶哩嗶哩_bilibili