2008-11-21

Maya材質介紹

材質與紋理的區別
首先,大家要瞭解材質,材質是指某個表面的最基礎的材料,如木質、塑膠、金屬或者玻璃等
紋理其實就是附著在材質之上,比如,生銹的鋼板,滿是塵土的臺面,綠花紋的大理石,紅色織物以及結滿霜的玻璃等等.紋理要有豐富的視覺感受和對材質質感的體現。

一、材質
(一)材質球的使用特性(常用類型)
Blinn / Phong / PhongE Lambert / Anisotropic / Shading Map / Surface Shader / Layered Shader
給大家先介紹一下材質球,在maya或者是其他三維軟體中一般都有以下幾種材質:
Lambert、Phong、phongE、Blinn、Anisotropic,另外還有LayeredShader、SurfaceShader、ShadingMaps、UseBackground等幾種特殊的材質類型。

1 Blinn:具有較好的軟高光效果,是許多藝術家經常使用的材質,有高質量的鏡面高光效果,所使用的參數是Eccentricity Specular roll off等值對高光的柔化程度和高光的亮度,這適用於一些有機表面。

2 Lambert:它不包括任何任何鏡面屬性,對粗糙物體來說,這項屬性是非常有用的,它不會反射出周圍的環境。Lambert材質可以是透明的,在光線追蹤渲染中發生折射,但是如果沒有鏡面屬性,該類型就不會發生折射。平坦的磨光效果可以用於磚或混凝土表面。它多用於不光滑的表面,是一種自然材質,常用來表現自然界的物體材質,如:木頭、岩石等。

3 Phong:有明顯的高光區,適用於濕滑的、表面具有光澤的物體。如:玻璃、水等.利用cosine Power對blinn材質的高光區域進行調節。

4 PhongE:它能很好地根據材質的透明度為控制高光區的效果。如果要創建比較光澤的表面效果.它是Roughness屬性,控制高亮節的柔和性,Whiteness屬性,控制高亮的密度,以及Hightlight Size屬性等。

5 Layer shade:它可以將不同的材質節點合成在一起。每一層都具有其自己的屬性,每種材質都可以單獨設計,然後連接到分層網底上。上層的透明度可以調整或者建立貼圖,顯示出下層的某個部分。在層材質中,白色的區域是完全透明的,黑色區域是完全不透明的。

6 Anisotropic:各向異性:這種材質類型用於模擬具有微細凹槽的表面,鏡面高亮與凹槽的方向接近於垂直。某些材質,例如:頭髮、斑點和CD光碟,都具有各向異性的高亮。

7 shading map:給表面添加一個顏色,通常應用于非現實或卡通、陰影效果。

8 Surface Shader:給材質節點賦以顏色,有些和shading map差不多,但是它除了顏色以外,還有透明度,輝光度還有光潔度,所以在目前的卡通材質的節點裏,選擇Surface Shader比較多。

9 Use Backgroud:有Specular和Reflectivity兩個變數,用來作光影追蹤,一般用來作合成的單色背景使用,來進行扣像。

10 體積材質:
體積材質主要是用於創建環境的氣氛效果。

Env Fog環境霧:它雖然是作為一種材質出現在MAYA對話方塊中,但在你使用它是最好不要把它當做材質來用,它相當於一種場景。它可以將Fog沿攝像機的角度鋪滿整個場景。

Light Fog燈光霧:這種材質與環境霧的最大區別在於它所產生的霧效只分佈于點光源和聚光源的照射區域範圍中,而不是整個場景。這種材質十分類似3d Studio Max中的體積霧特效。

Particle Cloud粒子雲:這種材質大多與Particle Cloud粒子雲粒子系統聯合使用。作為一種材質,它有與粒子系統發射器相連接的介面,即可以生產稀薄氣體的效果,又可以產生厚重的雲。它可以為粒子設置相應的材質。

Volume Fog體積霧:它有別於Env Fog環境霧,可以產生陰影化投射的效果。

Volume Shader體積材質:這種材質表面類型中對應的是Surface Shader表面陰影材質,它們之間的區別在於Volume Shader材質能生成立體的陰影化投射效果。

11 Displacement Materials:置換材質
這主要是用於產生一種更加真實的明顯的三維凹凸效果。它不同於我們在表面材質中所講到的Bump mapping,Bump mapping在於它所產生的三維凹凸效果對物體邊緣不會產生效果,而Displacement materials三維凹凸效果是真正的連邊緣都有起伏的立體效果

(二) 材質的屬性
材質基本屬性在其材質編輯器中可以看到,並可以進行編輯,它一般分為:
一般的材質都有通用屬性和共用參數

(1) 一般屬性(也稱為通用屬性):
一般的材質都有通用屬性和共用參數

通用材質屬性:
通用材質屬性是指大部分的材質都具有的屬性。基本上描敘了在開始所講的物體表面的視覺元素的大部分內容,所不同的是在這裏指出了它們在軟體中的調節方法。

Color:材質的顏色。

Transparency:材質的顏色和透明度。例如:若Transparency的值為0(黑)表面完全不透明。若值為1(白)這為完全透明。要設定一個物體透明,可以設置Transparency的顏色為灰色,或者一材質的顏色同色。Transparency的預設值為0。

Ambient Color ambient Color:的顏色缺省為黑色,這時它並不影響材質的顏色。當Ambient Color變亮時,它改變背照亮部分的顏色,並混合這兩種顏色(主要是影響材質的陰影和中間調部分 。它是模擬環境對材質影響的效果,是一個被動的反映。)

Incandescence:白熾,模仿白熾狀態的物體發射的顏色和光亮(但並不照亮別的物體),預設值為0(黑)其典型的例子如模擬紅彤彤的熔岩,可使用亮紅色的Incandescence色。在製作樹葉的時候,可以稍加以點Incandescence色使葉子看起來更生動。(同樣也是影響陰影和中間調部分,但是它和環境光的區別是一個是被動受光,一個是本身主動發光,比如金屬高溫發熱的狀態。)

Bump Mapping:通過對凹凸映射紋理的圖元顏色強度的取值,在渲染時改變模型表面法線使它看上去產生凹凸的感覺。
實際上給予了凹凸貼圖的物體的表面並沒有改變。如果你渲染一個有凹凸貼圖的球,觀察它的邊緣,發現它仍是圓的。

Diffuse:漫射,它是描述的是物體在各個方向反射光線的能力。Dlffuse值的作用好像一個比例因數。應用於Color設置,Diffuse的值越高,越接近設置的表面顏色。(它主要影響材質的中間調部分。)它的預設值為0.8,可用值為0~無窮。

Translucence:半透明是指一種材質允許光線通過,但是並不透明的狀態.這樣的材質可以接受來自外部的光線,變得發光.常見的半透明材質還有蠟,一定質地的布,模糊
玻璃以及花瓣和葉子. 表面的Translucence值在被無陰影投射燈光照亮時為0,或者無窮大。
如果場景中有版透明物體和投射陰影的燈,若出現了鋸齒狀的暗部邊緣,這時應該提高射燈的

Dmap Filter Size或者降低Dmap Resolution。
若設置物體具有較高的Translucence值,這時應該降低Dlffuse值以避免衝突。
表面的實際半透明效果基於從光源處獲得的照明。和它的透明性是無關的。但是當一個物體越透明時,其半透明和漫射也會得到調節。環境光對半透明(或者漫射)無影響。

(2) 高光屬性(lambert沒有此類屬性):控制表面反射燈光或者表面熾熱所產生的輝光的外觀。
它對於Lambert、Phong、phongE、Blinn、Anisotropic材質的用處很大。
Eccentricity:它可以控制高廣範圍的大小
Specular Roll off :是控制表面反射環境的能力
Specular Color:是控制表面高光的顏色,黑色無表面高光

(3)光學屬性:
Reflection:反射,可模擬自然界中的反射現象,可以在Reflected Color中進行貼圖,可以通過Reflectivity控制其反射率。
Refraction:折射,打開它時,計算光影追蹤,但速度會變慢關閉它時,不計算光影追蹤。
Refractive Index:
折射率,廟敘光線穿過透明物體時被彎曲的程度。(是光線多一種介質進入另一種介質時發生,如空氣進入玻璃,離開水進入空氣。折射率和兩種介質有關)
射率為1時不彎曲,常見物體的折射率如下:
空氣/空氣 1
空氣/水 1。33
空氣/玻璃 1。44
空氣/石英 1。55
空氣/晶體 2。00
空氣/鑽石 2。42

Refraction Limit:光線被折射的最大次數,電腦低於六次就不計算折射了,一般就是6次,次數越多,運算速度就越慢,鑽石折射次數一般算為12。如果Refraction Limit=10,則表示該表面折射的光線在之前已經過了9道折射或反射。該表面不折射前面已經過了10次或更多次折射或反射的光。它的取值為0~無窮,滑杆的值為0~10,缺省值為6。

Translucence Depth:(半透明深度)半透明距離
Light Absorbance:(光的吸收率)此值越大,反射與折射率越小
Surface Thickness:(表面厚度)實際上是指介質的厚度,通過此項的調節,可以影響折射的範圍
Shadow Attenuation:(陰影衰減)是通過折射範圍的不同而導致陰影範圍的大小控制。
Reflection Limit:光線被反射的最大次數,同上所敘。如果Reflection Limit=10,則表示該表面反射的光線在之前已經過了9道反射。該表面不反射前面已經過了10次或更多次反射的光。它的取值為0~無窮,滑杆的值為0~10,缺省值為。
Reflected Color:反射顏色)一般都用於環境貼圖,尤其是玻璃、水。
Reflection Specularity:此屬性用於Phong、phongE、Blinn、Anisotropic材質。
Raytrace控制光陰追蹤時的表面的外觀,光影追蹤可用於Lambert、Phong、phongE、Blinn、Anisotropic材質。

(4)其他屬性(渲染屬性):
Hide Source:使表面在渲染時不可見(如果Glow Intensity的值不為0),而只顯示輝光的效果。默認為Off。

Glow Intensity:控制表面輝光的亮度。範圍為0~1,默認為0。

Matte Opacity:用戶可以在渲染中得到RGB圖像,Alpha圖像和Depth圖像。這裏我們也可以得到一個可以控制參數的Alpha,那麼就要依賴Matte Opacity選項。
其中有三個參數,分別是Opacity Gain、Solid Matte和Black Hole

Opacity Gain:是Matte Opacity的默認設置,它可以用來縮放某個物體的遮罩參數,其公式是:物體的遮罩參數=渲染後遮罩數值*Matte Opacity

Solid Matte:可以得到一個固定的遮罩數值.其公式是:物體的遮罩數值=Matte Opacity

Black Hole:使物體的遮罩數為0 其公式是:物體的遮罩數值=0
注:Opacity Gain和Solid Matte在一般的材質球上想看到效果是很難的,可以用Use background節點看到其效果的變化。它們的功用主要是體現在合成上的

Hardware Texturing:它的主要作用就是更為清楚的顯示某個材質屬性。

Extra Attributes:可以添加一些屬性編輯器中沒有的屬性,主要用來驅動關鍵幀和粒子數性的添加中主要分為Attribute Name(屬性名稱)、Data Type(資料類型)、Numeric Attribute Properties(數位屬性的範圍)

Attribute Name:可以創建一個屬性的名稱(不能輸入中文及數字)

Data Type:共有六種資料類型
1. Vector (向量類型):它可以出現X、Y、Z世界坐標系的形式
2. Float(浮點類型):它可以出現一個Slider(滑條),它可以以小數形式進行精確控制
3. Integer(整數類型):同樣也是一個滑條,但是只能夠以整數形式控制。如1、2、3
4. Boolean(布林形式):可以出現一個ON/OFF按鈕
5. String(字串形式):可以在提示符後輸入數位或名稱
6. Enum(全稱enumerated,列舉形式):可以出現一個下拉功能表,可以在Enum Names(列舉名稱)中添加我們所需要的名稱,如 Green、Blue、Red等

Numeric Attribute Properties:可以輸入最大值,最小值,及預設值,如果不輸入任何值,將認為其範圍是正無窮到負無窮。