cluster用リアルアバターのチートな作り方
最近、新型コロナの拡大による外出自粛のため、バーチャルな世界を訪問することが多くなりました。
特にバーチャル空間の中でも敷居の低いclusterのイベントに多く参加するようになりました。
clusterのイベントやワールドに入場すると、自分のアバターを持ちたいって言う声をよく聞きます。
でも、3Dモデリングはとても難しいです。
私も試みましたが、あえなく撃沈しました。
以下の画像は私の作りかけで、手をT字に広げてる様子ですwww
で、Google先生を頼りに先人たちの知恵を読みながら、試行錯誤した結果、ガチにモデリングしなくても、カジュアルに簡単にリアルアバターを作る方法に辿り着きましたので、ここでご紹介します。
あくまでも、この方法は、ガチ3Dモデラーの方ではなく、私のような一般ピーポーが自分のアバターを作りたいって方対象ですので、ガチ勢の方は「こんなチートなやり方は許さん」と思わずに広い心でお願います。
この方法では、モデリングをしません。
(人が作ったモデルを削ったり調整する事はします)
既存にあるサービスを組み合わせただけです。
これが完成形です。
ラピュタのロボット兵、ウルトラマンのジャミラと言うツッコミはさておき、突貫工事で作ったのでご了承ください。
作り方は、
結論から言いますと、
・頭部は、1枚の写真から3Dモデルを作成
・ボディは、ロイヤリティフリー素材をダウンロード
・頭部とボディを結合
それだけです。
では、説明を始めます。
頭部
なんと、1枚の写真から人間の頭部を3Dモデリングするサービスがあります。
AvatarSDK
まず、フリープランでアカウントを取得します。
(アカウントがないと出来上がったモデルをダウンロードできません)
「Try WebGL DEMO」をクリックすると
自分の頭部の写真を用意します。
「Brouse an Image」をクリックして、自分の写真をアップロードし、
「GENERATE AVATAR」をクリックすると、
頭部のモデルが作成されます。
正面
横面
3DモデルデータをDownloadします。
ボディ
ボディは、このサイトで購入しました。
その中から、これにしました。
12ドルです。
「Tポーズの男性ヒーロー低ポリベースメッシュ 3Dモデル」
https://free3d.com/ja/3d-model/male-hero-low-poly-base-mesh-in-t-pose-7892.html
ロイヤルティフリーと書いてありますし、ライセンスのページを読む限り、加工して使用するのは、大丈夫だと思います。
頭部とボディを結合
Blenderを使います。
Blenderの基本的な使い方は説明しませんので、ご了承ください。
先ほどダウンロードした頭部とボディをインポートします。
(ファイル → インポート)
ボディは大きすぎるので、顔に合わせてサイズを縮小します。
このケースは0.009くらいで
ボディのアップ
ボディの頭部を削除します。
他の場所に影響がないように慎重に頂点や面を消去します。
頭部の肩など不要な箇所を削除します。
頭部と体を結合します。
位置を合わせて、
徐々に
合体!
次は、ボディをデザインします。
ここからは、こちらのブログを見ながらやりました。
先人たちの知恵に感謝です。
ここから文字で表すのは大変で、私のブログよりこのブログを読んだ方がいいかもしれません。
編集しやすいように画面を分割します。
(ビューポートの右上の角にカーソルを移動させると「+」にカーソルが変化、その状態で左にドラッグすると画面が分割します)
左側の画面では、
ビューポートで確認できるように「Zキー」を押してシェーディングをレンダーに変更します。
右側の画面では、
左上のエディタータイプを選択して「シェーダーエディター」に変更します。
ノードが現れます。
ノードのベースカラーを選択すると、ボディが選択した色になります。
本件では黒を選んでいます。
もっとかっこいいデザインにしたいでしょうけど、それはあとでご自分でしてください。
ここでは、真っ黒の全身タイツ姿で、先に進みます。
おっと、頭のテクスチャ を忘れてた。
以下の画像のところに、頭のテクスチャの画像ファイルを選択してください。
ポリゴン数を確認します。
本件の場合、ポリゴン数は、37,075です。(画面右下)
clusterはアバターのポリゴン数は 32,000までという制限がありますので、ポリゴン数を削除する必要があります。
ポリゴン数を削減したいモデルを選択したまま、
モディファイヤープロパティ → モディファイアーの追加 → デシメート
比率を入力し、適用をクリック
これで、ポリゴン数が32,000以下になっていれば、
いよいよ、
fbx形式のファイルにエクスポートします。
ファイル → エクスポート
「アーマチュアが設定されていません」とメッセージが出ますが気にしません。
本当はリグの作成といってアーマチュア(骨)を設定しないといけませんが、本件はチートな方法なので、気にしません。
fbx形式のファイルができました。
ためしにそのファイルをダブルクリックしてみてください。
ほら、3Dモデルが出来てますね。
ただし、骨が入ってないので、歩いたり走ったりできません。
リグの作成
まず最初に準備として、
新しくフォルダを作り、
fbxファイルと、頭部を作ったとき出来たpngファイルをそのファルダに入れ、
そのフォルダをZIP化します。
リグは結構大変ですが、
なんと、リグを作成してくれるウェブサイトがあります。
こちら
ここもアカウントを取得してください。
animation → UPLOAD CHARACTER
さきほどのzipファイルをUPLOADすると、下写真のページに自動的に飛びます。
このページでリグの設定をします。
2分くらいでリグが設定されます。
完成したら、unity形式のfbxでダウンロードします。
(普通のfbxは試してないので分かりません)
ここでダウンロードしたfbxファイルは、3Dビューアで見ると、なぜか頭がありませんが、気にしません。
VRMに変換
ここからは、こちらのサイトを読みながら実行しました。
先人たちの知恵に感謝です。
まずUnityでVRMファイルを扱うために、UniVRMをインポートします。
以下のサイトから最新のUniVRMのunitypackageをダウンロードします。
https://github.com/vrm-c/UniVRM/releases
ファイル名は
「UniVRM-x.xx.x_ce1c.unitypackage」
そのままダブルクリックして、Unityの新しいプロジェクトを作ります。
VRMに変換したいFBXのモデルをUnityに入れます。
テクスチャのファイルも一緒にいれてください。
(Projectウィンドウのaseetsフォルダにドラッグ&ドロップでオーケー)
入れたモデルを選択し、インスペクターのRigのタブからAnimation TypeをHumanoidにしてApplyし、Configを押します。
RIGの画面が出ます。
この画像のように丸印がすべてグリーンなら、OKです。
(これが本当のオールグリーンw)
赤色があったらエラーです。
オブジェクトをシーンへドラック&ドロップします。
ここでも、体のデザインできるようですが、それは後でご自分でしてください。
今回は全身タイツのまま、次へ行きます。
最後に
・モデルの位置が原点(XYZが全部ゼロ)であること
・モデルのスケールがXYZ全部1.0であること
・モデルの向きがZ軸方向を向いていること
をチェックします。
Hierarchyで自分のアバターを選択し、
メニュー → VRM → UniVRM → Export humanoid
こんな画面が出て一瞬焦りますが、
Author欄を入力し、Exportをクリックします。
VRMファイルが生成されます。
Hierarchyにある変換前のFBXのオブジェクトを削除し、生成したばかりのVRMのプレファブをシーンに配置します。
この段階で、製作者情報やライセンス情報を入力できます。
最後の最後に
HierarchyのVRMのオブジェクトを選択した状態で、
メニュー → VRM → UniVRM → Export humanoid
今度は、その下の”Force T Pose”と”Pose Freeze”にチェックが入っていないことを確認し、Export!
ついに、VRMファイルができました。
clusterにアップロード
clusterにログインして、アバターをアップロードします。
成功!
以上、clusterのリアルアバターのチートな作り方でした。
楽しいclusterライフをお過ごしください。
ad
- Tweet
-
この記事が気に入りましたら、ぜひTwitter、facebookボタンをお願いします。
ブログを書くモチベーションになります。よろしくお願いします。
ビットコイン投げ銭ウィジェット
関連記事
-
【PLATEAU】blenderで原点をそろえる
PLATEAUからダウンロードしてFBXに変換したデータの原点をゼロにするやりかたです。 オブ
-
【Blender】テクスチャが反映されないときの対処方法
毎回、ド忘れするので、備忘録 バージョン: Blender 2.82 使用アバター:
-
mocopiをUnityで使ってみた(Windows10)
ソニーのモバイルトラッカー「mocopi」をUnityで使ってみた。 その設定方法に苦労したので
-
Xcode7.3にアップグレードした後、Unityで作ったプロジェクトを開いた時に出たエラー「Unknown type name ‘__declspec’」の解決方法
Xcode7.3にアップグレードし、 Unity(5.2.0f3)で作ったプロジェク
-
clusterでの登壇が初めての方へ
私は今までclusterというバーチャルSNSでLTイベントを5回開催しました。 今回は、私が毎