UE4-布料系統

注意:布料系統工具,只能應用於sekeleton mesh的模型上。

因爲沒有合適的人物模型,所以用簡單的模型代替。基本操作一致。

一、導入帶骨骼的模型,雙擊打開模型網格體資源。

如果不是骨骼模型,打開資源之後,不會有片段選擇(Section Selection)的選項。

二、選擇 片段選擇(Section Selection)選項,此功能是用選擇用於繪製布料的材質ID

開啓片段選擇,鼠標左鍵選擇要用作布料的網格體部分,選擇後會有高亮顯示。

三、創建並設置布料資源

1.鼠標右鍵打開快捷菜單來創建布料資源

參數:

資源命名(Asset Name):爲資源命名,之後便於查找

網格體中移除(Remove from Mesh):如果需要將幾何體的一個單獨的模型塊設置爲布料,可以啓用此選項,如果不需要,不需要勾選。

物理資源(Physics Asset):選擇使用的物力資源,用來確保模擬產生適當的碰撞。(如果是人物,會自動生成膠囊碰撞體用來避免布料穿模)

2.設置完成後,點擊創建按鈕。

3.布料繪製

選擇激活布料繪製,會自動彈出Clothing 布料 設置窗口界面。(如果不小心關了,可以再次點擊,或者在模型界面,工具欄窗口下選擇布料,開啓面板)

  

4.布料編輯器面板,布料數據下,顯示當前你對此物體創建的所有的資源,選中要編輯的數據資源,選中後,模型預覽窗口會顯示出,當前此資源是針對誰創建的。

5.主要設置內容

在布料配置(Cloth Config)屬性可以調整布料,用來模擬不同類型的材質,如粗麻布、橡膠、或是其他類型的布料材質,請閱讀官網鏈接:

https://docs.unrealengine.com/zh-CN/Engine/Physics/Cloth/Reference/index.html#config

6.工具:

筆刷:在布料資源上進行拖動即可在布料繪製出半徑和強度值

主要與Paint Value (繪製值)設置有關,此值控制繪製區域近似於布料響應程度,數值爲0時蒙皮頂點無法移動,數值爲100時,蒙皮頂點可以從原始位置移動1米。

Brush中

半徑:刷子的大小

忽略背向:對模型進行繪製的時候,如果不想影響到模型背面的區域,就勾選上,避免刷到不必要的位置上。

示例:

不勾選忽略背向:

勾選忽略背向:

正面效果:

背面效果:

需要在背面同一區域進行繪製:

  

最後效果: 

顏色的不同代表布料可移動的距離不同

7.梯度:可以選擇一組布料值,然後在之間繪製出漸變混合。

先設置梯度的開始值與結束值的範圍

操作:

1.使用鼠標左鍵繪製梯度起始值,綠色點表示

2.按住Ctrl + 鼠標左鍵繪製梯度結束值,紅點表示

3.繪製完成後,按下回車鍵

效果:值越小的地方顏色越黑,值越大的地方 顏色越白,

8.平滑:可以模糊或柔化不了之間的對比度

使用強度(Strength)值可調整模糊效果的強弱,用於繪製區域之間創建柔化梯度。

9.填充:使用設定的數值來替代數值相似的區域

填充值:FillValue 設置填充區域頂點的數值,也就是布料可移動的最遠距離,閾值(Threshold)設置填充操作所用的數值。

10.取消設置,將物體還原

官網提到的還原方法並不起作用(Shift + 鼠標左鍵),只能剛操作的區域還原到初始狀態,或者PaintValue設置爲0,重新繪製

示例:

現在:

重新繪製:

11.繪製 Paint Value 爲 30的 一半模型

效果:

四、指定布料資源(必須要的一步)

1.完成繪製後,關閉布料面板,使用選擇片段,點擊剛纔選中的模型,右鍵打開選擇器選擇應用布料數據,選擇剛纔編輯的資源

2.系統編譯完成後,就會出現效果

3.也可以在資源詳情面板設置布料資源:

找到LOD 0 裏面的分段,並且找到你選擇的針對哪個材質進行編輯的布料設置,可以使用高亮功能來確認,

4.預覽效果與期望有出入,可能是因爲模型本身的碰撞器導致

五、更改物體本身的物理碰撞

1.模型編輯界面選擇物理

2.進入後你可以看到所有起作用的膠囊體碰撞,類似於下圖

這些膠囊體碰撞器會對布料的形狀產生影響,可以查看哪個碰撞器影響較大,可以設置縮小碰撞器

3.避免穿模,增加膠囊體

注意:盒體是不起作用的,

使用縮放,平移功能,設置膠囊體位置,大小,做成想要的效果,

注意:因爲布料系統是有一個重力使用的,如果是水平放置膠囊體,會導致布料自動滑動,落下。

4.設置完成保存,要看物體效果,將模型編輯器窗口全部關閉,重新打開。

六:

遺留問題:

布料系統可以用來做衣服,披風,頭髮,旗幟,等效果,但是我沒有找到,也沒有實現布料系統與其他Actor進行碰撞交互的功能,目前認知只停留在:布料系統對於本身物體碰撞是可以有作用的。

但是官網給的示例內容中表示是可以做到與其他對象進行碰撞交互的:

在此尋求布料內容示例項目工程。或是實現與其他Actor進行碰撞交互的方法。萬分感謝。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章