要渲染出真實可信的金屬可能需要大量的時間,因為光線追蹤會對渲染時間造成負面影響,所以我們應該了解GP著色器的高光屬性,讓我們可以在保證渲染盡可能高效的同時實現想要的外觀。 我們在這個部分研究的是皮革材料,以及Mudbox導出法線貼圖的選項,它能夠提供我們所需的皮革褶皺和縫合。 我們的視覺發展需要緊密貼合的皮革,不是那種陳舊起皺的。它還需要吸收一些光線來撫平一些皺褶。我們需要在汽車座椅上避免出現過多的沙粒和塵土,這樣我們就可以做出更多的風格。你可能會注意到在繪制紋理當中有一些咖啡漬和輕微的磨損。 ![]() 我們先看一下皮革材料中的一些有用的GP著色器屬性。 為了可以使用Mudbox的法線貼圖,我們需要理解GP Surface的位移屬性。你首先會注意到的是即使我們不需要連接凹凸貼圖,還是需要選擇Bump,這個命名規則只是為了將位移和非位移進行簡單的分組。 ![]() 法線貼圖中的編碼(Encoding)應該總是選擇“centered”,所以我們也會保持這個默認值。另外RMS也可以很簡單地從ZBrush或者Mudbox選擇法線貼圖,這些可以在“NormalMap Mode”下拉菜單中找到。需要注意的一點是,這些貼圖需要連接到輸入法線(Input Normal),不是單獨輸入到每個通道中,這樣做是沒用的。 ![]() 提示 如果想移除或者最小化材質過濾的話,最好是在文件節點中添加一個renderman的材質屬性,并將過濾從1.0設成0.1或更小的數值。這樣做可以提升材質的銳度,特別在位移法線和凹凸貼圖當中可以看到明顯的精良細節。 次表面反射(Subsurface Scattering) 實現可信皮革的另外一個重要屬性是次表面反射(SSS)。大部分的皮革都會吸收部分的光線,所以GP Surface著色器擁有內置的次表面控制(Subsurface Controls)是一項優勢,它能夠支持基于光線追蹤和點云的計算。 為了激活SSS的計算,我們需要將漫射混合設成大于0的數值。這個參數源于漫射(Diffuse),所以設成0.4的數值就意味著直接燈光中的40%會被混合到著色器中。GP Surface著色器會自動降低漫射的燈光。 我們也需要大概設置DMFP和DMFP Color的數值。這兩個數值是很重要的,因為它們決定了表面上的散射光線的距離和顏色。 DMFP(Diffuse Mean Free Path)是燈光在散射到內部之前在物體表現上的傳播距離。也就是說在燈光開始根據這個屬性散射之前,你是看不到直接燈光穿透表面的效果,然后你可以看到DMFP Color的效果。 在這個例子當中,我們對全部牛奶使用的DMFP Color數值為<<10.90, 6.58, 2.51>>,我們可以看到波長較短的藍色通道開始占據表面顏色的過程,同時其他的顏色通道繼續進入表面的內部。 這是屬性有一點棘手,DMFP Color是對畫面單元的測量,而不是顏色值的測量,所以就算你通過色卡來選擇顏色值,你選擇的實際上是每個通道的吸收。因此,我們經常額可以看到輸入有很大的浮點值。例如<<5,8,4>>這個數值就意味著著色器會在紅色通道吸收5個單位,在綠色通道吸收8個單位,以及在藍色通道吸收4個單位。 如果使用較大的數值的話,色卡的顏色外觀總是會不準確的,因為Maya會嘗試表示出一個顏色值,不是單位值,所以任何高于1的數值都會以白色色卡來表示。 ![]() 現在我們已經了解RMS的屬性了,接下來看看Mudbox當中的一些有用的工作流選項,我們可以用這些來跟RMS進行更好的交互。 Mudbox細分 一般來說我們會需要將模型細分,用于繪圖和造型,因此我們必須選擇正確的設置來避免不必要的縫合線和假象。因為RMS會遵守Maya的creasing,所以我們需要確保選擇正確的Mudbox細分工具。 ![]() 因為我們的汽車在最終鏡頭中不是高細節的前景內容,所以我們只需要一個法線貼圖。這樣可以確保我們可以在渲染過程中得到所需的皮革皺褶,無需添加額外的幾何圖形。 請確保不要在導出的過程中平滑化UV,因為這樣做會產生假象。Mudbox已經將UV細分,而且在細分過程中將幾何圖形進行了合理的分布。 ![]() 我們的汽車不會出現在最終鏡頭的前場,所以2K的法線貼圖就已經可以實現皮革的皺褶。同時請確保使用光線投射(raycasting)來保持細節。 ![]() 我們也會以高色彩深度來導出,這樣就可以彌補較低的分辨率。對于RenderMan的用途來說,選擇高顏色深度的格式總是有好處的,因為色彩信息的保真度比渲染時間更重要。另外,EXR之類的先進格式是專門用戶高顏色深度的,而且它們在硬盤空間占用方面也很有優勢。 ![]() 我們在這個部分將會了解汽車內部的塑料內飾,這部分的內容會簡單一些。 我在制作汽車內飾時嘗試過幾種不同的材質,最終我決定使用玻璃纖維的樣式。因為這是一輛未來的汽車,我們在藝術設計上有一定的自由度,只要做出來好看就行了。其中一樣我希望保留的是磨損的效果(盡管未來所有東西都會變得更加耐用,應該是吧?),因為如果方向盤被手接觸到的表面有一些歲月的痕跡,那么它看起來就不會像是一輛新車。 我之前在Mudbox畫過一種殘舊的塑料紋理,并把它作為2K材質貼圖導入。我們會用它來向汽車內飾添加顏色和輕微的凹凸效果。我們在拖放材質到GP Surface著色器數值輸入的時候,也會使用一個亮度節點來確保整個網絡可以正確連接。 雖然這是一個簡單的著色器,但是我們要注意的一點是使用較高的高光粗糙度來模擬出柔軟彈性的塑料。高光模式也設成了“Direct”,因為我們在這種漫反射著色中不需要復雜的物體間反射。跟金屬不一樣的是,塑料總是會反射出白色,所以我們需要將高光顏色保持在白色。 ![]() ![]() 我們總是需要進行手動微調才能在著色器中得到想要的外觀和突起的強度。位移大小(Displacement Scale)能夠對彈性塑料所需的輕微突起進行藝術指導。使用凹凸貼圖時總是需要使用位移編碼(Displacement Encoding)的“Centered”選項,這就意味著貼圖的范圍是在0-1之間(可能是8位的)。 儀表板 未來主義的儀表板需要一些光線反射。為了實現這點,我們將會利用GP著色器中的新集合區域燈光屬性。有了它之后,我們無需使用反射光源或者其他不準確的方法都可以將燈光投射到畫面中。 ![]() 正如我們所看到的,增加一些反射光會為汽車提升很多真實感,我們可以使用跟儀表板一樣的材質來投射光線,這樣可以確保準確度。為了實現這點,我們需要研究一下GP著色器當中的發光屬性。 白熾光的顏色會影響到燈光的發射。雖然我們是映射儀表板的材質,但是我們不想儀表板受到我們的燈光選擇所影響。為了避免產生這種聯系,我們需要有兩個儀表板,一個用于渲染,一個用于燈光,這樣我們就可以在儀表板的燈光方面擁有完全的自由,無需擔心儀表板在渲染期間會曝光過度。 被照亮的儀表板不會有陰影,因為這樣可以避免損失光源的燈光采樣。儀表板還是單面的,這是為了避免在兩個方向發射出燈光。 這個跟其他的物理Geometric Area Light相似,我們每次增加一個整數,它的強度就會增加一倍,所以數值6比數值5的強度要高一倍,。默認的發射值為0,強度為1,負值不是有效的強度。 這個屬性可以控制光線發射的寬度,我使用了默認值來模擬寬漫反射光源。 ![]() ![]() 內容回顧
|