跳轉到內容

Blender 3D:菜鳥到專業/毛髮

來自 Wikibooks,開放世界中的開放書籍

使用 Blender v2.40 建立的此頁面的較早版本。

(注意:新增:標記

為較新版本新增的說明。我不是專家,但它們似乎有效。)

圖 1:本教程的結果:某種毛茸茸的東西

本教程涉及毛髮,即覆蓋身體的許多相對較短的毛髮。我們將使用粒子來建立毛髮,並在此討論一些方面

  • 如何確定毛髮的長度和粗細。
  • 如何確定毛髮生長的位置。
  • 如何為毛髮著色。
  • 如何高效地渲染。

粒子系統過於複雜,在本教程中無法展示超過一種方法。您可以透過不同的方式實現此處顯示的許多相同效果。


發射器

[編輯 | 編輯原始碼]
圖 2a:新增粒子系統。
  • 刪除立方體。
  • 新增一個UVSphere。這將成為我們的發射器。
  • 切換到物件按鈕中的粒子按鈕(圖 2a)。新增:在較新版本中看起來像
  • 點選新增新新增:在較新版本中,點選
  • 將粒子系統重新命名為“毛髮”。
  • 將粒子系統型別更改為毛髮

毛髮粒子系統有很多特色,最重要的是,如果需要,我們可以手動編輯粒子“運動”。除此之外,正常的粒子物理學適用,所以粒子所能做的一切,毛髮也能做,反之亦然。粒子毛髮會立即顯示粒子在其生命週期內的路徑。為了高效地完成此操作,並非渲染每個幀作為點,而是計算一定數量的控制點。在這些控制點之間,將繪製一條插值路徑。控制點的數量等於段數 + 1。


圖 2b:粒子系統設定

對於毛髮,您需要很多粒子,例如 1,000,000 個以上。如果我們必須在 3D 視窗中處理如此多的粒子並希望渲染它們,這會給我們帶來很大困擾。因此,我們將使用所謂的“子粒子”來建立大量粒子,它們會模仿父粒子的行為。父粒子的數量應儘可能少,但您需要一定數量來控制毛髮的分佈。我們還將使用盡可能少的控制點,三個段應該足以用於短毛髮。

  • 數量設定為 1000。
  • 段數設定為三。新增我在 2.69 中找不到此項。新增 2 在 2.7x 中,它位於您剛剛選擇的粒子系統型別(發射器或毛髮)旁邊,在種子滑塊下方。
  • 從以下位置發射:新增我在 2.69 中找不到此項。新增 2 在 2.7x 中,您必須選中段數滑塊附近的高階框才能看到它。
    • 隨機
    • 均勻 :隨機

這將建立一個美觀、均勻的分佈。

讓毛髮生長 - 毛髮顯示粒子路徑

  • 法線設定為 0.05。新增:發射下的毛髮長度。新增 2 在 2.7x 中,您必須選中高階框才能看到速度面板並調整法線隨機滑塊。如果您更改法線值,毛髮長度將自動設定為 0.2。
  • 隨機 0.005

這裡沒什麼特別的:毛髮沿面法線方向生長。長度和方向略微隨機。

如果您選擇毛髮粒子系統,視覺化型別將自動更改為路徑型別。如果現在渲染,您將不再能看到發射器物件。

  • 視覺化面板中啟用發射器新增:在渲染面板中。
  • 啟用髮絲渲染新增:在渲染面板中。

髮絲渲染(我將其命名為關鍵點發絲以區別於“普通”多邊形髮絲)非常高效地渲染髮絲,速度比普通髮絲快很多倍。它是處理大量毛髮方面唯一可行的解決方案。但它有一些缺點

- 它們不會被光線追蹤看到,因此您不會獲得光線追蹤反射和光線追蹤陰影。您可以使用環境貼圖來計算反射,並使用帶緩衝陰影的聚光燈來計算陰影。
- 如果毛髮非常濃密(例如 1 BU),有時形狀不正確。
  • 啟用從面生成子粒子新增:我在子粒子中選擇了插值。插值在製作毛髮時已知會產生更好的效果。簡單可能可以用一種顏色起作用,但我們將使用影像中的兩種顏色。
  • 數量:5 這是每個父粒子生成的子粒子的數量。
  • 渲染數量:50 這是渲染期間的粒子數量。
  • 粗糙度 2:0.1 新增:我使用粗糙度> 隨機來設定此項。粒子的形狀的隨機變化。因此,毛髮不會筆直豎立,而會看起來有點捲曲。

預設情況下不渲染父粒子,因此現在在我的舊機器上,我有 5000 個粒子在 6 秒內渲染完畢。如果我們使用 1000 個子粒子,我們將有 1,000,000 個粒子,大約需要 1 GB 的 RAM,渲染時間為 1 分 42 秒。如果使用從面生成子粒子來渲染關鍵點發絲,您還可以使用子粒子簡化,這將自動減少遠離攝像頭的物體上的粒子數量。新增:使用子粒子 - 簡單時看不到此項,使用子粒子 - 插值時,您會在整個渲染部分看到它。但是,使用標準設定的結果非常糟糕。


圖 2c:第一次渲染,沒有材質。

現在我們應該更改燈光以獲得預覽。

  • 選擇燈。
  • 切換到按鈕。
  • 將燈型別更改為聚光燈
  • 將陰影型別更改為緩衝陰影
  • 將緩衝陰影型別更改為經典-中途

這是一種很棒的陰影型別,它可以非常出色地渲染關鍵點發絲,並且產生的偽影比經典陰影少(在我看來)。我在第一次渲染中插入了另外兩盞燈,並使用了經典的三點式照明(圖 2c)。

點選影像檢視更大的版本。

新增

以下是我使用的設定和我得到的渲染結果。(點選放大影像並閱讀設定。)


在材質按鈕中,您可以設定髮絲的不同方面

- 它們的寬度和形狀
- 使用的著色器
- 基礎顏色
- 沿髮絲的紋理
- 不同的粒子屬性,例如長度、密度或粗糙度
  • 向發射器新增材質。
  • 將材質命名為“毛髮”。

髮絲著色器

[編輯 | 編輯原始碼]
圖 3a:材質按鈕中的髮絲設定。

圖 3a 中顯示了關鍵點發絲的預設髮絲設定。請參閱髮絲手冊以瞭解所有設定的說明。

  • 末端值更改為 0.25,這將使毛髮更加尖刺(圖 3a 中未顯示)。新增在 2.7x 中,它稱為尖端開始已變為根部
Note:

表面漫反射:如果您選中表面漫反射,可能更容易實現良好的照明環境。如果啟用了表面漫反射,毛髮不會顯示那麼多高光,而沒有它可能太亮了。我見過很多使用此引數的毛髮示例。但是,您必須在開始時就決定是否要使用它,因為它會影響所有其他材質設定。這是您自己必須決定的問題。


賦予毛髮基礎顏色

[編輯 | 編輯原始碼]
圖 3b:毛髮顏色紋理

髮絲使用底層面/頂點的材質進行渲染,包括使用 UV 紋理進行著色。由於您可以為每個面分配多個材質,因此每個粒子系統可能具有自己的材質,並且底層面的材質可能與髮絲的材質不同。我們將使用 UV 紋理,並將其用於發射器的表面以及毛髮的顏色。

  • 在 3D 視窗中切換到正面檢視(檢視->正面)。
  • 確保您處於正交檢視模式(也在檢視選單中)。
  • 切換到球體的編輯模式。
  • U進行展開,選擇從檢視展開球體。這是一種快速且有效的將球體以簡單方式正確展開的方法。

您不需要在UV/影像編輯器中分配紋理,我們現在只需要座標。

圖 3c:具有顏色紋理的發射器。
  • 向材質新增紋理,將其命名為“毛髮顏色”。
  • 貼圖輸入設定為UV
  • 轉到紋理按鈕並將紋理型別設定為影像
  • 載入影像紋理。我使用了圖 3b 中的影像。

通常我會就此停止,我認為材料已經足夠好了。但是,如果你想讓毛皮更蓬鬆柔軟,你應該在毛髮上新增第二種紋理,它會改變 Alpha 值。新:為了讓這生效,你必須在粒子系統的Children面板中選擇Interpolated而不是Simple


圖 3d:沿毛髮設定紋理。

如果你想這樣做

  • 啟用ZTransp
  • 新增第二種紋理。
  • Map Input: Strand
  • Map To: AlphaSpecDVar=0
  • 使用混合紋理(LinearQuad

你可以用這種方式更改所有其他屬性,例如沿毛髮的顏色(漂白尖端)。


用紋理改變毛髮長度

[編輯 | 編輯原始碼]

首先我會向你展示如何使用與毛髮不同的材質渲染髮射器網格。然後我會展示如何用紋理半互動式地改變毛髮長度。

  • 切換到編輯按鈕。
  • 切換到編輯模式。
  • 連結和材質面板中,點選材質部分的新建(參見圖 4a)。
    圖 4a:要點選的按鈕
  • 確保所有頂點都被選中。
  • 點選分配
  • 切換回物體模式。

現在發射器擁有第二種材質。

  • 返回材質按鈕。
  • 連結和管道面板中,點選材質名稱旁邊的X刪除到此資料塊的連結)。
  • 新增一個新的材質。
  • 將其命名為Emitter

現在你的發射器物體上有一個新的材質。由於粒子系統使用材質編號 1,你可以對發射器使用不同的設定。

圖 4b:紋理繪畫

我們已經解開了發射器的包裹,這對於任何真實模型來說都是可能的情況。現在我們將使用 UV 影像和紋理繪畫來確定毛髮長度。

  • 分割 3D 視窗。
  • 將右側更改為UV/影像編輯器視窗。
  • 切換到發射器物體的編輯模式。
  • UV/影像編輯器中使用影像->新建...並確認預設設定。這將建立一個新的影像,我們將在上面繪畫。
  • 點選UV/影像編輯器視窗的視窗標題欄中的包圖示。確認。
  • 將物體更改為紋理繪畫模式。新手提示:在 3D 視窗中,點選下拉選單。將其更改為紋理繪畫

現在你在物體上看到紋理。

  • 在物體上繪製一個結構。
  • 切換回物體模式。
  • 轉到材質按鈕。
  • 將活動材質更改為Fur(點選連結和管道按鈕中顯示2 Mat 2的箭頭)。
圖 4c:使用紋理設定粒子長度的材質設定。
  • 建立另一個紋理。將其命名為FurLength
  • 貼圖輸入設定為UV
  • 設定Map To
    • 關閉Col
    • PAttr
    • Length
    • DVar=0 紋理上的所有白色區域將產生 0 的粒子長度。
  • 載入我們繪製的影像紋理。


圖 4d:用紋理控制粒子:結果

結果如圖 4d 所示,你也可以在 3D 視窗中看到粒子發生變化。

在 Blender 2.7x 中,情況發生了變化。我按照步驟一直做到將活動材質更改為 Fur。然後,我轉到紋理選項卡,並點選材質紋理按鈕旁邊的粒子紋理按鈕(或者你可以點選粒子選項卡按鈕 ,然後點選紋理選項卡按鈕)。我添加了一個新的紋理,打開了我在UV/影像編輯器中剛剛繪製的紋理,將座標設定為UV(在對映面板中)。最後,我在影響面板中啟用了密度,並將它的值設定為-1.001.00的效果相反 = 紋理白色區域上的毛髮)。結果應該與上面相同。

還有其他方法可以實現這個結果,例如使用頂點組或粒子編輯。但我喜歡使用紋理,因為你可以非常精確地控制它,並且可以隨時更改效果的強度。頂點組不允許這樣精確的控制,或者你可能需要在發射器中使用大量的頂點。粒子編輯(我們將在下一步進行)如果你之後更改了基本粒子設定,就會丟失,而且你不能輕易更改它的效果。


梳理它!

[編輯 | 編輯原始碼]
圖 5a:粒子模式下梳理

一個經常被低估的效果是,在自然方向上梳理毛皮的重要性。毛皮不會簡單地直立起來,也不會遵循重力(或者只遵循一小部分)。所以回到粒子系統!

  • 切換回粒子按鈕
  • 粒子系統面板中點選設定為可編輯
  • 切換到粒子模式

粒子模式只有在你將粒子系統設定為可編輯時才會出現,而且只有毛髮系統可以設定為可編輯。在粒子模式下工作時,有一些救命稻草需要知道。

- 你只能編輯控制點(記住本教程開頭段數設定)
- 你只能編輯父粒子,所以你需要足夠的父粒子才能獲得良好的控制
  • 啟用將選擇限制為可見
  • 啟用點選擇模式以獲得更精細的控制。

這兩個設定都在 3D 視窗的視窗標題欄中。

  • 使用 3D 視窗中的N鍵開啟粒子編輯屬性面板。
  • 選擇梳理

你在粒子模式下可以使用很多不同的工具,參見粒子模式手冊.

  • 按照自然流動梳理毛髮。

在我這裡使用的示例球體上,很難判斷自然的流動應該是什麼樣子;-)。所以我只是非常小心地梳理了一些地方,並且稍微改變了一些地方的長度。你在圖 1中可以找到渲染結果,Blend 檔案連結在下面。


  • 一個德語教程,展示瞭如何使用非常相似的方法建立.
  • 這裡展示了令人驚歎的毛皮:老虎
華夏公益教科書