如何讓遊戲裡的植物産生類似風吹過的效果?
騰訊遊戲學院專家Freddy将在本文中,嘗試使用UE4引擎的PivotPainter2.0插件制作此效果,一起來看看吧。
靜态的遊戲場景氛圍是十分生硬的,缺少與自然互動的生機。其中關于植物的表現包含草叢與角色的互動,地面/水面與角色的互動,植物的生長,植物與天氣的互動等等。UE4引擎中提供了PivotPainter2.0插件可以快速幫助遊戲美術師在DCC軟體中預生成頂點和貼圖的資料,這些資料導入到UE4引擎中可以使靜态植物模型産生類似于風力的吹過的效果或者植物生長的效果。
本教程從最初流程出發,系統的講解PivotPainter2.0的應用方法。希望對大家有所幫助,也是我自己的一個學習過程。這個資料用好了還是可以制作出很多花樣效果的。
UE4引擎提供了植物的動畫流程來模拟風場等效果,可以通過讀取Tex2d的方式在材質編輯器中進行模型頂點的各種動畫制作。

使用官方提供的PivotPainter2.0插件可以在3dsmax中自動識别層次結構,快速對模型的Pivot position進行自動适配,并把頂點資訊渲染為Texture2d。
具體流程如下:1. 首先在3dsmax中打開模型。
2. 拖入PivotPainter2.ms檔案(在UE4安裝目錄的3dsmax子檔案夾)到3dsmax中,常用的話可以添加到3dsmax中RunScript預設目錄。
3. MAX右側工具欄中Utilities找到Level of Detail頁籤,并使用這個工具把想要編輯的模型從LOD中拆分出來。
4. 全選模型,把植物模型的根部移動到世界坐标原點,并把pivot也移動到這裡。
5. 選擇要拆分的LOD模型,勾選PivotPainter2.0工具中的Preserve Custom Normals(否則光滑組會丢失),點選Detatch All Elements子產品中的Detach Selected Model’s Elements按鈕對模型進行自動拆分。
6. 删除無用/本次不編輯的模型。
7. 選中所有模型,點選Generate New Pivot Pionts子產品中的Manage按鈕,會彈出新的選擇視窗。我們需要把裡面的分組删掉,點選裡面的分組再點選X号按鈕即可。然後選擇所有模型,點選上面的{ }按鈕建立新的分組,然後關閉這個視窗。再點選Update按鈕重新整理一下,然後左面的下拉菜單中選中會自動為我們選擇的模型分一個組,然後我們選擇這個組即可。
8.點選Pick Leaf Pivot Obj選項中的Mesh toggle,再點選PickMesh,并選擇植物根節點(樹幹),然後點選Create New Pivots按鈕。
9.等待一段時間,直到Pivots移動完成。
10. 開始手動根據層級結構關聯父子連結。根節點要歸零,并且要保證X軸朝上。
11. 連結好父子連結後,選擇根節點模型,點選Render Options頁籤中的Process The Selected ObjectHierarchy按鈕。裡面的UV設定和輸出參數可以根據特殊需求自己選擇,本教程沒有更改預設設定。
12. 選擇導出目錄導出貼圖。
13. 我們要為樹枝/樹幹/樹葉和其它使用不同貼圖的模型都分别賦予不同的材質。
14. 整體導出模型為FBX檔案。(以上步驟是針對于單獨LOD0的拆分,其它LOD可以重複循環以上步驟,在最後一步導出時merge這些LOD檔案,通過Level of Detail把各個LOD合回去)
15. 在UE4中導入模型和貼圖。其中模型導入時需要勾選Combine Meshes選項。如預設勾選了SkeletalMesh則需要關閉這個選項。
16. 然後我們需要設定貼圖,其中命名包含pivotpos的貼圖需要設定為HDR(RGB, no sRGB)格式并關閉sRGB模式,并且在Texture設定中打開卷展欄,把Filter設定為Nearest。
17. 其中命名包含XVect的貼圖需要設定為VectorDisplacementmap(RGBA8)格式并關閉sRGB模式,并且在Texture設定中打開卷展欄,把Filter設定為Nearest。
18. 然後我們可以使用Material編輯器中的PivotPainter2的各種節點對貼圖的各個通道進行讀取。其中PivotPainter2FoliageShader是封裝好的植物子產品,可以接收風場直接使用。
注1. 子物體比較多的模型應拆分多個部分生成pivot,否則模型會卡死。樹幹/枝桠和樹葉要分别給不同的材質,否則動畫運動時會出現問題。
注2. 根節點一定不要忘了歸零。
注3. 由于是資源商店中的内容,植物子物體分組分的不好,有的資源mesh是多根樹混合到一起的效果(類似于榕樹,SM_birch_a_fall),這種選擇根節點,連結父子關系相當麻煩。需要大量時間手動設定,目前沒有解決辦法。場景美術設計師自己重新制作的樹先分好組可以解決這個問題。
官方位址:
https://docs.unrealengine.com/en-US/Engine/Content/Tools/PivotPainter/PivotPainter2/index.html
關于騰訊遊戲學院專家團如果你的遊戲也富有想法充滿創意,如果你的團隊現在也遇到了一些開發瓶頸,那麼歡迎你來聯系我們。騰訊遊戲學院聚集了騰訊及行業内策劃、美術、程式等領域的遊戲專家,我們将為全世界的創意遊戲團隊提供專業的技術指導和遊戲調優建議,解決團隊在開發過程中遇到的一系列問題。