https://main--cc--adobecom.hlx.page/cc-shared/fragments/merch/products/substance3d/sticky-banner/default

了解法線貼圖流程

3D 建模中,表面是以多邊形表示。光線計算會根據這些多邊形的幾何形狀來進行,就像藝術家使用著色技術來模擬 3D 一樣。這種方法非常有效;不過,它可能需要大量運算,從而限制了可能的整體細節度。法線貼圖提供一個出色的輕量型解決方案,不需要改變底層幾何形狀,就能修改光線與表面相互作用的方式。

法線貼圖以紋理影像的形式儲存表面的相關資訊。藉由編碼紋理中的表面法線,法線貼圖可以模擬表面細節的外觀 (例如凹凸、刮痕、皺紋等),而不會增加下方幾何形狀的複雜性。

法線貼圖是在渲染期間使用從法線貼圖修改的表面法線來計算。由於這些計算不需要大量運算,因此可以完成很高的細節度,即便即時也是如此,使得法線貼圖成為電玩遊戲開發人員的熱門技術使用選擇。

目前可以在哪裡看到法線貼圖

整體來說,法線貼圖是一項多功能技術,任何 3D 藝術家和設計師都應該使用它來加速和改進工作流程。

您除了會在硬體限制非常重要的情況下看到採用法線貼圖 (例如電玩遊戲需要為玩家即時渲染場景),在電腦動畫電影、建築視覺化和產品設計中也會採用。

法線貼圖不會影響物件的上色,因此您會發現它最常用於物件表面不完全平坦或光滑的情況下。平心而論,這表示幾乎所有 3D 模型都可以使用法線貼圖來提升其真實感,包括磨損的皮革、凹凸不平的木紋、人類皮膚、織物等。

法線貼圖有幾種常用的基本工具和軟體。以下列出其中一些:

1. 3D 建模軟體:Blender、Maya、ZBrush 和 {{substance-3d-modeler}} 等工具可用來建立模型,以供法線貼圖使用。有許多出色的軟體解決方案,各有自己的建模和雕刻方法。

2. 紋理繪圖軟體{{substance-3d-painter}} 或甚至 Adobe Photoshop 等軟體可用來建立和編輯紋理貼圖,包括法線貼圖。

3. 法線貼圖產生器:法線貼圖產生軟體可協助從高解析度幾何形狀或紋理資訊建立法線貼圖。xNormal、CrazyBump 或 Substance 3D Designer 等工具可以根據各種輸入產生法線貼圖。

4. 遊戲引擎:Unreal Engine 和 Unity 等遊戲引擎內建法線貼圖支援。這些引擎提供必要的工具和渲染功能,以便利用法線貼圖。這些引擎也同樣適合在創造遊戲體驗時,用於建立渲染。

5. 著色器程式設計語言:了解著色器 HLSL (高階著色語言) 或 GLSL (OpenGL 著色語言) 等著色器程式設計語言有助於建立自訂著色器,以便利用法線貼圖。這些語言可讓開發人員定義光線如何與法線和其他紋理貼圖相互作用,以實現令人驚嘆的視覺效果。

以上所列並非所有工具,但為創作者提供了一個很好的起點,以便對法線貼圖及如何在即時渲染環境中實作有基本了解。

Normal mapping process to create 3D textures
Playground Games 所創作的影像。
Normal mapping software generated leafs for 3D design

法線貼圖與凹凸貼圖有何不同

法線貼圖和凹凸貼圖是為 3D 模型增添表面細節的類似技術。其不同之處在於表面法線的表示和操作方式。以下是兩者差異之一切須知。
凹凸貼圖簡介
凹凸貼圖也稱為高度圖或置換貼圖,會儲存表示表面變化的高度資訊。這些貼圖使用灰階影像,其中較淺或較深的值表示表面較高或較低的區域。凹凸貼圖會根據這些灰階值擾動表面法線,以在渲染時修改模型的幾何形狀。因此,雖然這項技術會在渲染期間光線與模型相互作用時營造出表面細節的錯覺,但凹凸貼圖完全不會儲存表面法線,只會儲存高度資訊。
法線貼圖簡介

法線貼圖使用 RGB 影像來儲存明確的表面法線資訊,其中每個色版代表每個紋素處表面法線向量的 X、Y 和 Z 分量。法線貼圖會擷取有關表面方向的更多資訊。法線貼圖不會影響模型本身的幾何形狀,但仍會修改與周遭光線相互作用的方式。

與凹凸貼圖相比,法線貼圖提供最精確的結果,僅擷取高度變化以外的表面細節。

法線貼圖的優缺點

概括來說,法線貼圖有幾個優點和一些潛在缺點。以下是需要考慮的一些法線貼圖優缺點:
法線貼圖的優點

1. 逼真的表面細節: 法線貼圖可增添複雜的表面細節,而不會增加幾何複雜性。

2. 效率: 法線貼圖是一項符合運算效益的技術,特別是與增加模型的多邊形數量以獲得表面細節的情況相較下。

3. 減少記憶體需求: 法線貼圖會以紋理格式儲存資訊,與儲存幾何形狀資訊相比,通常使用較少的記憶體。

4. 可重複使用性: 法線貼圖可以輕鬆地套用至不同的模型,讓藝術家和開發人員能夠重複用於不同的資產。因此可節省時間、精力和產品的最終大小。

5. 互動的光線效果: 法線貼圖可增強光線與模型的相互作用,以獲得動態 3D 打光效果,例如鏡面高光、陰影變化及更精確的反射。

法線貼圖的缺點

1. 有限的幾何形狀改變: 法線貼圖只會影響表面細節的外觀,無法修改幾何形狀。其所營造出的錯覺通常很有用,儘管有時當需要實際修改幾何形狀時可能必須使用其他技術。

2. 建立和編輯: 建立高品質的法線貼圖可能很困難,並需要專門的知識和軟體。由於資料的複雜性,編輯法線貼圖可能很困難。

3. 紋理空間限制: 法線貼圖由於通常會儲存為 RGB 影像,因此需要更多紋理空間。這可能會影響整體記憶體使用量,在某些情況下可能需要謹慎地最佳化。

4. 切線空間限制: 法線貼圖通常是在切線空間中定義,這表示它們會取決於模型的方向和 UV 座標。當相同的法線貼圖套用至具有不同 UV 佈局或方向的模型時,這有時會導致視覺誤差。

儘管存在一些限制,法線貼圖仍然是即時提升 3D 模型視覺品質和真實感的最有效技術。法線貼圖在效能與視覺逼真度之間提供良好的平衡,使其在 3D 紋理化和渲染方面成為寶貴的工具。

了解何時利用法線貼圖

雖然隨時都適合使用法線貼圖,但有時藝術家可能不想使用貼圖,而想在模型的幾何形狀中直接雕刻微小的細節。使用 Substance 3D Modeler 等 3D 雕刻軟體時,會特別容易達成此目標。另一方面,當需要即時渲染時,則必須使用法線貼圖來確保場景中的多邊形數量很少,同時保持很高的視覺逼真度。

進一步了解法線貼圖

請記住,與 3D 的所有層面一樣,練習是掌握法線貼圖技術的關鍵。請不要猶豫,放心地嘗試使用不同的軟體。將法線貼圖加入自己的模型,並觀察視覺效果及其行為。您將迅速了解如何獲得驚人成果,同時在過程中節省電腦記憶體甚至是製作時間。

常見問題集

什麼是應用於遊戲設計的法線貼圖?

法線貼圖是一種紋理貼圖,將表面法線資訊儲存在 RGB 影像中。其可用於改變光線與模型表面相互作用的方式,而不需要改變模型的幾何形狀。法線貼圖在 3D 遊戲設計中特別有用,因為電玩遊戲需要進行即時渲染,而法線貼圖比起在模型的表面中建立每個微小細節的模型會更有效率。

法線貼圖上有多少個色版?

法線使用 RGB (紅色、綠色和藍色) 影像建立,其中影像中的每個色版代表貼圖的每個紋素處表面法線的 X、Y 和 Z 分量。這表示法線貼圖具有三個色版,各包含正值或負值。

  • 紅色色版 (R) 對應至表面法線向量的 X 分量。
  • 綠色色版 (G) 代表表面法線向量的 Y 分量。
  • 藍色色版 (B) 代表表面法線向量的 Z 分量。

所有三個色版會搭配使用,為每個紋素提供明確的方向資料,以便用於渲染期間來增強 3D 模型上的光線和陰影效果。

為何稱為法線貼圖?

在電腦圖形中,「法線」是指在特定點垂直於表面的向量 (或「法線」)。由於這些貼圖會儲存有關 3D 模型表面法線的資訊,因此我們將其稱為「法線貼圖」。

藉由在渲染期間套用法線貼圖,3D 模型的表面法線會根據貼圖內儲存的資訊進行修改,以產生光線和陰影效果,營造出複雜表面細節的錯覺。

https://main--cc--adobecom.hlx.page/cc-shared/fragments/products/substance3d/bottom-blade-cta-s3d-collection