こんにちは、エンジニアのオオバです。
3Dモデルをやわか楽したい需要は常に一定数存在します。例えば女の子キャラクターを登場させる場合、柔らかいところは柔らかく表現したいものです。そこで今回紹介するのは 「VertExmotion」 というアセットです。お手軽に3Dモデルを柔らかくします。
3Dモデルを柔らかくする方法はいくつもありますが、1つの手段として検討してみてください。では詳しい解説に入ります。
👉DOTweenの教科書を読んでUnityアニメーションをプログラミングしてみよう!
VertExmotionとは?
VertExmotionは2014年11月にアセットストアでリリースされた古参アセットです。「VertExmotion Pro」と「VertExmotion」の2バージョンあり、Pro版のみソースコードが公開されています。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_0](https://cdn-ak.f.st-hatena.com/images/fotolife/e/esakun/20170323/20170323193858.gif)
上の動画は同梱のサンプルです。オブジェクトがポヨンポヨンと弾む表現(ソフトボディアニメーション)を簡単に作れます。
VertExmotionの3つの特徴
VertExmotionには3つの特徴があります。
①ソフトボディアニメーションをShaderで実装
②頂点にペイントして影響範囲を定義
③ボーンが不要
このポヨンポヨンとしたアニメーションは頂点シェーダーで実装されています。頂点カラーにペイントして動きの影響度を設定するのです。頂点ですべて完結するため、ボーンは不要です。つまりUnity上ですべてが完結するのです。
VertExmotionの使い方
VertExmotionの使い方を解説します。デフォルトのCubeをグニャグニャにしていきたいと思います。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_1](https://i.gyazo.com/478d193149d26a0bc9aff408a3125993.png#735__500)
👉 【初心者向け】今さら聞けないUnityでオブジェクト(基本図形)を配置する方法
手順①新規のMaterialを作成してCubeにアタッチ
VertExmotionを使うためにはまず、新規のMaterialを作ってください。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_2](https://i.gyazo.com/cb11aa6aa9d34c248cac5fde420c1827.jpg#452__500)
メニューAsset > Create > Material
で作成できます。CubeにMaterialをセットしておきましょう。 手順②VertExmotionコンポーネントをCubeにセット
VertExmotionコンポーネントをCubeにAdd Componentしてください。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_3](https://i.gyazo.com/2995c11913a78f23d9f4148eb42f6c9b.png#482__500)
するとSceneビューにVertExmotionの拡張エディターが表示されます。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_4](https://i.gyazo.com/f31e3f87ac25de5587756066a133b6c4.png#734__500)
VertExmotionを使うためには専用のシェーダーを使う必要があります。「Fix material」ボタンをクリックすると自動でVertExmotionシェーダーに入れ替わります。
手順③頂点にペイント
VertExmotionエディタのペイントボタンをクリックします。すると以下のような表示になります。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_5](https://i.gyazo.com/2bdc2f73dad5648e879c6f1ca033a86e.png#715__500)
ここから頂点にグニャグニャさせる強さを書き込んでいきます。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_6](https://i.gyazo.com/8051069eab40e332011f24991d9653c5.gif)
上図のように頂点にデータ書き込みます。赤くなるほど強く、青になるほど影響度は弱いです。今回のサンプルではCubeの上部4頂点に赤(最大値)を書き込みました。
手順④センサーを追加
頂点にペイントしたら、それを動かすためのセンサーを追加します。VertExmotionのセンサーボタンをクリックします。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_7](https://i.gyazo.com/15cffb6ea1243623ee26bdffdfacc326.png#376__500)
「New sensor」ボタンをクリックしてください。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_8](https://i.gyazo.com/68517c8e5c19cac0d956950268001b8d.png#711__500)
するとこのような表示になり、Cubeにセンサーが追加されました。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_9](https://i.gyazo.com/659663221d6a55f93cc00869bae719aa.png#550__316)
Hierarchyウィンドウを確認します。Cubeの子階層にVertExmotionのセンサーが追加されたことが分かります。以上で準備は完了です。Cubeを動かしてぐにゃぐにゃ具合を確認してみましょう。
手順⑤Unityを再生して確認
VertExmotionはUnity再生中のみ確認可能です。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_10](https://i.gyazo.com/e00531f6d49cba4a3879e01f5df4101b.gif)
このように書き込んだ頂点のみ動くことが分かります。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_11](https://cdn-ak.f.st-hatena.com/images/fotolife/e/esakun/20170323/20170323202308.gif)
頂点が動く距離や揺れる感覚は調整可能です。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_12](https://i.gyazo.com/311371c3d7e19c437064e5da345ec155.gif)
こちらは付属のDEMOですが、魚の動きを表現することも可能です。
![【Unity】簡単に3Dモデルをグニャグニャ!VertExmotionの紹介_13](https://i.gyazo.com/431da0f9ae5644938ff9df1991f76a77.gif)
簡易的に衣服を揺らすこともできそうです。
VertExmotionのまとめ
この記事では3Dオブジェクトをグニャグニャにする「VertExmotion」を紹介しました。簡単に内容をまとめます。
①ソフトボディアニメーションをShaderで実装
②ボーンが不要
③作業自体は頂点にペイントしてセンサーを追加するだけ
④簡易的な衣服の表現が可能
こんな感じです。とても簡単に3オブジェクトをグニャグニャと動かすことができました。時間がない中で表現する1つの手段として覚えておくと良いかもしれません。
もし購入する場合はPro版をおすすめします。全ソースコードが付属しているため、もしカスタマイズが必要になったときに安心です。ソースコードを読むことで学習教材にも使えます。
ゲーム制作の表現力アップに使ってみてはいかがでしょうか。
→ VertExmotion Proはコチラから
![](https://i.gyazo.com/cb0800e7a8e3d31e3fe9faa13eb1a509.jpg#1920.0__1280.0)
この記事が気に入ったらフォローしよう
- Unity2021.3.0f1
- VertExmotion 1.10.1