注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

mayasuihua的博客

发现本质 思考本质

 
 
 

日志

 
 

皮肤材质  

2009-03-01 23:28:37|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

fast Skin Shader的運用

皮肤材质 - 右下蓝 - mayasuihua的博客

■ 王以斌

在之前的SSS葡萄質感中,筆者曾經介紹如何利用mental ray的misss_fast來產生半透光的葡萄質感,而在此範例中將介紹另一個類似的材質—misss_fast_skin_maya,此材質主要是用來產生皮膚的質感。另外會介紹一個外掛材質節點mix20layer,此節點類似Maya中的Layered Shader,您可以透過它將不同的材質混合在一起。

燈光設定

在一開始設定燈光之前,先指定一個Blinn材質給模型,先產生一盞由右往角色打的Key Light,經由算圖之後會有一個很明顯的對比光源效果,再產生一盞由正面偏左的Fill Light,將燈光的Intensity降低一點數值約0.25,經由算圖之後可以把暗面的部份做補光的動作。最後再產生一盞由背後往角色打的Back Light,經由算圖之後,我們可以得到左後方所產生光的邊緣效果,主要是為了描繪出角色和黑色背景的差異性(圖1)。

SSS基本設定

至Hypershade視窗中,切換到Create mental ray Notes下的Materials選項,點選一個稱為misss_fast_skin_maya的材質節點。當您開啟misss_fast_ skin _maya的屬性編輯器時,您會看到在材質部份多了一個Subsurface Scattering Layer的定義,裡面有包含了Epidermal Scatter Color、Subdermal Scatter Color和Back Scatter Color三個散射層,此三層分別代表皮膚的表皮層、真皮層和背層所造成的散射效果;以初始的SSS Fast Skin所顯示的顏色為一般的皮膚色,此顏色的最終結果是由在Diffuse Layer裡的Overall Color和Diffuse Color(代表表面的顏色),和Subsurface Scattering Layer裡的三個散射層,及Specularity所混合而成的(圖2)。

皮肤材质 - 右下蓝 - mayasuihua的博客

Light Map設定

將misss_fast_skin_maya指定給模型,即使您再做一次算圖也無法看到透光的效果(圖3)。因此我們必須在現有的材質上再做些其他的定義;首先是有關於燈光Light Map的定義,點選misss_fast_skin_maya材質節點,按下Input and Output Connections圖案,將Shading Group節點顯示出來,雙響Shading Group節點開啟屬性編輯器,在mental ray下的Custom Shaders欄位,點選Light Map Shader貼圖,至Light Maps選項下點選Misss_fast_lmap_maya,將它貼入Light Map Shader(圖4)。

您會在misss_fast_kin_maya和misss_fast_lmap_maya節點下,都會看到一個Lightmap的定義,您可以任選其中之一的Lightmap來做定義,例如我們選擇misss_fast_kin_maya裡的Lightmap按下貼圖圖案,它會自動產生一個mental ray Texture節點。這時再將此mentalray Texture節點使用中鍵拖到misss_fast_lmap_maya節點Lightmap Write欄位下的Lightmap,現在連結圖如圖5所示。

點選mentalray Texture節點,在屬性編輯器中的File Texture Attributes欄位做以下設定:

1.勾選Wirtable。

2. File Size Width = 800;當尺寸越大時品質會越好,但所花的計算時間會越長,您也可以將所計算圖檔大小的一倍來做定義。

3. File Size Height =800。

4. 將File Size Depth =32 bits;必須要設為32bits,不然無法顯示出SSS效果。

5. 在Image Name中指定一個路徑和名稱,主要是儲存Lightmap的資料,在此的檔名不拘。經由算圖的結果,可以比較出在加入Lightmap之後,模型內部所產生的散射效果(圖6)。

皮肤材质 - 右下蓝 - mayasuihua的博客

定義Diffuse Layer

在misss_fast_skin_maya材質節點中,不管是在Diffuse Layer或Scattering Layer欄位中,都會有個Weight的參數定義,此數值主要是定義此質感表現的強弱程度,如果您試著將Diffuse Weight設為0,您會發現上方的Sample顯示只會出現SSS Weight的顏色。

另外您也可以到Specularity欄位,將Overall Weight=0,代表將亮點的訊息關閉,這樣可以更清楚看到SSS效果;以現在臉部前方所看到的顏色是由表皮和皮下顏色所組成,至於較後面的紅色則是由Back Scatter Color來做定義(圖7)。

為了清楚地明白每個SSS所產生的效果,可以先將SSS三層都設為0,只將Diffuse Weight設為1,此效果會讓現在的質感看起來就和Lambert一樣,至於造成較白色的位置,則是由Overall Color和Diffuse Color相乘所產生的結果。這時如果將Diffuse Weight降低為0.4,此效果看起來會更像Lambert的質感,因為亮度的部份會大大地降低(圖8)。

定義Back Scatter Color

有了基本的Diffuse顏色之後,接下來先來調整Back Scatter Color,將Back Scatter weight設為1,以初始設定來看現在所造成的背面紅色光太強了,因為Radius(代表光可以擴散的距離)和Depth(代表光進入物體的深度)的數值都為25,如果您希望背面的紅光只在邊緣範圍的話,就需要降低此數值。

試著將Radius和Depth設為原來的一半12,這時您會在邊緣部份看到紅色的訊息,但是以正前方來說,此數值還是太大,再將Radius和Depth設為6,現在只會在耳朵和物體的邊緣上看到背面的紅色訊息,如果您希望耳朵會比下方的部份產生更多的透光效果,這時就需要利用貼圖來設定,讓耳朵的數值高一點,正下方的數值低一點。將Back Weight =1.5,將Radius =5,Depth =4;讓耳朵部份更亮,但邊緣光的散射降低(圖9)。

  评论这张
 
阅读(464)| 评论(1)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017