天天看點

UE4美術筆記

一.在迪斯尼shader體系(ue4)中:金屬漫顔色非純黑,而傳統PBR shader體系(Vray)中金屬的漫反射是純黑的,是以在UE4中的漫反射顔色應按照傳統渲染(Vray)中反射顔色(使用RGB衰減曲線控制反射顔色另當别論)來調。

二.玻璃材質漫反射為1(純白),metal 為1,opacity大概0.5(視情況),材質類型(blend mode)改為translucent,出現折射項後,用lerp(混合)節點從1混合1.517,遮罩alpha則連接配接菲涅爾節點(無任何參數),如要透過玻璃看到後面物體的反射,玻璃材質需要将translucent lighting mode調為surface。

三.ue4中和vray一樣,預設單面渲染,是以對于半透明物體,需要開啟two side 才能把背面資訊進行計算,比如單面的紗簾,如果沒有厚度,純單面模型,則需要開啟two side才能計算背面的受光情況,在vray中叫做Vray 2sidematerial,在ue4中則在mesh面闆勾選,而且遊戲引擎對于單面模型,還有個特殊性就是隻渲染法線正面面對視角的面,

就是說一個片,不勾選2side,又是法線背面對着視角,将會看不見,vray則不存在這個問題,隻是會另一面不計算資訊而已,但至少面對視角的面是肯定會計算的。

四.對于一名美術來講,最重要的G點莫過于材質面闆各種節點的運用,對于習慣了像Vray之類的離線渲染流程的過渡到遊戲引擎的美術人員,有一點很大的變化就是:之前的各種渲染是面闆把種種功能圖形化了,使用者在圖形化的面闆來進行操作,例如在Vray裡面有“混合”貼圖界面,“合成”貼圖界面,“輸出”貼圖界面,而且各種功能的名字會考慮到美術使用者而不會強調其中的數學原理,例如“VrayDirt污垢貼圖”,實際上它是很多數學節點的圖形化集合。但是在遊戲引擎中,圖形化的界面被各種節點取代,使用者會更多的接觸到相對數學層面的操作模式,是以下面就要講一講個人對UE4中的這些節點的認識。

    在這之前,先想說說圖形學和數學的關系。其一,任何一個顔色,由RGB三原色構成,包括Alpha透明,在數學層面,其就是4個通道的數字,無論其數字是整數還是小數。任何一個空間位置,也是由xyz三個坐标值(三通道)來表示,其也是數字,包括移動,旋轉,縮放,無非就是在原點三通道基礎上附加上另外一個向量xyz值。是以無論我們處理一個顔色的變化(貼圖變化也是顔色變化),還是處理一個空間變量,本質上就是對其的數字的處理。是以,無論“混合”也好“衰減”也好,它們本質就是數字的處理,并且如果我們把輸入量當做X(這裡的X可以是四通道的資料如顔色,也可以是三通道的資料如坐标和向量,也可以是單通道如時間),輸出量當做Y(示意同左),這些功能都可以畫出它們獨特的曲線。 我們運用這些節點的目的,無非就是讓顔色,時間,空間這些冷漠的數字,按我們的要求讓它們互相轉化,或者自己和自己轉化。

    接下來要講的就是具體的這些“功能”的曲線,隻要輸入了一個X值,就會輸出對應的Y值。

    以下配圖頂上部分的顔色條,是為了單純的顯示當輸入值X變化時,輸出值Y當作顔色是什麼顔色(在UE4中規定了顔色範圍由0到1表示,可以是範圍内的任意數字),如果輸出值Y超出了0到1的範圍,則顯示的是顔色的變化關系,并不是準确的對應關系。

1.ABS節點(“絕對值”曲線):

UE4美術筆記

    其特點就是不會輸出為負的值,一定程度上适用于顔色(UE4中RGB值在0到1之間,其他軟體也有0到255的,但還是會轉化成0到1的),因為顔色資料不可能是負值。

  如運用到顔色中,一個三通道資料,0.5,0.5,0.5,輸入了以後輸出出來結果依然是0.5,0.5,0.5.如果它是顔色,這是一個中度灰色,介于純黑和純白的中點。哪怕輸入的是負值,輸出後就變成了正值。

    如運用在空間坐标中,如果把時間當做X輸入sin曲線(後面會講到),則sin曲線輸出的值Y在-1到1之間,高中知識,如果再把這個值當做X輸入ABS曲線,就會得到的Y是個0到1的區間,接着再怎麼用就看你的需要了。當然,這是和sin曲線結合的情況,如果不結合,你需要明白的就是它永遠不可能輸出負數就行了,即輸出值區間為大于等于0,可以是無窮大。

2. Frac節點(取小數曲線)

UE4美術筆記

    其特定就是無論輸入的值多大多小,都會把整數部分忽略,隻保留小數部分,然後在0到1的區間找到其對應的Y值,實際上這個Y值也就是小數部分本身的值,即輸出區間為0到1之間(可以等于0或者1)。

    是以這個曲線非常适用于顔色,比如一個三通道資料2.2,5.3,45.25(無論你是怎麼計算的到的不重要),輸入該節點以後得到的Y值作為顔色來顯示的話,和541.2,125.3,-512.25輸入以後得到的Y值作為顔色來顯示是一樣的顔色,因為輸出值都是它們的小數部分:0.2,0.3,0.25。

3.Floor節點(退位取整數曲線)

UE4美術筆記

    這個曲線就不一定适用于顔色了,因為它的輸出值可以是負值,還可以是大于1的數,什麼叫退位取整數呢,簡單暴力的講,就是輸入一個任意值X,這個節點會把小數部分扔了,隻保留整數部分,作為輸出值Y。具體的适用情況就是:我隻想得到一個整數,不要它的小數部分。

    注意該配圖中上方的顔色條顯示的是變化關系,而不是對應關系。其良苦用心是因為在該圖表中輸出值要麼是0(純黑),要麼是1(純白),輸出2或者3的時候就不能直接表示成顔色了,是以這麼縮放下對應關系,可以清楚的表明顔色的遞進關系,在之後配圖出現相同情況就不再做解釋了。

4.Ceil節點(進位取整數曲線)

UE4美術筆記

    和Floor節點類似,不同點在于輸入值X如果有小數部分,扔掉小數的同時,還會進一位到整數,例如輸入19.521,輸出以後就變成了20。其适用情況也不是很适合顔色的處理。

5.FMod節點(餘數曲線)

UE4美術筆記

    該曲線有兩個輸入值Xa和Xb,其輸入結果為Xa除以Xb,得到的餘數,例如配圖中的Xb已經設定好為2了,當Xa是3的時候,輸出值Y是1,因為,Xa除以Xb,3除以2,商1,餘1,是以最後商多少不重要,重要的是最後餘數是多少,也就是輸出值Y的值。

    在實際運用中,這個也叫循環,循環的起點值是0(注意不是Xa),循環的終點值是輸入值Xb,而輸出值Y就是0到Xb這個區間。那Xa有啥用呢?因為比如Xa是個變量的時候,不受主觀值控制的時候,或者Xa很大或者很小的時候,可以通過設定Xb值來限定循環的次數,假定一個值10(它可以是空間機關,時間機關),但我們要限定每到5循環一次,那麼就設定Xb為5就行了,無論這個輸入是100,是250,始終每到5就循環一次,最後輸出值都在0到5這個區間内。在比如這個機關是時間,遊戲運作時間一直在增加,但是我們可以通過該節點做出一個循環計時器,每到一個規定時間就循環一次,觸發一個事件。

6.Power節點(曲線絕對值)

UE4美術筆記

    同ABS曲線類似,不同點在于該節點有第二個輸入值Xb,當Xb等于1的時候,曲線同ABS一模一樣,大于1的時候,配圖中紅色曲線呈類似指數曲線,如圖(輸出值Y先緩慢上升并越來越快),當Xb小于1的時候,輸出值Y先快速上升并越來越慢。

    用在顔色來講就是“緩進”“緩出”。

7.Lerp節點(混合)

UE4美術筆記

    這是美術上運用的最多的混合功能,嚴格的來講,由于有三個輸入變量,Xa,Xb,Xc(Aplha),加上一個輸出變量,是以不存在曲線圖,在配圖中規定了Xb為定量1,此時的曲線中Xc的值為0.5,就是說Xa和Xb各取一半,放作顔色來講,如果Xb為純白色,Xc(apha)為0.5,那麼當Xa為0的時候,輸出值Y為0.5,抽象來講,就是Xc(Alpha)的值越大,最終值Y就越趨向于Xb,越小,最終值Y就越趨向于Xa,用于貼圖的混合。

8.HeghtLerp

UE4美術筆記

    同Lerp相似,Lerp的Alpha是線性的,這個裡面的Alpha會受到高度圖曲線的影響(配圖中使用的是sin曲線模拟了一張高度圖,由于沒用過,是以不做過多評論。猜測是用于高度圖來控制地形中的材質分布,例如山地海拔越高雪越多,遇到高度下降一些又會長一些草。但總體程度還是雪越來越多。

9.Clamp節點(輸出曲線)

UE4美術筆記

    常用節點,有兩個輸入值Xa和Xb,用來限定輸出值Y不小于Xa,不大于Xb,在中間範圍都是允許的輸出值。

10.Sin節點(sin曲線)

UE4美術筆記

    高中知識,循環區間為1,輸出範圍為-1到1。

11.Cosine節點(cosine曲線)

UE4美術筆記

    高中知識,循環區間為1,輸出範圍為-1到1,與sin不同點在于是從輸出值為1

開始循環的。

12.OneMinus節點(反轉曲線)

UE4美術筆記

    屬于固定的圖形函數功能,常用節點,常用于0到1區間(顔色)的反向處理。也是建立在顔色使用基礎上的,即顔色一定是0到1的區間。

13.Exponential Density節點(指數密度曲線)

UE4美術筆記

    屬于固定的圖形函數功能,輸出值一定在0到1範圍内,通過兩個輸入變量Xa(任意),Xb(隻能在0到1範圍内),來輸出一條從1到0的,并針對于起點和終點平滑的曲線,當Xb值越大時,這個變化就越快。

14.Sphere Mask節點(球形遮罩曲線)

UE4美術筆記

    屬于固定的圖形函數功能,通過Xa(Radius)和Xb(Hardness)兩個值來對貼圖輸入值Xc進行純黑和純白遮罩處理。

15.SphereGrandient-2D節點(球形漸變曲線)

UE4美術筆記

    屬于固定的圖形函數功能,通過Xa(Radius)來控制貼圖輸入值Xb的漸變處理。

    理論大概就是這樣了,實際運用我也沒有太深入的了解。寫出來也是為了加深我自己的印象,以便以後能熟練運用。

繼續閱讀