どうも、木村(@kimu3_slime)です。
家にいながらイベントを開催・参加できるサービスcluster.(クラスター)のために、アバターとなる3Dモデルを作りました。バーチャルYouTuberや、VRChatにも応用できるモデルです。
3Dモデルを作るための情報はまだ少ないのが現状。できるだけシンプルに、最小限で簡単なモデルを作る方法を紹介します! 3Dモデリング未経験でも大丈夫(僕がそうだったので)。
オリジナル3Dモデルの作り方
ゴールを確認する
cluster.で使える3Dモデルファイルは、VRMもしくはfbxファイルです。これを作ることを目標にします。
3Dモデルファイルを作るには、Blenderやメタセコイアといったモデリングソフト(どちらも無料でも使える)が必要です。
Blenderを使ったモデリングは、VRChat日本Wikiの「アバター作成 自作編」が詳しいです。
確かにBlenderは高機能で、対応しているファイルも多い、ですが……それはあくまでプロとか、本気でモデリングに取り組む人目線の話、だと思います
趣味や仕事としてモデリングをするのではなく「Vtuberとして3Dモデルを作る」というのが目標なら、機能が少なくとも使いやすいメタセコイアが良いかと— ニーツ/VT-212 (@VT_212) February 28, 2018
バーチャルYouTuberのもちひよこさんがモデリング講座で使っているソフトもメタセコイアだったので、僕はメタセコイアをまず使ってみることにしました。
完成像をイメージする
まず作りたい3Dモデルのおおざっぱなイメージが必要です。僕は2Dのイラストがあったので、それをベースにしています。
ほぼ顔だけのモデルなので、シンプルで作りやすいと考えました。初心者ならば、まずはできそうなところから手を付け、簡単なものでいいから一度完成させてみることが大事だと思っています。
メタセコイアでモデリングする
では、実際に3Dモデルを作っていきましょう。
Metasequoia 4をダウンロード、インストールします。(僕は4.6.5、Win64bit)
メタセコイアは無料で利用できますが、ライセンスを購入することで機能が拡張されます。無料の試用ライセンスをここでは使います。メールアドレスを入力して登録するだけ。
メタセコイアを起動します。
まずは、メニュー、ツール、操作方法に慣れる必要があります。
画面左側のいずれかのツールを左クリックし、「ボタン上にショートカットキーを表示」を選択しましょう。ツールの切り替えが簡単です。
カメラを移動させる移動はXキー、回転させるAキー、対象を移動させるVキー、カメラの方向を前、横、上と切り替えるF1-F3キーはよく使いました。
僕が作りたいのは丸いすらいむなので、基本図形から球を選び作成しました。
作る対象のことを、メタセコイアではオブジェクトと呼びます。オブジェクトは面を組みあわせることによってできあがっています。(面は頂点の組み合わせです)
画面上部のメニューから、「パネル→材質パネル、オブジェクトパネル」を選択しましょう。それぞれ右側に表示されるはずです。
材質パネルのmat1を選択し、設定をクリック。色と光具合の設定ができます。これでオブジェクトの色が変更できます。左側の材質メニューから、オブジェクトに色を割り当てることもできます。
球を変形させ、目的とする体型(卵型)に近づけていきます。これにはマグネットツールを使いました。
マグネットツールは、複数の頂点を動かしゆるやかに面を変形させられます。影響範囲の大きさを指定することで、広範囲を変形させたり、細部をゆるやかに変形させたりしましょう。
イラストを描くときと違い、正面から見た形が良いだけでは意味がありません。カメラの回転(Aキー)を駆使し、どの方向から見ても形ができているようにしていきます。
(画面左上のメニューをモデリングにすると、表示されるツールが増えます。下絵ツールでイラストを下絵として表示しました。)
これで顔の土台ができました。ここに、目や口を追加していきます。
新たなパーツを作るときは、右側のオブジェクトメニューから新規オブジェクトを作りましょう。これは絶対です。イラストを描くときに、パーツごとにレイヤーを分けるのと同じ理由。いろいろなパーツをくっつけてしまうと、あとでパーツを選択・編集するのがとんでもなく面倒くさくなります。
面の生成ツールを使って、(平らな)目を作っていきます。
3点選択して右クリック、もしくは4点指定すると、ひとつの面ができあがる。これを繰り返します(面張りツールを使うと楽)。材質ツールを使って、面に色をつけましょう。
細かく形を変えるには、移動ツールで頂点を動かせば良いです。なめらかな形を作るためには、ナイフツールを使いましょう。辺を横切るようにドラッグすることで、頂点を増やし、結果としてスムーズな形が作れます。
目ができあがったら、顔の土台にくっつけます。カメラを駆使しながら移動ツールで位置を調整、回転ツールで角度を調整します。
目や眉のように左右対称なパーツは、ひとつ作ったら、オブジェクトメニューから複製→対象位置で作成をするときれいにできて良いでしょう。(オブジェクトの左右分離鏡面でもビジュアルは作れますが、後々うまく表示されません)
口、眉は僕は平面として作ったので、同様の方法で作れます。
髪(頭につける花)、頬、腕、手は、立体パーツとして作りました。
これらの立体パーツは、顔の土台と同様、基本図形をベースに作っていきます。マグネットツール、拡大ツール、削除ツールなどを使います。
最終的にはこんな感じです。頭の花と頬は球体、腕は円柱、手は立方体をベースにしました。
これでモデルはできあがり!
……と言いたいところですが、ボーンの指定が必要です。ボーンは、3Dモデルの見た目を動かすための基準となる骨です。(動かすためにはさらにウエイトの指定が必要。今回はしない)
今回、ボーンの割当は適当です。つまり、腕や足を動かせるようにはしません。最小限アップするためには必要ないので。顔の横視点移動、体の移動はできます。
画面左側のツールで、ボーンを選択、テンプレートからHumanoidを選択しましょう。
人型のボーンが表示されます。これにモデルの大きさをあわせましょう。cluster.で言えば、頭の位置が目線の高さになるので、あんまりずれないように。身長の調整でもあります。
これでモデルの作成は完了。
ファイルから名前をつけて保存、Autodesk FBX(.fbx)で出力します。オプションを聞かれますが、デフォルトのままでOKです。
Unityを使ってVRMファイルを作成
ここで作成したfbxファイルは、そのままではcluster.にアップロードできません。そこで仲介となるソフトが、Unity(ユニティ)です。
モデリングソフトでfbxを作成→fbxをUnityで開き、VRMに変換→VRMをcluster.にアップロード
という流れになります。(cluster.SDKを使えば、Unityから直接アップロードすることもできます)
というわけで、Unityをインストールしましょう。僕が使ったバージョンは2018.1.4f1でした。
起動時にライセンスを聞かれますが、無料で使えるPersonal(個人用)で良いです。
Unityを起動します。どんな名前でも良いので、新規プロジェクトを作ります。
そして、メニューからAssets→Import New Assetsで、さきほど作成したfbxファイルを取り込みます。
画面下側に表示されたfbxは、上の空間にドラッグドロップすることで、眺めることができます。作成した通りに表示されているか確認しましょう。
ではここから、Unityを使ってこの3DモデルをVRMとして出力します。
VRMは、プラットフォームに依存せず扱えることを目指した3Dモデルの新しい形式です。cluster.もこれに対応しています。
UnityでVRMを出力させる機能を追加するために、UniVRMをインストールします。
cluster.側で最新バージョンのUniVRMを使うと問題があるらしいので、僕はUniVRM v0.35を使いました。
ダウンロードしたUniVRM-0.35.unitypackageをUnityウィンドウにドラッグアンドドロップ。内容物一覧が表示されるので、OKを押して追加します。画面上部メニューに「VRM」が追加されたことを確認しましょう。
VRMの出力にあたっては、まゆたまガジェット開発逆引き辞典「cluster.で自作モデルを使用する(VRM・簡易設定版編1)※MacもOK+Unity使ったことない方も」という記事が参考になりました。
VRMの出力には、モデルがHumanoidという型であることが必要です。
画面下部に表示されたAssets内のモデルを選択。画面右上のInspectorからRigタブ、Animation TypeをHumanoidに変更して、Applyをクリック。
Configureの左側に表示されたマークが、チェック済マークとなっていることを確認しましょう。
僕が初めてこのステップに進んだときは、バツマークが表示され突き返されました。ボーンが設定されていなかったからです。そこでメタセコイア側に戻り、ボーンを設定して再入力しました。
またこのInspectorのScale Factor(大きさの倍率)を調整することで、モデルの大きさ・身長を調整できます。
Humanoidの設定ができたら、上メニューVRMからExport VRMで出力。Author(作成者の名前)だけ入力すればアウトプットできます。
VRMファイルをcluster.へアップロード
アップロードへ進みましょう。
cluster.ウェブにログインし、アバターのページへ。VRMファイルをアップロードボタンを押しましょう。
アバターが表示されなくても問題ありません。
アップロードできなかった場合、何かしらのエラーメッセージが出ます。
僕の場合、「Fix Validation errors: Too large mesh count (current: 18, max: 16)」というエラーが出て、苦戦しました。cluster.で利用できるアバターには制限があり、それにひっかかってしまったわけです。ところがこのメッシュ数というのが何なのかわからず、ググっても情報が出てこなくて悩みました。メタセコイアまで戻ってパーツを減らしたり頂点数を減らしたりして試行錯誤した結果、メッシュ数=オブジェクト数ということに気づく! 多すぎるオブジェクトを合成によって減らすことで、無事アップロードできるようになりました。
アバターをアップロードしたら、cluster.ソフトを起動。アバターの様子を見てみます。見た目が変だったら、色や大きさを調整しましょう。
できあがり! おつかれさまでした。
やっぱり自分のアバターがある方が、存在感があって、愛着が湧くし、cluster.ライフが楽しくなりますね!
あとでこのモデルを、VRChat、あるいはバーチャルYouTuber的な活動にも使ってみようと思います。質問などあればTwitterまで(答えられる範囲で答えます)。
木村すらいむ(@kimu3_slime)でした。ではでは。