表情機能を使用する
最終更新: 2019年9月4日
このページでは、CubismのモデルにExpressionを利用して表情を再生させる手順を説明します。
以下は「SDKをインポート」「UpdateControllerの設定」「操作する値の保存/復元を行う」を行なったプロジェクトに追加することを前提としています。
概要
Live2D Cubism SDK for Unityで.exp3.jsonによって表情を再生させるには、「Expression」というコンポーネントを利用します。
Unityエディターメニューの「Live2D/Cubism/OrignalWorkflow/Should Import As Original Workflow」にチェックを入れた状態でインポートしたモデル
である場合、生成されるPrefabにはExpressionが設定されます。
OW方式で生成されていないPrefabにExpressionを設定する場合、以下の3つの手順を行います。
- CubismExpressionControllerをアタッチ
- 「[モデル名].expressionList」を設定
- 再生する表情を設定
1. CubismExpressionControllerをアタッチ
モデルのルートとなるGameObjectに「CubismExpressionController」をアタッチします。
CubismExpressionControllerには、設定項目が2つあります。
- Expression List:「モデル名.expressionList」を設定 ※詳細は手順の2で説明
- Current Expression Index:再生する表情のインデックスを設定 ※詳細は手順の3で説明
2. 「モデル名.expressionList」を設定
モデルを選択し、InspectorビューからCubismExpressionControllerの「Expression List」に、「[モデル名].expressionList」をドラッグアンドドロップします。
※「[モデル名].expressionList」は「.exp3」アセットをリストにまとめたアセットです。
※「.exp」アセットはExpressionのデータが保存されているアセットです。「.exp3.json」がインポートされたときに自動生成されます。
3. 再生する表情を設定
再生する表情のインデックスをCubismExpressionControllerの「Current Expression Index」に設定します。今回は0に設定します。
以上でexp3.jsonから生成したexp3アセットを利用して表情を再生する設定は完了です。
この状態でSceneを実行すると、「[モデル名].expressionList」の0番の表情が再生されます。
「Current Expression Index」を再設定することで再生する表情を切り替えることができます。
※ 「[モデル名].expressionList」以外のインデックスが設定された場合、デフォルトの表情が再生されます。