00:00 / 00:00

Persona

追蹤

適用於Live2DVRM

Persona 可接收行動裝置應用程式透過區域網路傳送的 ARKit 臉部追蹤資料,並逐影格將資料映射至 Live2D 模型的參數,或 VRM 虛擬形象 的表情與骨骼。臉部追蹤由行動裝置即時計算。

行動裝置須符合所選追蹤應用程式的硬體需求,並與執行 Persona 的電腦連接至同一個區域網路。

此外,亦可直接使用電腦連接的 攝影機 追蹤臉部、手部與身體姿態,或透過 麥克風 驅動口型同步。

Persona 支援同時啟用多個追蹤來源。每個來源均可獨立指派給場景中的一個或多個虛擬形象。例如,多位使用者可各持一台手機,在同一台電腦(或透過 VPN 連線)分別驅動各自的虛擬形象。

追蹤來源

追蹤位於 控制面板 左欄,與目前選取的圖層無關。追蹤來源屬於應用程式全域設定,切換場景後依然保留。

面板由上而下依序為:

  • 臉部追蹤:啟用臉部追蹤總開關與臉部來源清單,預設包含一個 LAPLACE Persona Tracker 來源。
  • 姿勢追蹤 適用於VRM:啟用姿勢追蹤總開關與姿勢來源清單,支援 VMC 與 mocopi 來源,預設包含一個 VMC Protocol 來源。場景中沒有 VRM 形象時,此處會顯示提示。
  • 本機 IP 位址:列出本機區域網路位址的卡片,供填入手機端追蹤應用程式。
  • 攝影機追蹤:以電腦攝影機追蹤臉部、手部與身體,擁有獨立開關。詳見 攝影機追蹤。
  • 口型同步:以麥克風音訊驅動嘴部動作。詳見 口型同步。
  • 控制器:遊戲控制器映射。詳見 控制器。

每個總開關控制對應通道的網路資料接收,開關旁顯示該通道的彙總狀態。每個來源以一張卡片呈現,顯示應用程式圖示、名稱、即時狀態與開關。攝影機卡片沒有自己的開關,由所在區塊的啟用攝影機追蹤開關控制。

點選來源卡片可展開其設定面板:

欄位說明
類型追蹤來源使用的協定類型(唯讀),重新命名後仍可透過此欄位辨識
名稱自訂顯示名稱;留空時顯示協定預設名稱
追蹤器 IP臉部來源專用。指定特定追蹤器的 IP 位址;留空時接收任意追蹤器的資料
連接埠iFacialMocap、LAPLACE Persona Tracker、VMC 與 mocopi 來源專用。該來源接收資料的監聽連接埠,新增的來源會自動選用第一個空閒連接埠。若與現有來源衝突將自動還原為原值;僅同類 iFacialMocap 來源或同類 LAPLACE Persona Tracker 來源之間支援共用連接埠

各來源清單末尾的新增臉部來源…與新增姿勢來源…卡片可為對應通道新增任一支援的協定。設定面板底部的移除來源可刪除目前來源。

為追蹤來源指派虛擬形象

點選來源卡片上的指派虛擬形象按鈕會開啟多選清單。勾選該來源需要驅動的形象,或點選全選勾選清單中的所有形象。清單只列出該來源所屬通道能夠驅動的形象,因此姿勢來源只列出 VRM。

攝影機來源卡片則提供臉部、身體與手部三個按鈕,每個通道一個,詳見 攝影機追蹤。

在同一通道內,每個虛擬形象只能指派給一個追蹤來源。已指派給其他來源的形象會標示為「由〈某某〉追蹤」。勾選這樣的形象會彈出重新指派追蹤確認對話方塊,列出所有受影響的形象;確認之前不會進行任何轉移。

單一來源可同時驅動多個虛擬形象,並向每個形象傳送完全相同的追蹤資料,適合用一台手機同步控制雙形象。

各虛擬形象的詳細資訊面板中也有追蹤區塊,用於只屬於該形象的設定:Live2D 模型整體移動、控制器移動 與麥克風口型同步。麥克風口型同步決定麥克風何時接管該形象的嘴部動作,詳見 口型同步。由哪個網路來源或攝影機驅動該形象,則只在來源卡片中指定。

總開關與來源開關

追蹤來源卡片的狀態受兩層控制制約:來源本身的開關,以及該通道的總開關(啟用臉部追蹤或啟用姿勢追蹤)。任一開關處於關閉狀態時,該列狀態均顯示為 off;僅當兩者同時開啟時,卡片才會顯示來源的即時連線狀態。

此設計便於使用者暫時停用單一裝置,或在無需逐一調整各來源的前提下一鍵切斷整條通道的資料接收。

支援的協定

各協定的具體設定步驟與傳輸原理詳見對應文件:

若需同時使用多個相同協定的來源,請在各卡片的追蹤器 IP 欄位中填入對應手機的區域網路 IP 位址。未填寫 IP 的來源將自動接收尚未指派給其他同類來源的傳送方資料。如需用兩台手機分別驅動兩個不同形象,請為每個來源明確綁定各自對應的 IP 位址。

各來源提供的資料

三種臉部追蹤協定均完整傳輸全部 52 個原始 ARKit blendshape、頭部旋轉與位置資料,並原生支援 VRM 完美同步 (perfect sync)。輸入推導、眨眼鎖存與睜眼校正統一由 Persona 負責處理。下表比較各協定在連線流程、傳輸格式與資料精度上的差異:

維度3rd Party UDPiFacialMocap / Facemotion3dLAPLACE Persona Tracker
連線流程Persona 傳送廣播請求,手機透過 UDP 回傳資料Persona 傳送連線請求,手機應用程式開始傳輸資料手機端自動探索回應請求的電腦,支援清單點選
設定方式在手機應用程式內開啟第三方串流在手機應用程式內手動填入電腦的區域網路 IP點選連線選取目標電腦;亦可手動輸入 IP 位址
連接埠請求傳至 21412,資料回傳至暫時連接埠4998319700(雙向收發共用)
權重精度JSON 浮點數量化為 0–100 整數(間隔為 1%)Float32
資料格式JSON,每影格約 2.6 KB,依欄位名稱解析純文字,每影格約 950 位元組,逐段解析二進位,每影格 248 位元組,52 個權重依固定位移儲存
影格順序處理無序號,較舊的影格可能覆蓋較新的追蹤資料無序號,較舊的影格可能覆蓋較新的追蹤資料內建序號,自動捨棄過期延遲影格
協定開發者VTube StudioiFacialMocapLAPLACE(統一開發行動應用程式、桌面端與協定)

對於增益倍率較大的通道,整數量化的階梯效應會更加明顯。例如,Persona 對嘴角下垂訊號預設套用 5 倍增益,1% 的輸入跳動在放大後可能引起肉眼可見的表情跳變。

LAPLACE Persona Tracker 還支援一鍵校正,且會自動保存校正資料。內建省電模式可調暗螢幕,預覽介面採用臉部線框渲染以避免顯示攝影機原始畫面。詳見 LAPLACE Persona Tracker。

這 52 個原始數值亦以獨立的 ARKit* 輸入形式暴露在 參數繫結 編輯器中。Live2D 模型既可使用 Persona 經平滑處理的推導輸入,也可直接繫結手機原始 blendshape 數值,或將兩者搭配使用。

攝影機 的臉部追蹤從影像畫面中推導出同等的頭部姿態與 blendshape 資料,僅缺少 tongueOut(吐舌)。

狀態

每張來源卡片上的狀態標籤,以及各總開關旁的彙總狀態,即時反映目前的連線與資料狀態:

狀態說明
off該來源本身或所屬通道的總開關已關閉
waiting…已啟用,但超過 1.5 秒未收到任何資料
tracking正在接收有效資料影格且人臉辨識正常
no face持續接收到資料影格,但行動裝置攝影機未辨識到人臉

單一來源狀態用於排查對應硬體裝置的連通性,總開關旁的彙總狀態則反映整條通道是否有資料流入。

攝影機來源沿用相同的狀態標識,但只要任一已啟用的偵測任務(臉部、手部或身體)命中即顯示 tracking,詳見 攝影機追蹤。臉部追蹤與姿勢追蹤的彙總狀態僅統計網路來源。

追蹤資料如何抵達模型

追蹤資料進入 Persona 後,依序經過以下三個處理階段:

  1. 接收:接收端將對應協定的網路封包解析為中立的資料影格,包含頭部旋轉、頭部平移位置與 52 項 ARKit blendshape。後續兩個階段將對指派給該來源的每個虛擬形象獨立執行。
  2. 推導:資料影格被轉換為 VTube Studio 的標準輸入詞彙,即模型製作者通常使用的參數訊號名稱(如 FaceAngleX、EyeOpenLeft、MouthSmile、Brows 等)。與此同時,52 個原始 ARKit 通道以 ARKit* 為字首原樣並列提供,不經過鎖存、校正或增益處理。
  3. 映射:若虛擬形象設定了逐輸入 輸入校正,原始輸入值會先重新映射至其原生量程。隨後,每條 參數繫結 將一個或多個輸入加權求和,依序經過輸入範圍重新映射、輸出範圍限定、回應曲線與逐參數平滑,最終寫入目標 Cubism 參數。

頭部旋轉、側傾、眨眼與開合、視線凝視、眉毛形態、鼓腮、張嘴幅度、嘴型以及微笑/撇嘴等均可被驅動。模型未包含的參數自動跳過;若目前影格未包含某參數的資料,該參數將平滑釋放回預設姿態,而非凍結在上一影格數值。

使用 iPhone(ARKit)臉部追蹤時,撇嘴與明顯的噘嘴都會降低 MouthSmile,帶動嘴型參數 ParamMouthForm 朝 −1 變化。

自帶映射的模型

適用於Live2D

若 Live2D 模型根目錄附有 .vtube.json 設定檔,Persona 將直接沿用該模型特有的映射設定(包括參數映射配對、範圍限制、增益倍率與平滑係數),而非使用內建預設集。即便原作者反轉了雙眼繫結、加倍了睜眼範圍或採用了非標準參數名稱,模型在 Persona 中的動態表現也將與 VTube Studio 完全一致。

未附帶 .vtube.json 的模型則採用 Persona 的內建映射表,這套設定已根據大量真實 ARKit 動作追蹤樣本微調最佳化。

VBridger 參數

適用於Live2D

VBridger 是一個運算式引擎:使用者自行編寫計算公式,每個輸出參數由 1 至 3 條基於 52 項 ARKit 形狀的運算式構成。社群通用的「標準」是隨軟體附帶的 VBridger_AdvancedARKit_V3.0 預設集。該預設集新增了 VTube Studio 內建輸入清單中沒有的參數,例如 MouthPucker、MouthFunnel、MouthShrug、MouthPressLipOpen 以及 6 項 Body* 輸入,它們在執行時由 VBridger 外掛注入。

因此,Persona 不把這些名稱當作獨立的輸入。從 .vtube.json 匯入繫結 時,Persona 會把每個名稱展開為 VBridger 預設集中定義的加權求和公式:

  • MouthPucker 展開為 (mouthDimple_R + mouthDimple_L) × 2 − mouthPucker,噘嘴時為負值。
  • 6 項 Body* 參數與對應的 FaceAngle*、FacePosition* 採用相同公式。

展開後,它們在繫結編輯器中顯示為一般的加權多輸入繫結,每個權重都可以調整。

MouthOpen 與 JawOpen 是兩個獨立的輸入:MouthOpen 表示嘴唇張開的程度,JawOpen 表示下顎下垂的幅度,對應 VBridger 模型中常用的 ParamMouthOpenY 與 ParamJawOpen 組合。JawOpen 的數值與 ARKitJawOpen 完全相同,兩個名稱在繫結中可以互換使用。

模型位置移動

適用於Live2D

身體前傾或後仰會連動驅動整個虛擬形象的舞台位移,而非改變模型內部的繫結參數:模型隨頭部空間位置的水平與垂直位移進行平移,並隨著人物靠近或遠離攝影機自動縮放。該表現與 VTube Studio 內建機制一致,包含其預設的移動幅度與平滑濾波,並可透過 .vtube.json 中的 ModelPositionMovement 區段實現逐模型個人化設定。

VRM 虛擬形象

臉部追蹤來源同樣可以直接驅動 VRM 虛擬形象,差異僅在於管線最後一步由表情與骨骼接管,而非寫入 Cubism 參數。

製作了全部 52 個 ARKit blendshape 表情的模型(即 perfect sync / 完美同步)會跳過輸入推導,直接由手機原始 ARKit 權重 1:1 驅動,保留細膩的臉部細節。表情名稱比對不分大小寫,以相容不同的命名習慣。若部分或全部 ARKit 形狀僅存在於網格形態鍵而未註冊為 VRM 表情,只要模型總共集齊全部 52 個形狀,Persona 也會在載入時自動補齊缺少的 VRM 表情。

只涵蓋一部分不算完美同步:52 個表情中只有 51 個的模型會退回至下文的通用映射。模型資訊 中的完美同步一列會顯示實際比對的數量。

對於未實作 perfect sync 的模型,推導訊號將映射至模型的預設表情與標準骨骼:

  • 嘴部:張嘴、撮口、噘嘴與微笑複合映射至 VRM 母音口型表情(aa、ih、ou、oh),各形狀之間內建互斥約束演算法,避免出現不自然的口型重疊。
  • 眼部:優先使用獨立的分離式左/右眼眨眼表情;若模型未提供分離表情,則退回至全域合併眨眼。
  • 頭部:偏航 (Yaw)、俯仰 (Pitch) 與翻滾 (Roll) 旋轉,部分旋轉分量會智慧分攤至脊椎與胸部骨骼,呈現自然的軀幹跟隨轉動效果。
  • 視線:透過 VRM 標準 look-at 系統驅動眼球朝向,自動相容骨骼驅動與表情變形驅動兩種實作。

與待機動畫的切換機制

追蹤功能處於啟用狀態時,動作追蹤資料優先接管形象控制權,並自動暫停待機動畫中的自動眨眼邏輯。關閉追蹤後,形象立即恢復完整的待機表現。

追蹤資料意外中斷時形象如何表現,由各形象待機面板中的追蹤遺失時選項決定:

  • 保持最後姿勢(預設):將形象凍結在最後一個有效追蹤影格上。
  • 回到待機:平滑過渡回待機循環動畫。

無論選擇哪種,眼部控制都會被釋放,在追蹤恢復前照常自動眨眼。Live2D 模型還可以指定一段補位動作,詳見 追蹤遺失時。

無需校正

Persona 的手機臉部追蹤管線不提供中性姿態校正,其設計理念與 VTube Studio 的 ARKit 模式一致:系統直接採用行動裝置回報的絕對頭部姿態四元數。建議將手機置於正對自身、高度大致與視線齊平的位置;若手機擺放位置過低,模型可能會呈現持續抬頭的仰角姿態。

上述規則僅針對手機臉部追蹤來源;若使用電腦 攝影機,則可在 Persona 介面內執行本機姿態校正。此外,也可在參數繫結編輯器中依需求對單一輸入執行 輸入校正,以適配個人的表情或動作幅度。

攝影機追蹤

攝影機追蹤利用電腦配備的攝影機完成臉部、手部與身體姿態追蹤,由獨立的啟用攝影機追蹤總開關管理。每個虛擬形象的臉部、身體與手部資料可分別來源於不同的追蹤來源,因此攝影機常用於在手機臉部追蹤和獨立動作追蹤套件的基礎上補充手部追蹤。詳見 攝影機追蹤。

口型同步

口型同步利用麥克風音訊輸入驅動虛擬形象的嘴部動作,系統支援為每支麥克風獨立儲存音訊校正設定。各虛擬形象詳細資訊中的麥克風口型同步可設定為關閉、一律或臉部追蹤無法使用時。詳見 口型同步。

控制器

連接標準遊戲控制器(如 Xbox、PlayStation 或 Switch Pro 控制器),可將搖桿與按鍵映射為 Live2D 參數繫結、舞台移動、快速鍵觸發、VRM 骨骼與表情控制,支援多套獨立設定方案與組合鍵繫結。詳見 控制器。

疑難排解

狀態持續顯示為「waiting…」

  • 確認手機與電腦處於同一區域網路內,且路由器未開啟 AP 隔離或裝置間存取限制(公共 Wi-Fi 與訪客網路通常預設阻斷區域網路通訊)。
  • 檢查作業系統防火牆,確保已放行 Persona 的傳入 UDP 流量。
  • 中斷所有 VPN 代理連線。虛擬網路卡常會劫持或丟棄廣播封包。雖然 Persona 會在每張實體網路卡上定向傳送子網路廣播,但部分 VPN 路由策略仍會徹底阻斷此類流量。

若廣播確實無法穿透網路環境,可在啟動 Persona 前透過環境變數直接指定手機 IP:

環境變數說明
PERSONA_VTS_PHONE_IP在常規子網路廣播之外,向該特定 IP 額外傳送 VTube Studio 探索訊號封包
PERSONA_IFM_PHONE_IP針對 iFacialMocap / Facemotion3d,完全略過網路廣播探索,直接與該指定 IP 建立通訊

彈出「無法使用連接埠」通知

該連接埠已被其他應用程式佔用,或被系統保留(Windows 會為 Hyper-V、WSL2 與 Docker 保留部分連接埠區段,可執行 netsh interface ipv4 show excludedportrange protocol=udp 檢視)。請在對應來源卡片的連接埠欄位中改用不在所列範圍內的連接埠,並在追蹤應用程式中填入相同的連接埠。同一類來源的失敗連接埠會合併在一則通知中;連接埠恢復可用或不再被任何已啟用的來源使用後,通知將自動撤回。

模型產生動作,但回應部位與實際動作不符

檢查模型目錄下是否包含 .vtube.json 設定檔。Persona 會優先採用其中的映射規則。可嘗試在 VTube Studio 中載入該模型,排查對應參數的表現是否一致。

部分參數始終不產生動態

在主介面展開該模型的資訊面板,檢視辨識到的參數總數。使用了非標準命名參數的模型,或沿用舊版 Cubism 2 規範的歷史模型,可能會導致系統推導出的標準訊號無法找到比對的目標參數。

模型完全無動態,但狀態列顯示為「tracking」

開啟對應來源卡片上的指派虛擬形象清單,確認已勾選該形象。收到資料影格後,還需將模型指派給該追蹤來源才會驅動。每個形象在同一通道內只能指派給一個來源,請一併確認該形象是否已被其他來源使用。

接入兩台手機,但控制的卻是同一個虛擬形象

若兩個來源卡片的追蹤器 IP 均處於留空狀態,先到達的資料封包將被任意閒置來源捕獲。請為每個來源卡片明確填入對應手機的區域網路 IP 位址,確保資料流準確分發給目標形象。

最後更新於 2026年11月3日

Tech otakus destroy the world