Unity SALSA LipSync Suite 教學

Author: Kelvin Huang

SALSA LipSync Suite 是一套支援 Unity 遊戲引擎的嘴型同步與表情模擬插件,提供靈活、高準確度、更先進的動畫技術,適用於角色模型。創造無限的視覺表情和表情傳達。包含 3 個產品模組,簡化嘴型同步、眼神、頭部動作及表情表情專案。音訊對話檔案會透過全新的技術即時處理,減少時序延遲,音訊處理在 2D / 3D 音訊都能同樣有效,無需花太多時間做音訊映射或烘焙,也能得到驚人的效果。

匯入 SALSA LipSync Suite 資源包


若是 URP 專案,可將材質換成 Universal Render Pipeline > Lit 重新設定貼圖。
6321 從範例角色的設定瞭解 SALSA LipSync Suite 使用技巧,嘴形包括 saySmall, sayMedium, sayLarge
6533 除了嘴部動作,透過 Eyes 元件控制眼睛,透過 EmoteR 控制表情
換角色
6535
6535
6536
6537
6538
6539
6550
6551
6552
6555
6556
6557
6558
6560
6568
6580
6588-F
6600-OK
嘴形調整可參考 https://crazyminnowstudio.com/docs/salsa-lip-sync/modules/recommendations/

6602
6602-2
6605-
6606-
6607-
6608-
6609-OK 出現嘴巴打開的情況?
6610-OK 解決方法,選取角色的 FBX 檔案,然後按下 Configure... 按鈕進行組態設定
6616-OK 按下 Head 按鈕進入頭部骨骼對應設定。
6617
6622

為角色新增 SALSA 元件,此時 Rererences 與 Viseme Configuration 顯示黃色,表示需要設定!
展開 References 按下 Add AudioSource 增加音源、按下 Add QueueProcessor 增加序列處理器,全部顯示藍色代表設定完成。
找到 MTH_DEF 物件並可測試 BlendShapes 效果。
設定 Controller Type = Shape 設定 SkinnedMesh = MTH_DEF
設定 Blendshape Index = blendShape1.MTH_A
重複此步驟,依序設定 A/I/U/E/O Viseme 臉部特徵設定。
Preview Display Mode

先設定幾個嘴型之後,可先放入音檔 > 測試嘴型 > 調整觸發值與動態 > 再看看是否再增加嘴形,也可以再決定是否加 EmoteR / Eyes。

1. 設定 Audio Source 音檔 - 在右側 Inspector 往下找到 Audio Source 元件。請設定 AudioClip 放一段語音音檔,勾選 Play On Awake 方便測試。
2. 先按 Play 測試嘴巴是否會動,目前已經完成基本嘴型設定,角色嘴巴應該會依照音量開合。如果完全不動,請檢查 AudioSource 是否真的有播放聲音、SALSA 的 Audio Source 欄位是否仍然連到正確物件、每個 Viseme 裡面的 Shape 是否都有指定正確的 SkinnedMesh / Blendshape Index

SALSA 是透過 AudioSource 進行即時音訊分析,不是逐字比對,所以它的效果主要會依照語音的音量,動態產生近似嘴型。

3. 調整 Trigger 分布 - 現在右側的 Viseme Trigger 大概是:
嘴型 Trigger
A 0.00 / I 0.20 / U 0.40 / E 0.60 / O 0.80

可以先測試,但可能會覺得「嘴型跳太明顯」或「某些嘴型很少出現」。
建議先維持這組設定測試,確認會動之後,再調整成比較自然的分布。
如果說話時嘴巴太小,可以降低後面幾個 trigger;如果嘴巴動太誇張,可以提高 trigger 或降低 Dynamics。

4. Settings 裡先使用 Auto-Adjust
展開 Settings 區塊,先確認是否有 Auto-Adjust Playhead Bias 或類似自動調整選項。
建議優先使用 Auto-Adjust,因為 Playhead Bias 會受到音訊取樣率影響;如果手動調太大或太小,嘴型可能會慢半拍或提前太多。目前只是先做測試,所以建議:

Update Delay:先用預設值
Playhead Bias:先 Auto-Adjust
Sample Size:先預設值
Dynamics:先不要大改

接下來是否要加 EmoteR / Eyes?先不要急著加。官方文件中 OneClick 會同時建立 SALSA、EmoteR、Eyes,但 Unity-Chan 不在官方列出的 OneClick 支援模型清單裡,所以現在這種 手動設定 Viseme 的方式是合理的。建議順序是:
先讓 SALSA 嘴型正常
再加 Eyes,讓角色眼睛與頭部有自然動作
最後加 EmoteR,讓說話時可以出現微笑、驚訝、眨眼、強調表情

官方說明中,SALSA 負責嘴型,Eyes 負責眼睛、眼皮與頭部追蹤,EmoteR 則負責隨機、強調或手動觸發表情。
現在最 先在 Audio Source > AudioClip 放入一段語音,勾選 Play On Awake,然後按 Play 測試嘴巴是否會動。
如果會動,下一步建議可開始調整 A/I/U/E/O 每個嘴型的 BlendShape 強度與 Trigger 值。

========================================================================================

IDA FABER 角色的嘴型調整技巧 (あいうえお)
A / あ 嘴型
HEAD - jawOpen = 60 嘴巴保持開啟
TEETH > jawOpen = 30 牙齒配合嘴巴的張開
TEETH > mouthFunnel = 60

I / い 嘴型
HEAD - mouthStretchLeft = 35 左嘴角向外拉
HEAD - mouthStretchRight = 35 右嘴角向外拉
HEAD - mouthLowerDownLeft = 5 下唇略微下降(選擇性)
HEAD - mouthLowerDownRight = 5 下唇略微下降(選擇性)
HEAD - mouthUpperUpLeft = 5 上唇略微提高
HEAD - mouthUpperUpRight = 5 上唇略微提高
HEAD - jawOpen = 10 嘴巴保持小幅開啟
TEETH > jawOpen = 10 配合嘴巴的小幅張開


U / う 嘴型
HEAD > mouthFunnel = ?
HEAD > mouthPucker = ?
HEAD > jawOpen = ?
TEETH > jawOpen = ?
TEETH > mouthFunnel = ?

E 嘴型
HEAD > mouthFunnel = ?
HEAD > mouthPucker = ?
HEAD > jawOpen = ?
TEETH > jawOpen = ?
TEETH > mouthFunnel = ?

O 嘴型
HEAD > mouthFunnel = ?
HEAD > mouthPucker = ?
HEAD > jawOpen = ?
TEETH > jawOpen = ?
TEETH > mouthFunnel = ?







========================================================================================
注意!以下資訊提供參考,如果只是調整基本嘴形,不需要完全瞭解
========================================================================================
Ida Faber 製作的角色,混合形狀符合 Apple ARKit 的 Facial BlendShapes 規格,Apple 的 Face Tracking 會把臉部表情拆成一系列具名的 Blend Shape coefficients。每個係數以 0.0 - 1.0 表示,0.0 是中性狀態,1.0 則代表 ARKit 所追蹤到的該動作最大程度。這些係數可以拿來驅動 2D/3D 角色臉部動畫。相關文件說明請參考:
https://developer.apple.com/documentation/arkit/arfaceanchor/blendshapes

|SALSA-LipSync-Suite-v2.5.5-K.unitypackage
|EmoteKeyboardController.cs

[ 表情設定 ]

 

Copyright © 2026 CG Digital Corp. All rights reserved.