Unity AssetStoreまとめ

Unityアセットストアで注目すべきイチオシ情報を毎日お届けします!

【Unity真夏のアドベントカレンダー2021】揺れものアセット特集 第二弾!スカートの美しい揺れアニメは日本作家さんの2大アセットで解決!

スポンサーリンク

f:id:assetsale:20210807171708j:plain


この記事は「Unity アセット真夏のアドベントカレンダー 2021 Summer!

8日目の記事になります。

 

前日は、asiramさんの「A* Path Finding Projectでペナルティエリアを作成してみる

明日は、Kakoさんの「ShapesでDOTweenのすゝめ」です。

お楽しみに!

 

はじめに

この記事は、

2021年3月15日リリースされた新作アセット「FluX Dynamic」の紹介記事です。

 

非常に優秀なアセットですので、

この記事がきっかけで話題になってくれたら嬉しいなと思います。

将来的に良きアップデートが来るように応援します!

 

また、1年先にリリースされた「Magica Cloth」はみなさんご存じの大人気アセット

リアルなスカートを直感的に作り込める素晴らしいアセットです。

「違い」についても触れながら解説いたします。

(仕様やセットアップ方法は把握済み)

 

 

第1回記事はこちら

冬のアドベントカレンダー2019「スカートを揺らすアセット探し」

 

「時間が無い人」のために結論を先に紹介

 

どちらも「髪の毛、しっぽ、胸、スカート」などの動きが作れます。

類似するアセットですが、それぞれ特徴が違います。

 

箇条書きで簡単にまとめました。

 

※ 2021年8月8日時点の内容です。

 

FluX Dynamic: hair skirt tail bone control tool

・「ボーン」のみ対応

・全てのプラットフォームに対応(Unity2018.4.31 以降)

可動領域の視覚化が強い

・Physicsを使用しない独自設計で物理計算処理を軽量化

足にコリジョンを付けずスカートのめり込みを防止するアイデアが強い

・画面に映ってない時の最適化

・独自の風による揺れ

・「Dynamic Bone」利用者なら素早く把握できる構造

・日本語ドキュメント

注意:Final IK」は対応していない可能性あり。2021年8月8日時点

 

まとめ

理想的なスカートの揺れ方を徹底的に作り込みたい方にオススメ!

「物理的にそうはならない」挙動を実現することができるのが強み。

多層構造の布でしたり、浮遊感など個性的な表現が作れます。

足がスカートにめり込んでしまう問題にお悩みの方はぜひお試し下さい。

 

 

Magica Cloth

「ボーン」と「メッシュ」両方対応(スキニングメッシュ対応)

・WebGLを除くすべてのプラットフォームに対応(Unity2018.4.0 以降)

・Unity Job System + Burstコンパイラの利用が必須

メッシュを揺らす際、ポリゴン数を減らす最適化が強い

・「メッシュの一部」だけ指定して揺らすことが可能

・画面に映ってない時の最適化

・独自の風による揺れ

・日本語 / 英語ドキュメント

・「Final IK」対応

 

 

まとめ

ボーンが入ってないモデリングでも大丈夫!

メッシュモードなら揺らしたいポイントを直感的に指定することができます。

ローポリ化(見えない部分だから大丈夫)する機能が含まれており、

ハイポリ素材の場合でも徹底的に軽量化してサクサク動作させます。

リアルな布アニメーションを素早く導入したい方にオススメです。

 

 

パブリッシャーセール第六弾!無料プレゼントあり

第六弾はアニメーション作家さん3名による公式セールです。

恒例の無料プレゼントは、豪華なアニメーションアセット3点!

 

スカートの挙動チェックに活用させていただきました。

 

 

 

 


 

 

 

「FluX Dynamic」の特徴

 

 

「Dynamic Bone」でのスカート実装は難しい

 

アセットストアの揺れものといえば「Dynamic Bone

Dynamic Boneでスカートを作るときは、

スカートのボーンを揺れものとしてスクリプトを設定します。

 

そのままでは足がスカートを貫通してしまいますので、

足全体にコライダーを設定して衝突判定を行いめり込み防止します。

しかし、足がスカートを貫通してしまうケースもあって完璧にできなかった。

f:id:assetsale:20191209112830g:plain

※ 注意:↑はDynamic Boneの画面です。

 

詳細はこの記事をチェック↓

 

 

「FluX Dynamic」は足の動きにスカートが連動

f:id:assetsale:20210808060814g:plain

一方、FluX Dynamic: hair skirt tail bone control tool』のスカートは、

 

『足の動きに合わせてスカートを動かす』

という画期的なアイデアで問題を解決してくれます。

 

高速に動いても足と連動するからめり込まない!

コリジョン不要な手法だから安定感のある仕組みというわけです。

 

f:id:assetsale:20210808061625g:plain

足の軸が指定した角度を超えると、スカートの軸も同じように動く仕組み。

 

 

 

FluX Dynamic基礎知識

 

 

揺れの挙動範囲を制限する

 

FluX Dynamic エディタで骨を作成 - YouTube

 3:11の内容をチェックしよう。

 

例)スカートの設定キャプチャ

f:id:assetsale:20210808090029p:plain

「角度の制限」のSizeにボーンの数を設定し、

左側、右側、手前、奥 4つのパラメータで制限をかけることができます。

 

 

色の付いた「ライン」のデバッグ表示

f:id:assetsale:20210808084017g:plain

ボーンの揺れる「可動領域」を視覚化することができます。

f:id:assetsale:20210808090246p:plain

ラインの色入力エリアの色が対応しています。

ボーンが揺れは可動範囲で指定するスペシャル機能が搭載されています。

子ボーン1つ1つ全てに細かく設定できちゃいます。

 

緑色の方向への可動範囲をカスタマイズ↓

f:id:assetsale:20210808084021g:plain

 

↓緑色の範囲で動くようになりました。

f:id:assetsale:20210808084036g:plain

 

 

 

FluX Dynamic スカートのセットアップ

 

サンプル動画の手順で覚えよう

 

2通りの学習方法が用意されています。

 

Youtube セットアップ動画

・ Package内のドキュメントファイル

f:id:assetsale:20210808085809p:plain

 

FluX Dynamic チュートリアル 1 スカートの設定

 

スカートのセットアップ動画を見ながら同じように設定することをオススメします。

モデルはユニティちゃん公式サイトからダウンロード。

 

 

1.キャラクターのRootに「Hang」オブジェクト

f:id:assetsale:20210808092226j:plain

まずはキャラクターのRootに「Hang」という名前の空のゲームオブジェクトを作りましょう。

名前ルールがあります。hungでもHangManagerにするとエラーになります。

 

 

 

2.「Hang」にHangManagerをアタッチ

 

f:id:assetsale:20210808093441j:plain

1で作成した「Hang」オブジェクトに、HangManagerスクリプトをアタッチします。

f:id:assetsale:20210808093517p:plain

 

f:id:assetsale:20210808093647p:plain

言語設定はデフォルトで日本語ですが「English」に切り替える事も可能です。

海外ユーザーの方も安心して扱えます。(ドキュメントは日本語のみ)

f:id:assetsale:20210808093722p:plain

 

 

3. スカートボーン1つを揺らしてみよう

f:id:assetsale:20210808094002p:plain

ここからは名前ルールはありません。

スカートの左半分を制御する「Skirt_L」オブジェクトを作りました。

 

 

f:id:assetsale:20210808094718p:plain

「Skirt_L」オブジェクトに「HangString」スクリプトをアタッチします。

 

 

f:id:assetsale:20210808094515j:plain

スカートの親ボーンをHangStringの親にセットしましょう。

 

各種パラメータをセットする

f:id:assetsale:20210808101025p:plain

堅さ:90

空気抵抗:0.4

重力:-20

 

実行して確認しよう!

左右に揺らせばスカートボーンが揺れ動きます。

f:id:assetsale:20210808101527g:plain

以上が動作までの基本セットアップです。

 

 

コハクちゃんのスカートのボーン構造について

f:id:assetsale:20210808095502g:plain

↑ 左のお腹から脇腹に回って腰まで、片側は5つのボーンで構成されています。

各ボーンを選択すると大体の位置が見てわかります。

 

f:id:assetsale:20210808100035j:plain

「Front → FrontSide → Side → BackSide → Back」の順に作業すれば混乱が防げます。

数が多くて最初は大変のように見えますが、

1つ完成すれば残りのボーンはコピペ作業で手軽に行えます。

 

※ 引き続きSkirtFrontを作業します。他のボーンはまだ作業しないでください。

 

 

4. 各関節に角度制限を設定する

f:id:assetsale:20210808102605j:plain

「HangString」の下部に「角度の制限」という項目があります。

 

Sizeはボーンの数(5)を指定します。↓子ボーンを数えると5つ

f:id:assetsale:20210808102739p:plain

他のパラメータも画像を参考に入力して実行してみましょう。

 

f:id:assetsale:20210808102959j:plain

「デバッグ可動領域の表示」にチェックを付けると

実行中、↑のようにボーンの可動領域が表示されます。

 

スカートボーンは、ラインの領域内でのみ動くことが可能になりました。

f:id:assetsale:20210808103632g:plain

 

5. スカートを足の動きに対応させる

 

現段階で足を動かしてもスカートに変化は起きません。

f:id:assetsale:20210808111126g:plain

 

足の動きに対応させる設定を行います。

 

スカートボーンのピボットオブジェクトを作る

f:id:assetsale:20210808111617j:plain

「J_1_L_SkirtFront_00」オブジェクトを複製する

※ ショートカット:CTRL + D

 

f:id:assetsale:20210808111707j:plain

「J_1_L_SkirtFront_00(1)」が出来上がります。

 

リネームする

動画ではオブジェクト名の頭に「PIVOT_」を設定してますが、

ドキュメントによると末尾に「_Pivot」が正しいようです。

 

※オブジェクト名の末尾に _Pivot をつけますと、 自動的に、紐の階層にあるけどこれは紐ではない...と判別して除外するようになっています。 _Pivot と名付けなくてもピボットとして扱う事は可能ですが、 手動で「除外オブジェクト」(後述) に登録する必要があります。

 

f:id:assetsale:20210808112111j:plain

リネーム後、子階層のオブジェクトを全て削除します。

 

f:id:assetsale:20210808112152j:plain

f:id:assetsale:20210808112201j:plain

 

最後に「J_1_L_SkirtFront_00_Pivot」オブジェクトを

左足のrootに配置して完了です!

 

f:id:assetsale:20210808112309j:plain

ついでに左側のスカートボーン5つ全部行うとこのようになります。

f:id:assetsale:20210808112343j:plain

 

f:id:assetsale:20210808112731j:plain

 

f:id:assetsale:20210808112804j:plain

先ほど作成したPivotオブジェクトを基軸にセット。

ブレンドの割合は1にします。

 

実行して足を動かしてみましょう。

f:id:assetsale:20210808113049g:plain

足の動きにスカートが付いてくるようになりました。

 

 

しかし、足を後ろに反らすとスカートがついてきてしまいます。

(骨格上ありえない角度ですが..)

 

基軸が角度限界を超えないようにする

f:id:assetsale:20210808113751j:plain

基軸の角度限界使用フラグ:ON

オフセット角度:-5

デバッグ表示:ON ←確認するときだけ

 

実行して確認

f:id:assetsale:20210808114104g:plain

足を後方に曲げてもスカートがついてこなくなりました。

デバッグ表示にチェックを付けると、ピボットと限界角度が表示されます。

f:id:assetsale:20210808114242j:plain

 

6. スカートの左側を全てセットしてみよう

 

以上の流れで左側のスカートを全て設定してみましょう。

f:id:assetsale:20210808114712g:plain

f:id:assetsale:20210808114723g:plain

f:id:assetsale:20210808114728g:plain

とても良い感じに仕上がりました!

7.  スカートを好きなフォルムに膨ませる

 

それでも足がスカートにめり込むモデルもあるかもしれません。

「足とスカートの距離」を開けるパラメータで回避することができます。

f:id:assetsale:20210808120042g:plain

f:id:assetsale:20210808115202j:plain

スカートを膨らませたい時に使うパラメータに好きな値を入力。

 

8.  スカートの右側を作る

左側と同じ流れです。

f:id:assetsale:20210808120422p:plain

「Skirt_L」を複製して「Skirt_R」を作ると結構楽ちんです。

参照先のボーンと基軸をセットするだけで完成!

 

f:id:assetsale:20210808120831g:plain

 

 

コライダーと衝突判定

 

髪の毛は専用コライダーで衝突判定

f:id:assetsale:20210808121146p:plain

スクリプトフォルダ内に、カプセル、プレーン、スフィアの3種類が含まれています。

主に頭、胴体、肩、腕に取り付けて「髪の毛」などの衝突判定用に使います。

 

今回は簡単な動作テストのみ

f:id:assetsale:20210808121619j:plain

Hang内に空のゲームオブジェクトを作成してアタッチするとギズモが現れます。

f:id:assetsale:20210808121512j:plain

f:id:assetsale:20210808121514j:plain

ボーンの球体に接続すると衝突判定を行ってくれます。

f:id:assetsale:20210808121617j:plain

 

動的に動かす事も可能です。

f:id:assetsale:20210808122234g:plain

 

 

風システム

別途スクリプトで動作させる

 

f:id:assetsale:20210808123542g:plain

「HangDebug」内にコメントアウトされています。

 

script_HangManager.WindSet(           // 風(外部参照用)
    new Vector3( 1.0f , 0.0f , 0.0f ) ,    // 風の向き
    30.0f ,     // 風力 (0.0f~150.0f)
    true ,       // ランダムの散らし風のフラグ ※通常はtrueで使う
    true         // 断続的に風の塊を与えるフラグ ※通常はtrueで使う
);

テスト用に作成↓

f:id:assetsale:20210808122912j:plain

 

 

 

 

「Final IK」対応状況

 

 

Final IK」で動かした時の揺れもの動作検証です。

※ 2021年8月8日時点の内容です。

 

「FluX Dynamic」はFinal IKが扱えない可能性あり

あらゆる方法を試してみましたが、

2021年8月8日時点のバージョンは扱えない可能性があります。

 

Final IK側の設定で改善できるかも..?

 

前後移動を行うとギズモにズレが生じていて

f:id:assetsale:20210808081229g:plain

 

上下に屈伸するとギズモがその場で留まり静止するようだ。

f:id:assetsale:20210808081319g:plain

この件は後日パブリッシャーさまへ問い合わせする予定です。

アップデートの対応があれば嬉しいですね。

 

 

「Magica Cloth」は Final IKの利用可能

サンプルシーンのユニティちゃんにVR IKをアタッチしてみた結果、問題無く動作。

※Full Body Biped IKもOK

 

▼『Magica Cloth』の画面

f:id:assetsale:20210808075310g:plain

デバッグ表示のピンク色(揺れないメッシュ)はシーンビューで固まってますが、

ゲームビューは正常に動いています。

f:id:assetsale:20210808080048g:plain

 

 

 


 

【毎日更新】アセット割引情報サイト

毎日リアルタイム更新。

「作家セール、無料アセット、新作アセット」お得な最新情報を入手しよう!

 

▼「価格推移チャート」の確認方法

f:id:assetsale:20201006220605j:plain f:id:assetsale:20201006220602j:plain

 

「グラフアイコン」をクリックしてチャートを表示します。

最安値の確認買い時チェックなどにご活用ください。

 

作者セール / 公式 / 無料化アセット / 新作アセット / 日本作家 / 無料新作アセット

土日はアセットストアの更新頻度少なめ

 

VTuberのオススメアセット

バーチャルYoutuberシロがご紹介するオススメアセット(2018年バージョン)

 

2019年度 公式セールログ

過去セールの振り返り記事まとめです。

AssetStoreがピックアップした優秀なアセットを素早くチェック。

 

 

公式セール「開催別」から神アセットを探す

過去大セールで登場したタグです。ぜひご活用下さい。

f:id:assetsale:20191217070725j:plain

※右サイドバーの「月別アーカイブ」や「タグ」からチェックすることもできます。

 

 

ブログ内のアセット検索(便利)

ここから検索できます。ブックマークすると便利。

f:id:assetsale:20171128032556j:plain

 

▼ブログ内検索の直リンク

https://www.asset-sale.net/search?q=Search

 

 

f:id:assetsale:20170616174948p:plain

この作品はユニティちゃんライセンス条項の元に提供されています