UE 插件下載

下邊是下載連接,UE查看源代碼開發,可自行編譯,目前插件值適用於 UE5 版本。

ue plugin source

ue 5.1 plugin prebuild

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米,踮脚然后落地,如果需要保持脚尖接触地面,肯定人物就会上下起伏。

對於需要打包的開發者,可以下載最新版本的插件(以前版本打包後無法運行),在 runtime 模式下增加了 livelink 連接管理,可以參考 Plugins/rebocap_unreal_engine_plugin/Source/rebocap_runtime/Private/RebocapLivelinkManagerDemoWidget.cpp 文件中的 ConnectLiveLinkDisconnectLiveLink 方法自行實現,如果需要關閉插件自帶 UI,可以修改 Plugins/rebocap_unreal_engine_plugin/Source/rebocap_runtime/rebocap_runtime.Build.cs,註釋掉 USE_REBOCAP_LIVELINK_MANAGER_DEMO 這裡的宏定義後自己編譯即可。建議插件放入自己工程的開發者,請自行增加 UI 管理 livelink 的連接。

對於 runtime 模式(standalone or game mode,也就是打包後運行),由於暫時還沒有找到 runtime 模式下獲取 mesh 頂點的方法,因此打包以後,自動骨骼註冊不包含腳底,腳底的表現會比 Editor 模式下差一點點,未來會解決這個問題。

如果你在 Editor 中使用 livelink 連接,可能會導致 livelink 通道佔用導致 game 模式下無法連接成功,建議重啟 Editor 後嘗試。

视频操作演示

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

Meta Human 修改为 Tpose

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

下载

results matching ""

    No results matching ""