(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

(:3[kanのメモ帳]



体はそのままで顔だけを変えるアニメーション【Unity】


このエントリーをはてなブックマークに追加


この記事でのバージョン
Unity 2019.4.0f1


はじめに

今回はUnityのAnimatorを使って、人型のモデルにアニメーションをさせる際に

体のアニメーションはそのままに、顔だけを変えるアニメーションを実装する方法の紹介です。


イメージとしては以下のような感じ。

f:id:kan_kikuchi:20200611190231g:plain


なお、記事中の3Dモデルは以下のアセットを使っております。

Rin | 3D Humanoids | Unity Asset Store



顔だけのアニメーションを変える方法

さっそく顔だけのアニメーションを変える方法ですが、

Animator上で顔のアニメーションのレイヤー(今回はFace Layer)を作成した後、

そのレイヤーのWeightを1にし、そこで顔用のアニメーションを実行するだけ。

(以下の例ではBase Layerで体のアニメーションを実行している感じ)

f:id:kan_kikuchi:20200611190104j:plain


基本的にはこれで顔だけが変わりますが、

f:id:kan_kikuchi:20200611190231g:plain


顔のアニメーションの方に体の変化も入っていると上書きされてしまう事があります。

f:id:kan_kikuchi:20200611190349g:plain


そんな時はレイヤーのMaskに顔だけしか変化しないマスクを設定すると

簡単に顔だけが変わるようにできます。

f:id:kan_kikuchi:20200611190730j:plain


肝心の顔だけしか変化しないマスクですが、

Unityちゃんのアセットに含まれているので、これを使うのが一番楽かと思います。

f:id:kan_kikuchi:20200611190436j:plain
"Unity-Chan!" Model | 3D Characters | Unity Asset Store


なお、そもそも顔のアニメーションから体の変化を除きたいという場合は

Very Animationというアセットを使うと楽に編集が行えるのでオススメです。


kan-kikuchi.hatenablog.com

Very Animation | Animation Tools | Unity Asset Store