ニコニコ立体さんの髪とスカートを揺らすまで　その２

Unreal Engine 4 (UE4) Advent Calendar 2014の25日の記事です。

基本は14日に投稿した。ニコニコ立体さんの髪を揺らす動画の補足記事になります。

UE4の物理アセットを作成するエディタであるPhysics Asset Tool（PhAT）では、通常の物理エンジンでジョイントといわれる部分は、物理コンストレインの項目で設定します。
![1.jpg](https://qiita-image-store.s3.amazonaws.com/0/59114/88ac9cc1-372c-6e31-87f0-f7d89a353b29.jpeg)
図１

【物理コンストレインのジョイント】
ボール＆ソケット
![ball-and-socket.jpg](https://qiita-image-store.s3.amazonaws.com/0/59114/1f49e100-2d48-fea4-4cae-b865f2bde5e2.jpeg)
ヒンジ
![hinge.jpg](https://qiita-image-store.s3.amazonaws.com/0/59114/d80a0fc3-1571-4463-aebe-623dc4fa85fc.jpeg)
プリズマティック（スライダー）
![slider.jpg](https://qiita-image-store.s3.amazonaws.com/0/59114/7a558f90-8d66-ed9d-3d7e-f7faf0bdfe70.jpeg)
スケルタル（ちょっと絵が違いますが。こんなイメージ）
![universal.jpg](https://qiita-image-store.s3.amazonaws.com/0/59114/d8d6a169-750c-de7d-62df-3e8684e5be36.jpeg)

の４種類がデフォルトで用意されています。

他にも、たくさんあるパラメータ（図１の右の赤枠）をいろいろ設定すれば、さまざまなジョイントを作成可能です。

私の場合、スケルタルのジョイントを基本に設定して「髪」や「スカート」のジョイントを設定しました。

パラメータ中のLinear（リニア）は移動　Angularは回転角度の設定を意味します。

コンストレインの簡単な解説動画はこちらです。（６分３０秒です）
[【UE4】物理コンストレイン設定 ](http://www.youtube.com/watch?v=URXqXRUjcMk#link "【UE4】物理コンストレイン設定 ")

Physics Asset Tool（PhAT）のもうひとつのモードである、ボディーモードでは、実際にボーンに物理コリジョンを設定したり、コリジョンの有無、重心設定、物理演算に使用、未使用等を設定します。
![2.jpg](https://qiita-image-store.s3.amazonaws.com/0/59114/5142517d-2304-4138-3437-eaa74f0cccad.jpeg)
図２

図２の右の赤枠部分のパラメータが、物理使用有無や、重心設定などです。

コリジョンの簡単な解説動画はこちらです。（約６分です）

[【UE4】物理コリジョン設定 ](http://www.youtube.com/watch?v=Q0LK_rbjdtY "【UE4】物理コリジョン設定 ")

説明動画で、使用しているレベルのプロジェクトはここからダウンロードできます。

[動画のプロジェクトファイルをダウンロード](https://mega.co.nz/#!gQsSiIpT!a0K_RJYi2n6C2JmUPkPpG_zKD4HOcebINcy2mN4Yw9U "動画のプロジェクトファイルをダウンロード ")


次に、これらの手順を元に、ニコニコ立体さんの髪とスカートを揺らします。

14日の記事の動画と重複する部分はありますが。
ニコニコ立体さんを、上記の説明を元に、髪の毛と、スカートに、物理設定している動画がこちらです。（長さの都合上３倍速にしています）
細かい、部分は停止ボタンを活用する等してご覧下さい。（約６分です）

[【UE4】ニコニコ立体さんの髪とスカートを揺らす ](http://www.youtube.com/watch?v=tvdMkus7CZo "【UE4】ニコニコ立体さんの髪とスカートを揺らす ")

余談になりますが。前回は、あそこがやわらかすぎましたので。
ニコニコ立体さんのあそこを固くするための、手順動画はこちらをご覧ください。（約２分です）
[【UE4】ニコニコ立体さんのあそこを固くする  ](http://www.youtube.com/watch?v=c7W51sAi1N4 "【UE4】ニコニコ立体さんのあそこを固くする  ")

以上です。少しでも、みなさんの参考になれば幸いです。


Unreal Engine 4 (UE4) Advent Calendar 2014、の記事を書かれたみなさん、閲覧者のみなさん、お疲れさまでした。

2014/12/26 追記
ニコニコ立体さんは、MikuMikuDanceのモデル(PMX)を配布パッケージに含んでいますので、MikuMikuDanceのモデルの物理設定の値をPMXのエディタで確認して、同じようにPhysics Asset Tool（PhAT）の同一の項目に値を設定すれば、MikuMikuDanceに似た挙動を実現することは可能です。
![pmx.jpg](https://qiita-image-store.s3.amazonaws.com/0/59114/465e6861-1457-15b7-1847-14f9811443d0.jpeg)



2014/12/27 追記
ニコニコ立体さんとパフュームのダンスモーションを含む。今回のプロジェクトを配布します。
[全部入りのプロジェクトファイル　ue4.6.1ベース](https://mega.co.nz/#!EFdUiIBS!drOa12na43s_PEULpsRKLBiJyWpTUc-e96MW4tXQG3E "全部入りのプロジェクトファイル ")
![proj.jpg](https://qiita-image-store.s3.amazonaws.com/0/59114/c1483427-fb98-e040-7a38-651d8e2628fc.jpeg)
ニコニコ立体さんのモデルは、以下の利用規約、ルールに従ってご使用ください。
[ニコニ立体ちゃんライセンス利用規約](http://3d.nicovideo.jp/alicia/rule.html "ニコニ立体ちゃんライセンス利用規約")
[ニコニ立体ちゃん](http://3d.nicovideo.jp/works/td14712 "ニコニ立体ちゃん")

パフュームのダンスデータはこちらで配布されているBVHデータを変換しています。
[Perfume Offical Global Site](http://perfume-global.com/visualization.html "Perfume Offical Global Site")


物理のジョイントの画像はここからお借りしています。
[Open Dynamics Engine　v0.5 User Guide  ](http://www.ode.org/ode-latest-userguide.html "Open Dynamics Engine　v0.5 User Guide   ")

ニコニコ立体さんはこちらです。
[ニコニコ立体さん配布サイト  ](http://3d.nicovideo.jp/alicia/ "ニコニコ立体さん配布サイト")

プログラマさんへの物理エンジン系のお勧めサイトと書籍。
[ODEの解説サイト ](http://demura.net/ode "ODEのサイト")
[簡単!実践!ロボットシミュレーション - Open Dynamics Engineによるロボットプログラミング ](http://www.amazon.co.jp/dp/4627846916/ "簡単!実践!ロボットシミュレーション - Open Dynamics Engineによるロボットプログラミング")