ray渲皮膚效果優(yōu)化
? ? ? ?Hello,這里是被宛傾然大大的ik渲染皮膚效果(BV1dQ4y1Y7HC)驚艷到,然后折騰(被折磨)了一個(gè)晚上研究出適用于ray渲的類似加強(qiáng)陰影處皮膚透光效果(sss效果)的露露。(捂臉)
? ? ? 不過這個(gè)需要有一定的Blender操作基礎(chǔ),1.5及其以上版本的ray渲的操作基礎(chǔ)
多圖流預(yù)警
廢話不多說,先上圖:



操作方法:
準(zhǔn)備階段
先把需要進(jìn)行皮膚材質(zhì)改變的模型丟進(jìn)Blender,不過為了節(jié)省制作oa貼圖和曲率貼圖的次數(shù)建議先把模型丟進(jìn)pe里進(jìn)行修改。(一個(gè)一個(gè)做會(huì)累死的)
刪除骨骼,物理;將模型共用貼圖的部分進(jìn)行合并。


把模型丟進(jìn)Blender,關(guān)閉多余材質(zhì)并打開Cycles渲染,這里以“顏”的材質(zhì)為示范進(jìn)行修調(diào)。


這里為了能夠明顯看到效果我選擇了用日光燈照射半邊臉。

AO貼圖的制作(以“顏”材質(zhì)為例)
我們先把臉部的材質(zhì)換成Blender的sss材質(zhì),這樣做出來的AO貼圖會(huì)比一般丟進(jìn)ShaderMap或者直接PS硬杠AO貼圖要精細(xì)很多。(下圖為AO貼圖生成對(duì)比)
不過一般場景用的AO貼圖用ShaderMap或者直接PS硬杠就夠了,反正又不凹光線,全靠法線。



然后,就是在Blender里的操作了:


這里把貼圖替換成模型本身的貼圖(1),然后根據(jù)自己的喜好對(duì)sss的透光效果進(jìn)行調(diào)整(2)
這個(gè)只影響到模型后期在ray里面的立體度和陰影透光情況。


然后我們就會(huì)得到這樣一張比較精細(xì)的AO貼圖了。


曲率貼圖制作部分
這部分的制作方法部分參考了BV1eJ411k7Yg的方法。
由于直接文字描述太復(fù)雜了我就直接圖文解釋吧:
首先需要先打開著色編輯器(下圖模型下方的那個(gè)東西)
這個(gè)一定要打開,不然做著做著會(huì)混亂的(來自我這個(gè)菜雞的咆哮)
如果你是編程大佬或者動(dòng)畫大佬請(qǐng)無視





這一步比較重要,直接關(guān)系到了貼圖質(zhì)量和ray渲里的透光效果(光打過來皮膚受光面和陰影之間的那條紅線)
由于是昨晚臨時(shí)起意,幾乎通宵的研究,所以調(diào)高和調(diào)低的效果還沒有進(jìn)行測試,但整體推薦和ray自帶的TDA皮膚曲率貼圖保持一致,至少顏色不要差太大。
ray渲的TDA貼圖位置如下:







用這個(gè)數(shù)值做好了的曲率貼圖長這樣:

雖然沒有AO那么精美但也能湊合著用了,配合AO的陰影處透光效果能夠彌補(bǔ)曲率貼圖的一些小瑕疵。

ray渲材質(zhì)修改
終于!到結(jié)尾了,到這里我們已經(jīng)準(zhǔn)備好了兩張貼圖,現(xiàn)在我們需要把這兩張貼圖復(fù)制進(jìn)ray的Materials→Skin這個(gè)文件夾里。


好的!到這里請(qǐng)打開你的ray渲,懟上你的模型和天空盒準(zhǔn)備好修改你的材質(zhì)了!(開始愉快的折騰模型)
首先復(fù)制一份skin材質(zhì)并進(jìn)行改名(身體的部分復(fù)制身體的),讓你的模型使用這個(gè)材質(zhì)。
打開天空盒的sss+
(其實(shí)也可以不打開,反正一打光就出來了,特別是那種喜歡強(qiáng)光打光的人,沒錯(cuò),就是我)



把我們做的兩個(gè)貼圖加進(jìn)ray渲的材質(zhì)里面
需要改動(dòng)的位置如下:

#define OCCLUSION_MAP_FROM這一行是我們的AO貼圖,把0換成1是開啟。其他不用管。
#define CUSTOM_A_MAP_FROM? ??和? #define CUSTOM_B_MAP_FROM? ? ? 是我們的曲率貼圖,全開。
const float customA = X.X;
const float3 customB = SSS_SKIN_TRANSMITTANCE(X.XX);
這兩個(gè)是調(diào)節(jié)皮膚被光找到有多紅的一個(gè)東西,范圍在0-1之間,不過千萬別調(diào)1,隨便一個(gè)光源就能讓人物的膚色紅得和猴子屁股一樣了。
#define CUSTOM_B_MAP_COLOR_FLIP?
#define CUSTOM_B_MAP_APPLY_SCALE?
這兩個(gè)必須要開,不然我們做的曲率是沒有效果的。
#define SSS_SKIN_TRANSMITTANCE(x) exp((1 - saturate(x)) * float3(-8, -26, -69))
這個(gè)看個(gè)人情況可調(diào)可不調(diào),float后面的三個(gè)數(shù)值分別是BGR(注意,和正常的RGB是剛好相反的)
這里調(diào)好后的樣子:


最后附上各貼圖單獨(dú)編入ray的材質(zhì)里的效果:




兩個(gè)都編入直接獲得一張粉嫩嫩的小臉~
最后的最后,由于是通宵研究,之前并沒有接觸過曲率貼圖和Blender烘焙外加塑料自學(xué)水平,所以難免有不嚴(yán)謹(jǐn)?shù)牡胤竭€請(qǐng)大家多多見諒啦~