Unity+Whisper+OpenAI+VOICEVOXのセットアップ
Unityを使ってAIキャラクターと対話するプロジェクトを作る際の準備について自分備忘録としてメモしました。
VRM最新バージョン(2024.8.19現在)の仕様が変わったため、uLipSyncなどのライブラリを入れる順番に気を付ける必要が出てきました。
具体的なコードについては参考部分をリンクしました。
準備
1.PackageManagerから「Burst」をインポートする
2.VRM0.xを使うので、PackageManagerから以下2つをインポートする
(2024.10.9現在ではVRMv0.125.0推奨。それより上のバージョンだと揺れモノがおかしくなることがある)
3.PackageManagerから以下のURLを入力し、口パク用ライブラリの「uLipSync」をインポートする
「https://github.com/hecomi/uLipSync.git#upm」
4.「Samples」の「00.Common」と「04.VRM」をインポートする
5.以下から「UniTask.2.5.5.unitypackage」をダウンロードし、インポートする
6.uLipSyncの「04-1. VRM 0.X」シーンをダブルクリックして開く
7.「uLipSync-VRM0」PrefabをAssetsフォルダにドラッグ&ドロップし、新しくPrefabを作る
8.VRMキャラクターをインポートする
9.表情変化のアニメーションをスムーズにするため、以下からUniRxをダウンロード&インポートする
10..PackageManagerから以下のURLを入力し、インポートする「com.unity.nuget.newtonsoft-json」
11.新しくシーンを開き、VRMキャラクターを配置する
VOICEVOX 話者ID一覧(2024.8.20時点)
・話者: 四国めたん, スタイル: ノーマル, ID: 2
・話者: 四国めたん, スタイル: あまあま, ID: 0
・話者: 四国めたん, スタイル: ツンツン, ID: 6
話者: 四国めたん, スタイル: セクシー, ID: 4
話者: 四国めたん, スタイル: ささやき, ID: 36
話者: 四国めたん, スタイル: ヒソヒソ, ID: 37
話者: ずんだもん, スタイル: ノーマル, ID: 3
話者: ずんだもん, スタイル: あまあま, ID: 1
話者: ずんだもん, スタイル: ツンツン, ID: 7
話者: ずんだもん, スタイル: セクシー, ID: 5
話者: ずんだもん, スタイル: ささやき, ID: 22
話者: ずんだもん, スタイル: ヒソヒソ, ID: 38
話者: ずんだもん, スタイル: ヘロヘロ, ID: 75
話者: ずんだもん, スタイル: なみだめ, ID: 76
話者: 春日部つむぎ, スタイル: ノーマル, ID: 8
話者: 雨晴はう, スタイル: ノーマル, ID: 10
話者: 波音リツ, スタイル: ノーマル, ID: 9
話者: 波音リツ, スタイル: クイーン, ID: 65
話者: 玄野武宏, スタイル: ノーマル, ID: 11
話者: 玄野武宏, スタイル: 喜び, ID: 39
話者: 玄野武宏, スタイル: ツンギレ, ID: 40
話者: 玄野武宏, スタイル: 悲しみ, ID: 41
話者: 白上虎太郎, スタイル: ふつう, ID: 12
話者: 白上虎太郎, スタイル: わーい, ID: 32
話者: 白上虎太郎, スタイル: びくびく, ID: 33
話者: 白上虎太郎, スタイル: おこ, ID: 34
話者: 白上虎太郎, スタイル: びえーん, ID: 35
話者: 青山龍星, スタイル: ノーマル, ID: 13
話者: 青山龍星, スタイル: 熱血, ID: 81
話者: 青山龍星, スタイル: 不機嫌, ID: 82
話者: 青山龍星, スタイル: 喜び, ID: 83
話者: 青山龍星, スタイル: しっとり, ID: 84
話者: 青山龍星, スタイル: かなしみ, ID: 85
話者: 青山龍星, スタイル: 囁き, ID: 86
話者: 冥鳴ひまり, スタイル: ノーマル, ID: 14
話者: 九州そら, スタイル: ノーマル, ID: 16
話者: 九州そら, スタイル: あまあま, ID: 15
話者: 九州そら, スタイル: ツンツン, ID: 18
話者: 九州そら, スタイル: セクシー, ID: 17
話者: 九州そら, スタイル: ささやき, ID: 19
話者: もち子さん, スタイル: ノーマル, ID: 20
話者: もち子さん, スタイル: セクシー/あん子, ID: 66
話者: もち子さん, スタイル: 泣き, ID: 77
話者: もち子さん, スタイル: 怒り, ID: 78
話者: もち子さん, スタイル: 喜び, ID: 79
話者: もち子さん, スタイル: のんびり, ID: 80
話者: 剣崎雌雄, スタイル: ノーマル, ID: 21
話者: WhiteCUL, スタイル: ノーマル, ID: 23
話者: WhiteCUL, スタイル: たのしい, ID: 24
話者: WhiteCUL, スタイル: かなしい, ID: 25
話者: WhiteCUL, スタイル: びえーん, ID: 26
話者: 後鬼, スタイル: 人間ver., ID: 27
話者: 後鬼, スタイル: ぬいぐるみver., ID: 28
話者: 後鬼, スタイル: 人間(怒り)ver., ID: 87
話者: 後鬼, スタイル: 鬼ver., ID: 88
話者: No.7, スタイル: ノーマル, ID: 29
話者: No.7, スタイル: アナウンス, ID: 30
話者: No.7, スタイル: 読み聞かせ, ID: 31
話者: ちび式じい, スタイル: ノーマル, ID: 42
話者: 櫻歌ミコ, スタイル: ノーマル, ID: 43
話者: 櫻歌ミコ, スタイル: 第二形態, ID: 44
話者: 櫻歌ミコ, スタイル: ロリ, ID: 45
話者: 小夜/SAYO, スタイル: ノーマル, ID: 46
話者: ナースロボ_タイプT, スタイル: ノーマル, ID: 47
話者: ナースロボ_タイプT, スタイル: 楽々, ID: 48
話者: ナースロボ_タイプT, スタイル: 恐怖, ID: 49
話者: ナースロボ_タイプT, スタイル: 内緒話, ID: 50
話者: †聖騎士 紅桜†, スタイル: ノーマル, ID: 51
話者: 雀松朱司, スタイル: ノーマル, ID: 52
話者: 麒ヶ島宗麟, スタイル: ノーマル, ID: 53
話者: 春歌ナナ, スタイル: ノーマル, ID: 54
話者: 猫使アル, スタイル: ノーマル, ID: 55
話者: 猫使アル, スタイル: おちつき, ID: 56
話者: 猫使アル, スタイル: うきうき, ID: 57
話者: 猫使ビィ, スタイル: ノーマル, ID: 58
話者: 猫使ビィ, スタイル: おちつき, ID: 59
話者: 猫使ビィ, スタイル: 人見知り, ID: 60
話者: 中国うさぎ, スタイル: ノーマル, ID: 61
話者: 中国うさぎ, スタイル: おどろき, ID: 62
話者: 中国うさぎ, スタイル: こわがり, ID: 63
話者: 中国うさぎ, スタイル: へろへろ, ID: 64
話者: 栗田まろん, スタイル: ノーマル, ID: 67
話者: あいえるたん, スタイル: ノーマル, ID: 68
話者: 満別花丸, スタイル: ノーマル, ID: 69
話者: 満別花丸, スタイル: 元気, ID: 70
話者: 満別花丸, スタイル: ささやき, ID: 71
話者: 満別花丸, スタイル: ぶりっ子, ID: 72
話者: 満別花丸, スタイル: ボーイ, ID: 73
話者: 琴詠ニア, スタイル: ノーマル, ID: 74
コード参考リンク
すべてを書くと助長になってしまうので、参考リンクをメモしておきます。