Live2D Cubismでパーツのフェード方法

結論:『Live2Dパーツ表示項目内のパーツのアルファ値をフェードアウトしたい場合は100から0に、フェードインしたい場合は0から100にし、グラフエディタを開き、リニアでフェードの線形補間をかける』


フェードイン・アウトで左腕パーツの切り替え




東北イタコのLive2Dモデルを弄っていたが、複数の腕の種類があり、アニメーションの途中でうまく切り替えたいと思った。
が、なかなかフェードイン・アウトを利用した切り替え方法がわからなかったので、ここに備忘録的に記載する。


最初はフェードイン・アウトなど考えずに普通に切り替えようと思い、アルファ値を普通に表示したいパーツを0から100に、非表示にしたいパーツを100から0に変更するという手をとった。
その結果が下図。見ての通り、ぶつ切りになり、違和感がある。


フェードイン・アウトなしで左腕パーツの切り替え


この状況を改善するためにフェードイン・アウトを導入していく。
先ず、パーツをフェード開始のタイミングで、

  • 既存で表示しているパーツにアルファ値100を振る
  • これから表示するパーツにアルファ値0を振る。

そして、フェード終了のタイミングで、

  • 既存で表示しているパーツにアルファ値0を振る。
  • これから表示するパーツにアルファ値100を振る。


パーツそれぞれにフェード開始と終了のタイミングでアルファ値を振る。
そのあとにグラフエディタを開く


上図のように各アルファ値を振り終えたら、フェードアウトするパーツを選択した状態でグラフエディタを押下する。
グラフ上に0と添字についたポイントを押下し、リニアボタンを押下する。
すると、グラフが下図のように変更される。この斜めになったグラフが徐々にアルファ値が変更されることを示している。


グラフがこのような形になればフェードアウトはOK


フェードインするパーツにも同様の操作を行う。
下図のようになる。


フェードインはこのようになる


以上の設定が全て完了すれば、フェードを利用したパーツの切り替えが完了となる。