CGBoxの一部の記事にはアフィリエイト広告が含まれております。
【Live2D】髪揺れを滑らかに!物理演算の設定を完全解説
こんにちは。
さて今回は物理演算についてです。
Live2Dの公式ページでも物理演算について簡単に解説していますが、実際に作りながら、もう少し詳しく解説していきます。
今回は髪揺れをサンプルに、物理演算に関して解説していきますね!
まずはグループを追加しよう
まず最初に髪揺れ用のグループを設定していきます。
今回はこのようにグループを作ります。名前は自由に決めて大丈夫です。
入力プリセットを設定
入力プリセットは髪の場合、頭に追従して動くので、頭入力にします。
もし胸揺れなどの場合は胸に、腕を揺らすなどの場合は胴体に入力プリセットをセットすればいいと思います。
物理モデルのプリセットを設定
物理モデルのプリセットは「髪 2段振り子」を選択します。
これはどのようにモデリングしたかによって異なります。
今回のモデルは2つのパラメータに変形パスとデフォーマを使って、髪揺れを作りました。
振り子の数=パラメータの数と考えて大丈夫です。
変形パスとデフォーマで作る方法は万能かつハイクオリティに作れる方法なので、おすすめです。
作り方はこちらの記事を参考にしましょう。
パラメータは2つなので、その場合は「髪 2段振り子」を選択します。
スキニング作った場合は10段振り子
スキニングで作った場合はパラメータが複数個生成されるので、10段振り子を選択しましょう。
もし10個以上のパラメータが生成されている場合は20段振り子にしましょう。
入力と出力の設定
次に入力設定と出力設定を調整していきます。
まずは入力設定です。結論からいうと、髪揺れの場合、ここは調整する必要はそこまでありません。
簡単に解説していきますね。
入力の正規化
まず、入力の正規化は角度のみ調整すれば大丈夫です。
入力の正規化は言葉で説明するのが難しいですが、髪揺れの場合はどの方向に髪の毛を垂らすか(重力の方向)を調整できます。
角度-180の場合
10の場合
角度Zに髪の垂らす方向の調整をしている場合、ここはデフォルトのままで大丈夫でしょう。
今回角度Zで髪の垂れを調整しているので、デフォルトのままにします。
位置Xに関してはいじらなくても大丈夫です。
入力・種別・影響度
こちらもデフォルトのままだとこのように設定されています。
それぞれの項目を解説するとこんな感じです。
入力 | 髪揺れをどのパーツに追従させるかを決める |
種別 | 髪揺れが反応するのはパーツの位置か角度かを決める |
影響度 | 髪揺れをどれくらい追従させるかを決める |
ここはわかりずらい部分ではありますが、なんとなくいじっていく中で、感覚としてつかめてくると思います。
Facerigでは体の回転XYが反応しない
Facerigでは体の回転XYは反応しません。
なので、Facerigモデルの場合は以下のように設定します。
体の回転Xを消し、角度Yに変更してください。
こうすれば、Facerigではすべてのパラメータが反応するようになります。
出力の設定
出力の設定ではどのパラメータを反応させるかを決め、調整することが可能です。
今回の場合、髪を揺らすので、髪揺れを作った2つのパラメータを選択します。
ここの数値も基本はデフォルトのままで大丈夫ですが、揺れやすさを倍率で調整することがあります。
ただ、この後説明する物理モデル設定でもこれは調整可能なので、とりあえずはデフォルトのままでいいと思います。
Facerig用モデルでスキニング
Facerig用のモデルかつスキニングで髪揺れを作った場合、倍率を大きくする必要があります。
これはスキニングによって生成されるパラメータ範囲が-45~45になることが原因です。
もし、スキニングで髪揺れを作った場合は倍率調整をしましょう。
詳しくは以下の記事を参照してください。
物理モデル設定
最後に物理モデル設定です。
これは振り子の揺れ方を調整できます。
物理演算はこちらの数値を重点的にいじっていく形になります。
それぞれ数値ごとで解説していきますね。
長さ
振り子の長さはそのままで、長さの調節です。
コチラでは揺れやすさ・揺れの速さを調整可能です。
長ければ長いほど揺れにくく、短ければ短いほど揺れやすくなります。
揺れ方は長いほどゆっくり、短いほど早く揺れます。
振り子の長さ | 長い | 短い |
揺れやすさ | 揺れにくい | 揺れやすい |
揺れ方 | ゆっくり | 早い |
揺れやすさ・揺れの速さはともに後述する数値で調整可能なので、こちらはデフォルトのままでも、個人的には問題ないかと思います。
ただ、今回の場合のように複数段で設定している場合は段々と短くすると、綺麗に揺れると思います!
揺れやすさ
コチラは振り子の揺れやすさ調整です。
数値が大きいほど揺れやすく、小さいほど揺れにくくなります。
この数値はちょっと変えると、揺れ方が結構変わるので、大体0.8~0.95あたりに収めておけばいいと思います。
今回は0.9と0.8に設定していきます。
反応速度
こちらは振り子の反応速度を調整できます。
数値が大きいと髪揺れがスピーディに、数値が小さいとゆっくりと揺れます。
固い髪を表現したい場合、数値を大きくするといい感じになります。
ボブや長い後ろ髪など、ゆったりとした揺れを表現したい場合、数値を小さくすればいい感じになります。
今回はゆったりと揺れる表現にしたいので、0.5と小さめの数値にしてみました。
収束の速さ
こちらは振り子の揺れが収まる早さを調節できます。
大きいほど早く、小さいほどゆっくり揺れが収まってきます。
ゆったりと揺らしたいので、こちらも少し小さく1.5に設定します。
揺れを確認しよう!
これですべての設定が完了です。
デモ画面上で、ドラックするとモデルを動かすことができるので、髪の動きを確認します。
今回の物理演算の設定で、前に垂れた髪を設定しました!
ここで、揺れ方が思った感じと違う場合、各自設定を変更しながら調節してください。
グループを複製しよう
最後に作業効率化できる複製に関して解説します。
違うパラメータだけど同じ揺れ方を設定したい場合、グループを複製すると同じ設定にできます。
複製の仕方は簡単で、複製したいグループを複製します。
複製したグループの名前を設定します。
後は出力設定で、同じ揺れにしたいパラメータを選択すれば完了です。
例えば、横髪を複数設定している場合はこのやり方で作業効率化できますので、ぜひやってみましょう。
物理演算は好みによって様々
物理演算は好みによって設定の仕方はそれぞれです。
また、イラストによっても変える必要になるでしょう。
これは作っていく中で、最適な物理演算もだんだんわかっていくと思うので、どんどん揺れものを作ってみましょう!
髪揺れの色んな作り方を知ろう!
物理演算設定で一番大切なのは「髪揺れ」です。
どんなモデルでも、髪揺れは作ることになりますし、髪揺れをモデルに合わせてきれいに作れれれば、その分魅力もアップします!
髪揺れの作り方は色んな方法があるので、知りたい人は以下の記事を参考にしてみてください。
物理演算は工夫次第!
物理演算は工夫次第で色んな使い方ができます。
例えば、顔の動きに体の動きを追従させたりもできます。
他にも呼吸に物理演算を設定することで、アイドリングモーションを作れたりもします。
他にも工夫次第で色んな使い方ができるので、ぜひ色々試してみましょう!