UE 插件下載

下邊是下載連接,UE查看源代碼開發,可自行編譯,目前插件值適用於 UE5 版本,prebuild 目前只有 UE5.3,其它版本後續會補充。

ue plugin source

ue 5.2 plugin prebuild

ue 5.3 plugin prebuild

ue 5.4 plugin prebuild

UE 使用說明

  1. 在UE中新建工程

    藍圖或者c++工程均可,如果需要二次開發插件,需要建立c++項目,導入人物(人物的默認姿態必須是T-Pose,不可是A-Pose,否則手臂表現將會異常),然後打開工程所在文件夾,新建文件夾 Plugins文件夾,然後將rebocap_unreal_engine_plugin放入到Plugins中,例如新建 testV3工程,那麼整體目錄結構如下:

    pic_left
  2. 重新打開UE將會自動編譯【釋放的是源碼,因此應該兼容所有版本】

    二次開發和調試插件可以使用Rider直接打開 [name].uproject 即可開發和輕鬆調試。

    可以使用Rider編譯,查看編譯錯誤。如果使用UE自動編譯,出現錯誤請查看Saved/Logs/[name].LogUE輸出的Log一般會存在中文編碼問題,可能需要調節系統編碼為UTF-8才能正常查看。

  3. 骨骼綁定步驟

    • 點擊人物資產 骨骼網絡體 【英文版本是: Skeleton Mesh】,右鍵新建動畫藍圖,雙擊編輯動畫藍圖。【不清楚的建議結合視頻來看】
    • 右鍵搜索 Rebocap,選擇 Rebocap Body Pose並創建節點,並將節點的右側小人連接到輸出姿態的Result
    • 在藍圖編輯頁面左下角的變量這裡點擊加號新建變量,變量類型需要搜索,搜索 Rebocap,選擇 RebocapMapData,類引用,然後將變量拖入到藍圖中剛剛創建的節點 RetargetAsset 中,會自動產生一個變量節點。然後點擊左上角的 編譯按鈕
    • 單擊剛剛新建的變量節點,然後在右側的默認值中,點擊加號,新建一個Map資產,會自動跳轉到一個新的頁面,在新的頁面中,需要用戶自行填寫骨骼映射。注意,建議24個節點都填寫,大家可以根據Avatar的骨骼名稱,來進行填寫。

      骨骼名稱可以在藍圖頁面點擊上方一欄中第一個淺藍色的骨架小人,可以自動選擇骨骼,查看每個骨骼對應的點位。Rebocap中24個節點的點位就是標準的人體骨骼點位,這裡Rebocap中骨骼的名稱是以骨骼骨頭起點命名。比如VRM中,命名為 LeftUpperLeg的骨頭,起點是屁股那裡,所以在Rebocap中的命名就是L_HipLeftFoot的起點是腳踝,所以對應的命名是L_AnkleRebocapL_Foot對應的是腳趾那裡。在UE的命名體系中一般稱為 ball

      L Collar 左肩的骨骼

      L Shoulder 左邊上臂的骨骼

      L Elbow 左邊下臂的骨骼

      L Wrist 左手手掌的骨骼

      L Hand 左手中指的骨骼【不會驅動】

      如果骨骼較多,可以選擇適當的位置來進行選擇,比如脊柱如果有6根,那麼可以錯開挑選其中的三根。

    • 回到剛剛的藍圖頁面(已經選好的骨骼映射需要保存並且編譯才會生效),選擇變量節點的值為剛剛新建的 Map 資產。

    • 再次編譯,查看Warning,一般Warning只會有3個,如果某個骨骼map填寫錯誤,會報warning提示某根骨骼沒有找到
    • 關閉動畫藍圖編輯窗口,點擊頂部 窗口->虛擬製片->Live Link,然後選擇 源->Rebocap Source->connport是端口號,如果Rebocap中的廣播端口號改了這裡需要修改】,如果Rebocap客戶端打開,connectok 狀態,否則是 bad 狀態。另外,用戶只有進行動作校準以後才會開始廣播數據。
 <div align="center">
 <img src="../../img/ue_plugin/ue2.png" alt="pic_left" width="80%">
 <img src="../../img/ue_plugin/ue3.png" alt="pic_left" width="80%">
 </div>
  1. 代码说明

主要动作控制相关代码在Source\rebocap\Private\rebocap_pose_node.cpp中,其它属于外围相关代码例如dll调用和livelink。其中,Init_Foot_Vertices_And_SkeletalData 函数用于获取人物的默认骨架位置以及 vert 点位,计算双脚脚底用于地面接触的6个点【每只脚6个】,由于是自动计算可能不够精确,用户可以自行找到脚底的6个点位传参进去可能会更精确。

PS:脚比较大的可能会导致人物上下震荡,举一个极端的例子,比如2米的大长脚,人物也只有2米,踮脚然后落地,如果需要保持脚尖接触地面,肯定人物就会上下起伏。

视频操作演示

这里没有声音,临时使用,后续会更像

Meta Human 修改为 Tpose

下边是视频教程和对应所需转换Tpose文件打包,请根据视频操作即可。转换文件目前仅仅适用于 UE5.3,其它版本后续补上。

下载

results matching ""

    No results matching ""