今年の1/1からアバター制作を勉強し、4/29から開催の世界最大のVRフェスティバル『バーチャルマーケット4』に、オリジナル3Dアバターを出展しました。
1週目
2020/1/1 入門として多くの方がおススメする、zenさんの動画を参考に簡単な人型アバターの作成を開始しました。この時点では、参考動画の多いBlender 2.79を使うことにしました。ポリゴンを3次元空間にひたすら貼っていく、モデリング工程を学びました。
2週目
社会人の宿命として仕事が忙しいと土日しか作業できない+忙しい週の週末は疲れてて作業したくないというコンボが発生し何もしないまま経過…。
3週目
2020/1/13 作ったモデルに3次元空間上で着色する、スキニング工程を学びました。モデルの見た目が気持ち悪すぎる…。
この後モデルにボーン(骨組み)を埋め込み、ボーンの動きに追従してモデルが変化する仕組みを作るリギング工程に着手したのですが、リギングに不向きなモデルの作り方をしてしまったので動きが破綻し、うまくいきませんでした。ここで、一旦仕切り直しをする決断をします。また、Blender2.8系に乗り換える事を決断します。
Blender2.8系は2.7系に比べて参考動画が少ないのですが、
- 業界全体は2.8系への移行が進みつつある
- UIが劇的に改善されており初心者が機能配置を把握しやすい
- 一度2.7系に触れたので、仮に2.7系の動画を参考にしても2.8系に変換して考える事ができる
という理由から、乗り換える事にしました。一番の理由は、zenさんのVRChatアップロード解説動画が2.8系だったからですが。
2020/1/14 Humanoid型(人型)で挫折してしまったので、一旦レベルを落としてGeneric型(骨組みの無い、単純物体)でVRChatアップロードまで辿り着く事を目標にしました。家にあったダイソーのくまちゃんぬいぐるみをモデリングし、前述のzenさんの動画を参考にVRChatへのアップロードまでの工程を学びました。このアバターはVRChatで外国人女性からかわいいかわいいと言ってもらえて変な気持ちになりました。
モデルができるとUnity上で無限に遊べる。
4週目
2020/1/19 Humanoid型に再挑戦しました。また家にあったひだまりスケッチのゆのっちのぬいぐるみをモデリングし、VRChatへアップロードしました。服をモデリングする気力は無かったので、金太郎みたいになってしまいました。体の動きはある程度追従してくれますが、頭が大きすぎるせいで視界が頭の中に入ってしまい回りが見えなくなる事態が発生しました。どうもこういう極端な体型は実際の人体構造との乖離が大きいせいか、難しいのかもしれません。
5週目
2020/1/28 本格的に出展アバターのデザインに着手します。三面図というものを描いて、Blender上でのガイドにします。スカートやひらひらした服、長い髪だと、下の人体が突き破ったりして破綻しがちなので、できるだけ人体に密着した服装にしました。また、SF的世界観を表現しつつ、製作難易度が低そうなモチーフを配置しました。絵はiPad Pro版Clip Studioで描きました。なぜ絵が描けるのかですが、年季が入ったオタクはだいたいちょっとした絵が描けるものなので問題ないですね。
6週目
2020/2/10 人体をきれいに作る自信はゼロだったので、こちらのモデルを使用させていただくことにしました。無料かつほぼ無制限でこのレベルの素材を使わせていただけるのは本当にありがたいです。こちらに限らずですが、使えそうな素材の情報はTwitterで常に収集していました。
作ろうと思っているモデルと比較して等身が高く、顔がリアル寄りだったため、一旦首・手足を切断して拡大縮小し再結合、頭部に関してはスクラッチで作り直すことにしました。
これまでは過剰にハイポリゴンで作ってきましたが、Sub Division Surface(ポリゴン細分化)というモディファイア(エフェクト)をかける事によりローポリゴンでモデリングをする事ができるようになりました。
Edge split(エッジ分離)やShrink wrapといったモディファイアの使い方を覚え、顔のパーツを作りこんでいます。エイリアンっぽい初期状態から、微修正を繰り返し改善していきます。
7週目
2020/2/12 こちらの記事を参考にアニメ髪支援アドオンを使って髪型を作りこみます。
髪の房はキレイに作れるのですが、房同士を破綻なく配置するにはかなり繊細な操作が求められました。結構精神力を消費した工程のひとつです。
こちらの動画が大変参考になりました。
2020/2/14 なんとなく感覚をつかんできました。
2020/2/15 バーチャルマーケットの入稿タイミングは全3回あるのですが、その1回目が静かに過ぎていきました。
8週目~9週目
スクショ残っておらず。髪を作りこむのが大変すぎてそこにほぼほぼ費やしていた記憶…。
10週目
2020/3/2 キャミソール、ショーツといった、体にほぼ密着する服を作りました。また、髪かざりのパーツを作りました。
2020/3/7 2次入稿の日。全然間に合っていないのですが、入稿手順を確認する意味でただのCubeでもいいので入稿したほうが良いと助言を受けたので、これを入稿しました。
11週目
スクショ残っておらず。ただ、サイドの髪やジャケット、ショートパンツなど、これまで習得した技術で作成できる部分だったので粛々と作っていました。また、靴に関してはこちらを改変する形で使わせていただきました。販売するアバターに使用するため、利用規約の確認に細心の注意を払いました。
12週目
2020/3/22 ようやくモデリングの終わりが見えてきました。この時点でポリゴン(三角面)が18万ポリゴンもあり、VRChatアップロードのためには7万ポリゴン以下に削減する必要があります。過剰にSubdivision Surfaceをかけてしまっている箇所を見直したり、Decimate(ポリゴン数削減)をかけたりして対処しました。ただ、Decimateはトポロジーを汚くしてしまうので、モデリング時にポリゴン数を気にしながら作業してできるだけリギングが絡むパーツに使用しないで済むように進めるべきでした。
ここから、UV展開という3次元情報を2次元情報に展開してテクスチャを適用できるようにするための工程に入ります。これがひたすらに大変。
13週目
2020/3/27 地獄のUV展開が完了しました…。
UV展開ができたので、ざっと単色でテクスチャを描きました。一気に存在感が出て、テンションが上がりますね。家にあった板タブレットは壊れていたので、マウス塗りです。
14週目
2020/4/4 3次入稿(最終入稿)の日。なんとか滑り込み入稿できました。
背景看板はVket運営の配布するサンプルシーンに入っていたものの画像を差し替えました。立て看板はこちらを使用させていただきました。
素材の画像作成と、テクスチャの作りこみは無料ペイントソフトFire Alpacaを使用しました。目にハイライトを入れたり、チークを書き込んだりすると一気にリッチになっていきます。また、ユニティちゃんトゥーンシェーダー 2.0(UTS2)の使い方を理解しはじめると共に、その奥深さを知ることになりました。
棒立ちで入稿するのも恰好悪いので、Blender上でポーズを取らせるのですが、リギングがかなり破綻している事が判明します。ウェイトペインティングという工程で、メッシュが各ボーンに連動する比率を定義するのですが、こっちを立てるとこっちも立たないといった状況が発生しやすく、この時点では入稿用の固定ポーズが最低限破綻しないような状態を実現するにとどめました。
アバターペデスタルという展示閲覧者がアバターを試着できる機能も同時に入稿する必要があったのですが、とてもアバターとしては使えない状態だったのでそこは妥協して見送りました。
不完全な部分については、4/29からの会期中に間に合うように作りこんでいくことにします。
15週目~16週目
3次入稿を乗り切った安心感と疲れから、別の事(MRTK触ったりとか)をしていて進捗はゼロでした。
17週目
2020/4/24 ウェイトペインディングの修正と、シェイプキーの作成(リップシンクで口が動いたときの形)をひたすら実施。
18週目
2020/4/27 VRChatにアップロードして実際に動かしてテストしてみました。やっぱりジャケットをキャミソールが突き抜けたり、ショートパンツを突き破ってお尻が見えたり、歩くとスニーカーがグニョグニョになるなど見るに耐えない状況が乱発して心が折れそうになりました。また、動いたときにはじめて分かる違和感も多く、モデリング・スキニング・リギングの各工程を行って戻ったりをするうちにバージョン管理が破綻していくのも脳にダメージがありました。
2020/4/29 バーチャルマーケット4開催!展示会場に早速行ってみましたが、なんと背景看板が消失。これは入稿時に入稿者ID配下にPrefabを配置していなかったせいみたいです。これだけサンプルシーンを流用したので、漏れてしまっていました。
2020/4/30-5/2 GW休暇にしていたので、寝て起きて飯食って製作をする生活に。Animation Overrideという機能でハンドサインに応じて表情を出す部分を作りこむ。笑顔の出来になかなか満足できず、何回か作り直しをしました。通常は6~8種類の表情を作るみたいですが、私はこの表情1個で力尽きてしまいました。
顔回りはユーザからすると大写しになる場合が多く、微細なテクスチャの色合いの差が大きく印象に影響を与えます。実際表情を作っている段階でも、何度もスキニング工程に戻って着色をやり直しました。
また、UTS2の機能でEmissiveを使って水色のパーツを光らせたり、Matcapを使って金属部分の反射を表現したり、Outline Maskを使って鼻筋に不要な枠線が発生しないような制御を作りこみました。
2020/5/3 ようやく販売しても良いと思えるクオリティに到達したので、マーケットプレイス(今回はバーチャルマーケットβを使用)登録用の画像を作ります。
スクリーンショット撮影はUnity Recorder、ポージングはこちらのポーズ集を活用させ頂きました。
この段階に至っても、特定のポーズを取らせるとリギングが破綻している部分が見えてしまい、発狂しながら修正しました。おそらくモデリング段階でblenderに色んなテスト用のポーズを入れておいて完成度を上げておくのが本来やるべき工程だったんでしょうね。
2020/5/4 バーチャルマーケットβに登録完了。長かった戦いにようやく終止符を打ちました。
辛かったけど楽しかったです。次に作るときにやりたい事も山ほど出てきたし、絶対効率良く進められると思うので次回開催までにいろいろと技術を仕込んでいきたいと思います。